![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Mybatis
count的专栏
这个作者很懒,什么都没留下…
展开
-
Mybatis环境搭建入门案例基于xml(一)
1.使用IDEA新建一个Maven工程项目结构图如下:2.创建数据库数据库:eesyCREATE TABLE `user` ( `id` int(11) NOT NULL auto_increment, `username` varchar(32) NOT NULL COMMENT '用户名称', `birthday` datetime default NULL COMMEN...原创 2019-10-10 15:00:23 · 135 阅读 · 0 评论 -
Mybatis入门案例基于注解(二)
本编基于上篇(Mybatis环境搭建入门案例基于xml(一))基础之上实现Mybatis注解项目结构1.删除掉UserMapper的xml2.修改UserMapper接口添加select注解3.修改SqlMapConfig.xml <mappers> <mapper class="com.wd.mapper.UserMapper"><...原创 2019-10-15 14:29:52 · 127 阅读 · 0 评论 -
Mybatis入门案例分析(三)
本编分析(Mybatis环境搭建入门案例基于xml(一))中的测试类。1.分析MybatisTest类的主函数2.分析配置文件原创 2019-10-16 11:05:36 · 78 阅读 · 0 评论 -
Mybatis基于代理maper实现CRUD操作(四)
本文基于(Mybatis环境搭建入门案例基于xml(一))进行完善功能。项目结构图如下:红框标记的是不需要改动的。1.新建实体类QueryVo.javapackage com.wd.entity;public class QueryVo { private User user; public User getUser() { return use...原创 2019-10-19 16:28:03 · 140 阅读 · 0 评论 -
Mybatis的SqlMapConfig.xml配置文件(五)
本文基于Mybatis基于代理maper实现CRUD操作(四)的基础。1.properties(属性)在使用 properties 标签配置时,我们可以采用两种方式指定属性配置。1.1第一种<properties> <property name="driver" value="com.mysql.cj.jdbc.Driver"/> <property...原创 2019-10-20 19:27:08 · 145 阅读 · 0 评论 -
Mybatis的动态SQL语句(六)
本文基于Mybatis的SqlMapConfig.xml配置文件(五)进行功能完善项目结构图:红框标记的是不需要改动的。1.动态 SQL 之<if>标签我们根据实体类的不同取值,使用不同的 SQL 语句来进行查询。比如在 id 如果不为空时可以根据 id 查询, 如果 username 不同空时还要加入用户名作为条件。这种情况在我们的多条件组合查询中经常会碰到。1.1map...原创 2019-10-21 22:23:50 · 351 阅读 · 0 评论 -
Mybatis多表查询之一对多(七)
本文基于Mybatis的动态SQL语句(六)进行功能完善项目结构图如下:红框标记的是不需要改动的。本次案例主要以最为简单的用户和账户的模型来分析Mybatis多表关系。用户为User 表,账户为Account 表。一个用户(User)可以有多个账户(Account)。具体关系如下:1.创建数据表在之前的案例中已创建过user表,在这里只需要再创建account表。DROP TABL...原创 2019-10-22 21:15:18 · 347 阅读 · 0 评论 -
Mybatis多表查询之多对多(八)
本文基于Mybatis 多表查询之一对多(七)进行功能完善项目结构如下:红框标记的是不需要改动的。本次案例实现 Role 到 User 多对多1.数据库表创建1.1用户与角色的多对多关系模型1.2创建Table在 MySQL 数据库中添加角色表,用户角色的中间表。在之前的案例中已创建过user表,在这里只需要再创建role和user_role表。DROP TABLE IF E...原创 2019-10-22 21:34:01 · 519 阅读 · 0 评论 -
Mybatis延迟加载策略(九)
本文基于Mybatis多表查询之多对多(八)进行功能完善项目结构图:红框标记的是不需要改动的。1.延迟加载延迟加载:就是在需要用到数据时才进行加载,不需要用到数据时就不加载数据。延迟加载也称懒加载.好处:先从单表查询,需要时再从关联表去关联查询,大大提高数据库性能,因为查询单表要比关联查询多张表速度要快。坏处:因为只有当需要用到数据时,才会进行数据库查询,这样在大批量数据查询时...原创 2019-10-25 13:04:51 · 212 阅读 · 0 评论 -
Mybatis缓存(十)
项目结构图:1.Mybatis 一级缓存1.1证明一级缓存的存在一级缓存是 SqlSession 级别的缓存,只要 SqlSession 没有 flush 或close,它就存在。1.2编写用户持久层mapper接口UserMapper.java/** * 用户的持久层接口 */public interface UserMapper { /** * 根据id...原创 2019-10-25 13:52:25 · 180 阅读 · 0 评论 -
Mybatis注解实现基本 CRUD(十一)
项目结构图:1.mybatis 的常用注解说明@Insert:实现新增 @Update:实现更新@Delete:实现删除 @Select:实现查询 @Result:实现结果集封装@Results:可以与@Result 一起使用,封装多个结果集 @ResultMap:实现引用@Results 定义的封装@One:实现一对一结果集封装@Many:实现一对多结果集封装 @Sele...原创 2019-10-25 15:37:00 · 482 阅读 · 0 评论 -
Mybatis使用注解实现复杂关系映射开发(十二)
项目结构图:红框标记的是不需要改动的实现复杂关系映射之前我们可以在映射文件中通过配置来实现,在使用注解开发时我们需要借 助@Results 注解,@Result 注解,@One 注解,@Many 注解。1.复杂关系映射的注解说明@Results 注解代替的是标签<resultMap>该注解中可以使用单个@Result 注解,也可以使用@Result集合@Results(...原创 2019-10-26 21:22:41 · 1134 阅读 · 0 评论 -
Mybatis基于注解的二级缓存(十三)
1.在SqlMapConfig中开启二级缓存支持<!-- 配置二级缓存 --> <settings> <!-- 开启二级缓存的支持 --> <setting name="cacheEnabled" value="true"/> </settings>2.在持久层接口中使用注解配置二级缓存...原创 2019-10-26 21:28:08 · 169 阅读 · 0 评论