首页 > 数据库 >SpringBatch连接mysql

SpringBatch连接mysql

时间:2023-08-12 15:33:30浏览次数:37  
标签:core mysql batch springframework org import SpringBatch 连接

1.添加依赖

一个是SpringBatch依赖

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-batch</artifactId>
        </dependency>

一个是mysql依赖

<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

2.添加配置文件

# web visit  port
server:
  port: 8888
# mysql application
#url的格式:jdbc:驱动名://host:port/database?条件   useSSL是是否使用加密连接来访问
#schema:指的是模式  在这里指的是当你启动项目的时候 会根据指定的sql创建或更新模式 
#schema:模式,在关系型数据库中,用于描述数据库中对象的逻辑结构和规范的集合,定义了表、视图、索引、存储过程、触发器等数据库对象的组织方式和相关属性。
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/SpringBatch?useSSL=false&serverTimezone=Asia/Shanghai
    username: root
    password: root
    hikari:
      schema: classpath:/org/springframework/batch/core/schemal-mysql.sql
    driver-class-name: com.mysql.cj.jdbc.Driver
  batch:
    jdbc:
      initialize-schema: always

3.编写启动类

package com.pjk.springBatch.demo2;

import org.springframework.batch.core.Job;
import org.springframework.batch.core.Step;
import org.springframework.batch.core.StepContribution;
import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing;
import org.springframework.batch.core.configuration.annotation.JobBuilderFactory;
import org.springframework.batch.core.configuration.annotation.StepBuilderFactory;
import org.springframework.batch.core.scope.context.ChunkContext;
import org.springframework.batch.core.step.tasklet.Tasklet;
import org.springframework.batch.repeat.RepeatStatus;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;

@EnableBatchProcessing
@SpringBootApplication
public class SpringBatchMysqlDemo {
    public static void main(String[] args) {
        SpringApplication.run(SpringBatchMysqlDemo.class, args);
    }
    @Autowired
    private JobBuilderFactory jobBuilderFactory;

    @Autowired
    private StepBuilderFactory stepBuilderFactory;

    @Bean
    public Tasklet tasklet() {
        return new Tasklet() {
            @Override
            public RepeatStatus execute(StepContribution stepContribution, ChunkContext chunkContext) throws Exception {
                System.out.println("--------tasklet------------");
                return RepeatStatus.FINISHED;
            }
        };
    }

    @Bean
    public Step step() {
        return stepBuilderFactory.get("stepOne")
                .tasklet(tasklet())
                .build();
    }

    @Bean
    public Job job() {
        return jobBuilderFactory.get("job")
                .start(step())
                .build();
    }
}


标签:core,mysql,batch,springframework,org,import,SpringBatch,连接
From: https://blog.51cto.com/u_16205743/7059311

相关文章

  • 搭建My Batis(Maven + MySql + log4j)
    前言MyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解来配置和映射原生信息,将接口和Java的POJOs(PlainOrdinaryJavaObject,普通的Java对象)映......
  • 7.7 通俗易懂详解稠密连接网络DenseNet & 手撕稠密连接网络DenseNet
    一.思想与ResNet的区别DenseNet这样拼接有什么好处?DenseNet优点对于每一层,使用前面所有层的特征映射作为输入,并且其自身的特征映射作为所有后续层的输入。DenseNet的优点:缓解了消失梯度问题,加强了特征传播,鼓励特征重用,并大大减少了参数的数量,改进了整个网络的信息流和梯度,这使得......
  • 解决linux mysql命令 bash mysql command not found 的方法
    错误:root@DB-02~]#mysql-uroot-bash:mysql:commandnotfound原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。首先得知道mysql命令或mysqladmin命令的完整路......
  • go项目实现mysql接入以及web api
    创建go项目,并在go项目中接入mysql,将mysql的配置项单独整理放到一个胚子和文件中,支持项目启动时,通过加载配置文件中的值,然后创建数据库连接。之后使用net/http相关的库,创建路由,并在路由中通过不同的http方法,实现mysql连接的test数据库中users表的增删改查的webapi1.在ide......
  • MySQL 设置 IP 白名单
    1.登录MySQLmysql-uroot-p2.新增用户并授予权限MySQL8之前:grantallon*.*to'username'@'ip'identifiedby'password'withgrantoption;MySQL8开始:createuser'username'@'ip'identifiedwithmysql_native_pa......
  • MySQL数据库笔记(二)
    聚集函数聚集函数:SQL提供的方法统计函数count(字段):统计表中记录的个数.语法: selectcount(*)from表名; 练习: --统计exam中有多少个学生: selectcount(name)fromtb_exam; selectcount(id)fromtb_exam; selectcount(*)fromtb_exam;--根据任意字段进行统计......
  • Pycharm2023.2远程连接Linux服务器
    1.点击右下角(图中RemotePython处)2.输入服务器地址和用户3.输入密码4.只需在Location选择自己Linux中的虚拟环境Baseinterpreter不需要更改,点击create即可......
  • 开源数据库Mysql_DBA运维实战 (DML/DQL语句)
    DML/DQLDMLINSERT  实现数据的 插入        实例:DELETE  实现数据的 删除        实例:UPDATE  实现数据的 更新         实例1:         实例2:     实例3:DQL DML/DQL编辑 DML语句数据库操纵语言: 插入数据INSERT、删......
  • MySQL运行错误:‘mysql‘不是内部或外部命令,也不是可运行程序,Windows添加环境变量
    1、Windows电脑安装MySQL5.7,打开cmd出现“'mysql'不是内部或外部命令,也不是可运行的程序或批处理文件。”2、出现以上情况基本断定为没有安装mysql或者是安装了mysql没有配置环境变量,下面进行配置环境变量找到mysql的安装目录,可以windows+r然后输入:services.msc3、找到my......
  • JScript 连接 ACCESS2010数据库
    vardb=newActiveXObject("adodb.connection");varret=db.Open("Provider=Microsoft.Ace.OLEDB.12.0;DataSource=D:\\Database11.accdb");varCommandText="insertintouser(id,name)values(100,'admin&......