在上一篇对springbatch简单有了了解,接下来加入操作数据库操作
需要用到两张表:
需求:将这两个表的信息按照班级关联并输出为txt文件
1.创建项目引入依赖:
<dependency> <groupId>org.springframework.batch</groupId> <artifactId>spring-batch-core</artifactId> <version>LATEST</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.2.2.RELEASE</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.45</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.11</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.8</version> </dependency> <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper</artifactId> <version>3.4.6</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.2</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.3</version> </dependency>
2.编辑实体类,mapper等:
package com.zs.springbatch.model; import lombok.Data; import lombok.experimental.Accessors; import javax.persistence.*; import java.io.Serializable; /** * create by Mybatis-generator */ @Table(name = "batch_class") @Data @Accessors(chain = true) public class BatchClass implements Serializable { @Id @Column(name = "c_id") @GeneratedValue(generator = "JDBC") private Long cId; @Column(name = "c_name") private String cName; @Column(name = "c_teacher") private String cTeacher; private static final long serialVersionUID = 1L; }
package com.zs.springbatch.model; import lombok.Data; import lombok.experimental.Accessors; import javax.persistence.*; import java.io.Serializable; /** * create by Mybatis-generator */ @Table(name = "batch_student") @Data @Accessors(chain = true) public class BatchStudent implements Serializable { @Id @Column(name = "s_id") @GeneratedValue(generator = "JDBC") private Long sId; @Column(name = "s_name") private String sName; @Column(name = "s_age") private String sAge; @Column(name = "s_class") private String sClass; private static final long serialVersionUID = 1L; }