spring boot整合mybatis方式一
程序员文章站
2022-04-09 08:33:10
方式一: 导入maven依赖: 配置mybatis核心配置文件(主要配置别名与映射xml文件): 配置xml文件,与mapper层一一对应: 再之后就是配置实体类与mapper层接口,此处省略。。。 springboot整合junit测试(两个注解): 最后附一份GitHub项目仓库地址: http ......
方式一:
导入maven依赖:
<!--web依赖配置--> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-web</artifactid> </dependency> <!--连接池--> <dependency> <groupid>com.alibaba</groupid> <artifactid>druid</artifactid> <version>1.1.12</version> </dependency> <!--mysql--> <dependency> <groupid>mysql</groupid> <artifactid>mysql-connector-java</artifactid> </dependency> <!--引入mybatis--> <dependency> <groupid>org.mybatis.spring.boot</groupid> <artifactid>mybatis-spring-boot-starter</artifactid> <version>1.3.2</version> </dependency> <!--工具类--> <dependency> <groupid>org.projectlombok</groupid> <artifactid>lombok</artifactid> </dependency> <!--guawa工具类--> <dependency> <groupid>com.google.guava</groupid> <artifactid>guava</artifactid> <version>27.0.1-jre</version> </dependency>
配置application.properties:
#druid spring.druid.url=jdbc:mysql:///mysql04?useunicode=true&characterencoding=utf8&servertimezone=gmt spring.druid.driverclassname=com.mysql.jdbc.driver spring.druid.username=root spring.druid.password=root #最大链接数 spring.druid.maxactive=30 #最小链接数 spring.druid.minidle=5 #获得链接的最大等待时间 spring.druid.maxwait=10000 #指定mybatis配置文件地址 mybatis.config-location=classpath:mybatis/mybatis-config.xml #端口 server.port=8888
配置druidconfig配置类(包含sql检测:显示慢sql):
@configuration public class druidconfig { @bean @configurationproperties(prefix = "spring.druid") public druiddatasource druiddatasource(){ druiddatasource datasource = new druiddatasource(); datasource.setproxyfilters(lists.newarraylist(statfilter())); return datasource; } @bean public statfilter statfilter(){ statfilter filter = new statfilter(); filter.setlogslowsql(true); filter.setmergesql(true); filter.setslowsqlmillis(5); return filter; } @bean public servletregistrationbean servletregistrationbean(){ return new servletregistrationbean(new statviewservlet(),"/druid/*"); } }
配置mybatis核心配置文件(主要配置别名与映射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> <settings> <!--关闭缓存,多机环境 数据更新 不会刷新缓存--> <setting name="cacheenabled" value="false"/> <!--开启驼峰匹配--> <setting name="mapunderscoretocamelcase" value="true"/> <!--允许主键生成--> <setting name="usegeneratedkeys" value="true"/> <!--配置默认的执行器。simple 就是普通的执行器; reuse 执行器会重用预处理语句(prepared statements); batch 执行器将重用语句并执行批量更新。 请自行百度,这部分内容不会详细介绍,涉及到架构设计,跟我们暂时还不沾边 https://blog.csdn.net/qingtian211/article/details/81838042 --> <setting name="defaultexecutortype" value="reuse"/> <setting name="defaultstatementtimeout" value="600"/> </settings> <typealiases> <package name="com.springbootmybatis.procedure.entity"/> </typealiases> <mappers> <mapper resource="mapper/ordermapper.xml"/> </mappers> </configuration>
配置xml文件,与mapper层一一对应:
<?xml version="1.0" encoding="utf-8" ?> <!doctype mapper public "-//mybatis.org//dtd mapper 3.0//en" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > <mapper namespace="com.springbootmybatis.procedure.mapper.ordermapper"> <update id="cancelorder" parametertype="string" statementtype="callable"> call cancel_order(#{orderid,jdbctype=varchar,mode=in}) </update> <select id="findall" resulttype="order"> select * from xmcc_order </select> </mapper>
再之后就是配置实体类与mapper层接口,此处省略。。。
springboot整合junit测试(两个注解):
@runwith(springrunner.class) @springboottest public class procedureapplicationtests { @autowired private ordermapper ordermapper; @test public void contextloads() { list<order> orders = ordermapper.findall(); orders.stream().foreach(system.out::println); } }
最后附一份github项目仓库地址:
https://github.com/ycheneye/procedure
上一篇: PHP define函数的使用说明
下一篇: C#时间戳的简单实现
推荐阅读
-
spring Boot环境下dubbo+zookeeper的一个基础讲解与示例
-
spring boot 2 全局统一返回RESTful风格数据、统一异常处理
-
Spring Boot2.X整合消息中间件RabbitMQ原理简浅探析
-
SpringBoot系列-整合Mybatis(XML配置方式)
-
SpringBoot系列-整合Mybatis(注解方式)
-
Mybaits 源码解析 (十二)----- Mybatis的事务如何被Spring管理?Mybatis和Spring事务中用的Connection是同一个吗?
-
spring-boot-2.0.3不一样系列之源码篇 - run方法(三)之createApplicationContext,绝对有值得你看的地方
-
Spring Boot认证:整合Jwt
-
Spring+Spring MVC+Mybatis 框架整合开发(半注解半配置文件)
-
Spring Boot 2整合Redis做缓存