SpringBoot集成Mybatis(七)

项目结构:

1、首先引入dataSource依赖,和其注入,这里看上一节(第六节)https://blog.csdn.net/qq_37431224/article/details/103877983

      的集成方式。

2.进行Mybatis集成

1) 引入依赖.

<dependency>

      <groupId>org.mybatis.spring.boot</groupId>

      <artifactId>mybatis-spring-boot-starter</artifactId>

      <version>1.3.0</version>

</dependency>

2) 正常完成mapper接口和mapper.xml.

3) mybatis-spring-boot-starter提供了以下配置(具体参考MyBatisProperties对象):

#自动装配Druid的DataSource,连@Bean都不用写,全自动
spring.datasource.druid.username=root
spring.datasource.druid.password=123456
spring.datasource.druid.url=jdbc:mysql://localhost:3306/orderdatabase
spring.datasource.druid.driver=com.mysql.jdbc.Driver

#自定义MyBatis配置文件路径,如果不需要mybatis的自定义配置,这句话可以删去
mybatis.config-location=classpath:mybatis.cfg.xml
#扫描别名包,如果需不要别名,可以删去
mybatis.type-aliases-package=com.demo._day04MyBatis.domain
#Mapper的文件路径,如果XXMapper.java 与XXMapper.xml在同一个目录下,他会根据xxMapper.xml同一目录自动寻找其XML,所以下面这句可以删去
mybatis.mapper-locations=classpath:com\demo\_day04MyBatis\mapper/*Mapper.xml
#如果想打印所执行的sql语句,指向mapper包
logging.level.com.demo._day04MyBatis.mapper=debug

 4)在AppConfig配置类中使用@MapperScan标签扫描mapper接口

@SpringBootApplication
/**
 * 扫描Mybatis的Mapper类,相当于
 <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
 <property name="basePackage" value="cn.wolfcode.crm.mapper"/>
 </bean>
 @MapperScan中包含@ComponentScan,所以必须精确到mapper包下,否则如果在上一层扫描到IService接口的话又会再一次装配,出现错误
 */
@MapperScan("com.demo._day04MyBatis.mapper")
//配置事务扫描,相当于以前的<tx:annotation-driven/>
//这句话可以不写,因为springboot已经自动加了,但在Service中必须加Transactional

public class AppConfig {
    public static void main(String[] args) {
            SpringApplication.run(AppConfig.class,args);
    }
}

补充知识:

可以在pom文件中的build标签中添加这段配置,让在src下的资源也能加载到classes目录

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
        <!--mapper.xml在java目录中是无法编译到classes去的,除非加入此话-->
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
            </resource>
        </resources>
    </build>

 小技巧:

1.#如果想打印所执行的sql语句,指向mapper包(在application.properties文件中配置,上面有写) 
logging.level.com.demo._day04MyBatis.mapper=debug

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值