springboot-2-整合myBatis及druid连接池
Posted yinjing
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot-2-整合myBatis及druid连接池相关的知识,希望对你有一定的参考价值。
整合mybatis
1、引入mybatis的maven包
<!-- Spring Boot Mybatis 依赖 --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>$mybatis-spring-boot</version> </dependency> <!-- mysql 连接驱动依赖 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>$mysql-connector</version> </dependency> <!-- 数据库连接池 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.5</version> </dependency>
2、application.properties配置
server.port=8089 server.servlet.context-path=/first spring.profiles.active=dev #mybatis mybatis.typeAliasesPackage=com.example.springboot1.dao mybatis.mapperLocations=classpath:mapper/*.xml
spring.datasource.url=jdbc:mysql://10.6.80.147:3306/j_test?useUnicode=true&characterEncoding=utf8 spring.datasource.username=root spring[email protected]123456 spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.max-idle=10 spring.datasource.max-wait=10000 spring.datasource.min-idle=5 spring.datasource.initial-size=5
3、mybatis配置文件
mybatis-config.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <properties> <property name="dialect" value="mysql" /> </properties> <settings> <!-- 这个配置使全局的映射器启用或禁用缓存。系统默认值是true,设置只是为了展示出来 --> <setting name="cacheEnabled" value="true" /> <!-- 全局启用或禁用延迟加载。当禁用时,所有关联对象都会即时加载。 系统默认值是true,设置只是为了展示出来 --> <setting name="lazyLoadingEnabled" value="true" /> <!-- 允许或不允许多种结果集从一个单独的语句中返回(需要适合的驱动)。 系统默认值是true,设置只是为了展示出来 --> <setting name="multipleResultSetsEnabled" value="true" /> <!--使用列标签代替列名。不同的驱动在这方便表现不同。参考驱动文档或充分测试两种方法来决定所使用的驱动。 系统默认值是true,设置只是为了展示出来 --> <setting name="useColumnLabel" value="true" /> <!--允许 JDBC 支持生成的键。需要适合的驱动。如果设置为 true 则这个设置强制生成的键被使用,尽管一些驱动拒绝兼容但仍然有效(比如 Derby)。 系统默认值是false,设置只是为了展示出来 --> <setting name="useGeneratedKeys" value="false" /> <!--配置默认的执行器。SIMPLE 执行器没有什么特别之处。REUSE 执行器重用预处理语句。BATCH 执行器重用语句和批量更新 系统默认值是SIMPLE,设置只是为了展示出来 --> <setting name="defaultExecutorType" value="SIMPLE" /> <!--设置超时时间,它决定驱动等待一个数据库响应的时间。 系统默认值是null,设置只是为了展示出来 --> <setting name="defaultStatementTimeout" value="25000" /> </settings> <plugins> <plugin interceptor="com.github.pagehelper.PageHelper"> <property name="dialect" value="mysql" /> <property name="offsetAsPageNum" value="true" /> <property name="rowBoundsWithCount" value="true" /> <property name="pageSizeZero" value="true" /> <property name="reasonable" value="true" /> </plugin> </plugins> </configuration>
4、配置mapper扫描器
springboot只需,在启动类上加注解
@SpringBootApplication @MapperScan("com.example.springboot1.dao") @EnableCaching public class Springboot1Application public static void main(String[] args) SpringApplication.run(Springboot1Application.class, args);
到这里配置就全部完成了,可以开始使用了
5、dao层
这里dao层我们就不用了传统的xml映射的方式了。用一下mybatis提供的@Mapper注解,这使得我们可以不用去写烦人的xml了。
@Mapper @Component public interface StudentMapper @Select("select * from student where name = #name") public Student find(String name);
以上是关于springboot-2-整合myBatis及druid连接池的主要内容,如果未能解决你的问题,请参考以下文章
SpringBoot 2.SpringBoot整合Mybatis
学习整合springboot2.0 和 mybatis,实现基本的CRUD
Springboot 2.0.4 整合Mybatis出现异常Property 'sqlSessionFactory' or 'sqlSessionTemplate' a