SpringBoot2.0 整合Mybatis Mapper接口继承

SpringBoot2.0 整合Mybatis Mapper接口继承

通用 Mapper 是一个可以实现任意 MyBatis 通用方法的框架,项目提供了常规的增删改查操作以及Example 相关的单表操作。那么,如何在springboot中使用呢?

第一步:添加pom依赖。


        org.mybatis.spring.boot
        mybatis-spring-boot-starter
        1.3.2
    

    tk.mybatis
    mapper-spring-boot-starter
    2.0.0

版本号可以根据自己的项目情况进行选择。我这里使用spring-boot 2.0.0.

第二步:配置数据库连接。

spring.datasource.url=jdbc:mysql://数据库ip:port/数据库名?characterEncoding=UTF-8
spring.datasource.username=用户名
spring.datasource.password=密码
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

第三步:添加mapper接口类。

@Mapper
public interface ScheduleInfoMapper extends BaseMapper{

}

@Mapper 注解,当应用启动时,自动扫描进行bean生成。
BaseMapper为通用mapper提供的接口,包含基本的单表增删改查。源码如下:

@RegisterMapper
public interface BaseMapper extends BaseSelectMapper, BaseInsertMapper, BaseUpdateMapper, BaseDeleteMapper {
}

第四步:添加表结构对应的实体类。

@Table(name="schedule_info")
public class ScheduleEntity {
    @Id
    @GeneratedValue(generator = "JDBC")
    private Long id;
    @Column(name = "user_id")
    private Long userId;
    private String title;
    private String content;
    private String location;
    @Column(name="start_time")
    private Long startTime;
    @Column(name="end_time")
    private Long endTime;
    @Column(name="count_down")
    private String countDown;
    @Column(name = "is_delete")
    private Integer isDelete;
    @Column(name="create_time")
    private Long createTime;
    @Column(name="update_time")
    private Long updateTime;
}

@GeneratedValue,注解指明主键的生成方式。generator = “JDBC” 等价于AUTO,但自增只能使用generator = “JDBC”,否则会报错。

@Table指明表名称。

@Column指明表列与实体字段的对应关系

GItHub示例项目:https://github.com/guojixiang/SpringBoot 项目名:schedule。

你可能感兴趣的:(SpringBoot组件)