springboot整合mybatis拓展

@MapperScan

我们平常整合mybatis在业务中编写Dao层时,我们通常会在数据层的接口上添加@Mapper注解,让其交由mybatis管理,通过其方法映射的SQL语句来操作数据库;

也可以通过在启动类上添加@MapperScan(Mapper接口路径),利用包扫描形式为接口创建代理对象,

@SpringBootApplication
@MapperScan("com.jt.mapper") //利用包扫描的形式为接口创建代理对象
public class SpringBootRun {
    public static void main(String[] args) {
        SpringApplication.run(SpringBootRun.class, args);
    }
}

配置application.yml文件

对于整合mybatis框架,我们还需要在配置文件中对其进行配置:

spring:
  datasource:
    #driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/jtdb?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&autoReconnect=true&allowMultiQueries=true
    username: root
    password: root
    
#mybatis整合
mybatis:
  #定义别名包
  type-aliases-package: com.jt.pojo
  #添加xml文件的依赖
  mapper-locations: classpath:/mybatis/mappers/*.xml
  #开启驼峰映射规则
  configuration:
    map-underscore-to-camel-case: true
    

上边是关于数据库连接参数的设置;
下边是关于mybatis的配置,主要配置了三点:

  1. 定义别名包(type-aliases-package):

将实体对象pojo路径进行了封装,若在mapper.xml文件中,resulrType不写包名,只写类名,就会自动执行别名包进行拼接;若写了包名+类名,就执行自己写好的;

  1. 第二项mapper-locations是总用的,配置mapper.xml映射文件的路径;
  2. 驼峰映射规则(map-underscore-to-camel-case):

开启驼峰映射规则后,底层会根据切分将数据库用"_"连接的字段名切分组合成由java驼峰规则的命名;
目的:主要为了简化mybatis映射的过程;
规则:user_id-->去除下划线userid-->之后首字母大写userId-->之后属性名一致,就可以正常映射了
注意:如果开启了驼峰规则,必须要满足条件.

你可能感兴趣的:(后端)