springboot与mybatis整合
重点:
0、回顾
1、修改SpringBoot的数据源Druid
2、配置Mybatis
3、配置PageHelper分页插件
重点解析:
0、回顾:
thymeleaf
基于html开发
导入pom依赖
application.yul配置是否使用缓存
html开发的相关指令
th:each=“xxx : ${users}”
th:text ${xxx。attr}
th:value
freemarker需要配置freemarker模板 idea setting设置导入pom依赖application.yul配置页面标签的介绍取值、${xxx!]非空判断<#if xxx?exist>条件表达式<#if xxx==?>...<#elseif xxx==?>..<#else>..</#if>循环<#list xxxs as xxx>...</#list>include<#include 'xx.ftl'>全局变量和局部标量<#grobal>....</#grobal><#assgin>...
File–>New–>Project…
Spring Initializr
Maven Project
Web
Web
Core
Lombok
Aspects
DevTools
SQL
mybatis+jdbc+mysql
1.修改SpringBoot的数据源Druid(默认数据源是org.apache.tomcat.jdbc.pool.DataSource)
1.1 项目地址
https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter
1.2 引入依赖
<dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.1.10</version></dependency>
1.3 配置application.yml
application.yml和application.properties区别?
yml文件的好处,天然的树状结构,一目了然,实质上跟properties是差不多的。
配置application.yml文件注意事项:
- 原有的key,例如spring.mybatis.xxx,按“.”分割,都变成树状的配置
- key后面的冒号,后面一定要跟一个空格
- 把原有的application.properties删掉。然后一定要执行一下 maven -X clean install
1.4 启动SpringBoot项目访问druid
http://localhost:tomcat端口号/项目名称/druid/
2.配置Mybatis
2.1 引入依赖
<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.3.2</version></dependency>
MyBatis-Spring-Boot-Starter依赖将会提供如下:
- 自动检测现有的DataSource。
2) 将创建并注册SqlSessionFactory的实例,该实例使用SqlSessionFactoryBean将该DataSource作为输入进行传递。
3) 将创建并注册从SqlSessionFactory中获取的SqlSessionTemplate的实例。
4) 自动扫描您的mappers,将它们链接到SqlSessionTemplate并将其注册到Spring上下文,以便将它们注入到您的bean中。
就是说,使用了该Starter之后,只需要定义一个DataSource即可(application.properties或application.yml中可配置),它会自动创建使用该DataSource的SqlSessionFactoryBean以及SqlSessionTemplate。会自动扫描你的Mappers,连接到SqlSessionTemplate,并注册到Spring上下文中。
2.2 配置application.yml
mybatis:
#配置SQL映射文件路径
mapper-locations: classpath:mapper/*.xml
#配置别名
type-aliases-package: com.zking.项目名.model
2.3 使用Mybatis-Generator插件生成代码
2.3.1 导入并修改generatorConfig.xml和jdbc.properties(resources下)
2.3.2 配置pom.xml文件
2.3.3 配置EditConfiguations的Maven启动方式
命令:mybatis-generator:generate -e
2.4 解决@Repository标签注解报错问题
2.4.1 @Repository标签改为@Mapper标签
添加@Mapper注解之后,这个接口在编译时会生成相应的实现类。但请注意,这个接口中不可以定义同名的方法,因为会生成相同的id,因此这个接口不支持重载。这样做虽然能解决问题,但以后都要为每个Dao层的接口添加@Mapper注解
2.4.2 不修改@Repository注解,在启动类中添加@MapperScan(“xxxx”)注解,用于扫描Mapper类的包。
扫描多个包:@MapperScan({”com.zking.dao”,”com.zking.pojo”})@RunWith(SpringJUnit4ClassRunner.class)@SpringBootTest(classes = Springboot03Application.class)
3.配置PageHelper分页插件
3.1 引入依赖
<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.2.3</version></dependency>
3.2 配置application.yml
#pagehelper分页插件配置pagehelper:helperDialect: mysqlreasonable: truesupportMethodsArguments: trueparams: count=countSql
3.3 创建分页AOP
注:必须开启动态代理@EnableAspectJAutoProxy
4.配置log日志
Spring Boot在所有内部日志中使用Commons Logging,但是默认配置也提供了对常用日志的支持,如:Java Util Logging,Log4J, Log4J2和Logback。每种Logger都可以通过配置使用控制台或者文件输出日志内容。
4.1 配置application.yml
#显示日志logging:level: com.zking.springboot01.mapper: debug
5.其他
5.1 SpringBoot启动项配置:
//自动扫描Mapper目录@MapperScan("com.zking.项目名.mapper")//启用事物管理器@EnableTransactionManagement 配置@transactional//启用动态代理@EnableAspectJAutoProxy
springboot与mybatis整合相关推荐
- springboot 和 mybatis整合:参数查询和动态sql
springboot 和 mybatis整合: mapper定义的是数据库的操作方法: @Mapper public interface UserMapper {} 单参数的处理: @Select(& ...
- Eclipse中实现SpringBoot与Mybatis整合(图文教程带源码)
场景 数据库中数据 实现效果 项目结构 前面参照 Eclipse中新建SpringBoot项目并输出HelloWorld https://blog.csdn.net/BADAO_LIUMANG_QIZ ...
- Day14(springboot与mybatis整合、mybatis自动代码生成、swagger、thymeleaf、lombok环境配置、mybatisPlus介绍(自动代码生成))
srpingboot和mybatis整合 springbootSSM项目下载地址 链接:https://pan.baidu.com/s/11fwh1C7ZOg3jQVlXl2DJjQ 提取码:83yt ...
- springboot+Druid+mybatis整合
一.添加Druid.MySQL连接池.mybatis依赖 <!--整合Druid--> <dependency> <groupId>com.alibaba</ ...
- Spring boot Mybatis 整合(注解版)
之前写过一篇关于springboot 与 mybatis整合的博文,使用了一段时间spring-data-jpa,发现那种方式真的是太爽了,mybatis的xml的映射配置总觉得有点麻烦.接口定义和映 ...
- 保姆级Spring+Mybatis整合的简单增删改查功能实现
Springboot和Mybatis整合实现增删改查等 0.文章中pageHelper相关的操作是分页查询的东西与本文无关 1.首先创建一个Springboot的项目 1.1Java一般选择的是8,看 ...
- SpringBoot 实战 (九) | 整合 Mybatis
微信公众号:一个优秀的废人 如有问题或建议,请后台留言,我会尽力解决你的问题. 前言 如题,今天介绍 SpringBoot 与 Mybatis 的整合以及 Mybatis 的使用,本文通过注解的形式实 ...
- SpringBoot入门篇--整合mybatis+generator自动生成代码+druid连接池+PageHelper分页插件
我们这一一篇博客讲的是如何整合Springboot和Mybatis框架,然后使用generator自动生成mapper,pojo等文件.然后再使用阿里巴巴提供的开源连接池druid,这个连接池的好处我 ...
- SpringBoot实战:整合Redis、mybatis,封装RedisUtils工具类等(附源码)
创建SpringBoot项目 在线创建方式 网址:https://start.spring.io/ 然后创建Controller.Mapper.Service包 SpringBoot整合Redis 引 ...
最新文章
- 什么才是真正赚钱?| 每日趣闻
- codeforces水题100道 第十一题 Codeforces Round #143 (Div. 2) A. Team (brute force)
- java B2B2C 源码多租户电子商城系统-Spring Cloud组件详解...
- 那些鼓吹国内首个.NET 5框架的,该醒醒了!
- mysql分组查询和子查询语句_6.MySQL分组聚合查询,子查询
- SSE图像算法优化系列二十二:优化龚元浩博士的曲率滤波算法,达到约1000 MPixels/Sec的单次迭代速度...
- CC.Net 全接触系列之三: CQ.Net: CC.Net 最佳伴侣
- Java:多线程,线程池,用Executors静态工厂生成常用线程池
- 调用MYSQL存储过程实例
- Unraid USB启动盘怎么更换和重新获取注册码密钥?
- 用正则表达式进行身份证验证
- transformer变体
- ZooKeeper session has been expired
- 支付微服务设计方案格式模板_开发微商城有哪些常见问题
- 绝地求生 服务器无响应,绝地求生卡在登陆页面怎么办
- php预览ppt,演示文稿幻灯片有哪四种视图模式?
- 反击爬虫,前端工程师的脑洞可以有多大?
- 【大染坊】从陈寿亭身上能学到什么?
- 响应式织梦模板新闻博客资讯类网站
- 我的心像洋葱,需要一层一层剥开,你才明白这颗心多爱你:Abstract中继承关系中,变量初始化与构造方法的关系