Mybatis
前路无畏
自律的艰辛总甜过懊悔的苦果!
专注于java后端技术及解决方案,善于总结,分享!
自律的艰辛总甜过懊悔的苦果!
专注于java后端技术及解决方案,善于总结,分享!
自律的艰辛总甜过懊悔的苦果!
专注于java后端技术及解决方案,善于总结,分享!
展开
-
23-Mybatis集成第三方缓存框架EHCache
上一篇:22-Mybatis缓存相关设置对一级缓存和二级缓存的影响https://blog.csdn.net/fsjwin/article/details/109685932mybatis本身有缓存的实现,但是可以集成更专业的缓存框架比如:EHCache。1. Mybatis的缓存接口org.apache.ibatis.cache.Cache 为mybatis的缓存接口。加入依赖后的:2. Mybatis集成EHCache步骤2.1 导入依赖参考整合官网:http://myba原创 2020-11-14 08:18:12 · 12939 阅读 · 0 评论 -
22-Mybatis缓存相关设置对一级缓存和二级缓存的影响
上一篇:21-Mybatis二级缓存https://blog.csdn.net/fsjwin/article/details/109685894缓存相关的设置 1. <setting name="cacheEnabled" value="false"/> 关闭二级缓存,一级缓存可正常使用 2. <select useCache="false"> 关闭二级缓存,一级缓存可正常使用 3. <select flushCache="true"> :一二级均被清空原创 2020-11-14 07:06:26 · 13971 阅读 · 0 评论 -
21-Mybatis二级缓存
前一篇:20-Mybatis一级缓存https://blog.csdn.net/fsjwin/article/details/109684416mybatis二级缓存是什么?是全局缓存,基于namespace级别的缓存,一个namespace对应一个二级缓存。工作机制: 1. 一个会话,查询一条数据,这条数据就会放在当前会话的一级缓存中。 2. 如果会话关闭,一级缓存的数据会放在二级缓存中,新的会话查询信息就可以参照二级缓存。 3. 不同的namespace查询出的数据放在自己的对应缓存中即ma原创 2020-11-14 06:33:32 · 13477 阅读 · 0 评论 -
20-Mybatis一级缓存
上一篇:19-Mybatis分页小工具https://blog.csdn.net/fsjwin/article/details/109684099mybatis的一级缓存就是SqlSession级别的缓存同一个SqlSession连续查询两次仅发出了一个sql,使用了一级缓存mybaits缓存失效的四种情况不同的SqlSession相同的SqlSession,查询条件不同相同的SqlSession,查询条件相同,但是中间做了 增删改操作相同的SqlSession,但是我中间清理了缓存本质原创 2020-11-13 23:34:16 · 13679 阅读 · 0 评论 -
19-Mybatis分页小工具
上一篇:18-Mybatis动态sql之四 – <sql>代码片段https://blog.csdn.net/fsjwin/article/details/109683308PageHelper 是一个分页工具很好用如何使用呢?引入依赖直接使用即可:PageHelper.startPage(2, 2);1.引入依赖 <!--分页插件--> <dependency> <groupId>com.github.pagehelper</g原创 2020-11-13 23:02:39 · 14153 阅读 · 0 评论 -
18-Mybatis动态sql之四 -- <sql>代码片段
前一篇:17-Mybatis动态sql之三 – < foreach>标签https://blog.csdn.net/fsjwin/article/details/109678982对于在mapper.xml中重复度较高的代码可以出去出代码片段,然后include引入就可以了,记住了没有那么复杂就是string移过来就可以了。定义使用使用17章的例子仅修改mapper.xml接口1. StudentDaowwwwwwwwwwwwwwwwwwwwww //foreach-动态sql 必须原创 2020-11-13 22:03:32 · 13062 阅读 · 0 评论 -
17-Mybatis动态sql之三 -- < foreach>标签
上一篇:16-Mybatis动态sql之二 – < where>标签https://blog.csdn.net/fsjwin/article/details/109675625where部分发生变化,解决方案:mybatis提供的标签1. if2. where3. foreach下面看一下foreach标签的使用1. StudentDao //foreach动态sql 必须参数为list,不能是其他的情况 public List<Student> selectStu原创 2020-11-13 21:49:42 · 13902 阅读 · 0 评论 -
16-Mybatis动态sql之二 -- < where>标签
where部分发生变化,解决方案:mybatis提供的标签1. if2. where3. foreach下面看一下if标签的使用1. StudentDao //if 动态sql 必须参数为实体类,不能是其他的情况 public List<Student> selectStudentif(Student student);2. StudentDao.xml<select id="selectStudentif" resultType="com.yuhl.dom原创 2020-11-13 15:37:27 · 13084 阅读 · 0 评论 -
15-Mybatis动态sql之一 -- <if>标签
where部分发生变化,解决方案:mybatis提供的标签1. if2. where3. foreach下面看一下if标签的使用1. StudentDao //if 动态sql 必须参数为实体类,不能是其他的情况 public List<Student> selectStudentif(Student student);2. StudentDao.xml<select id="selectStudentif" resultType="com.yuhl.dom原创 2020-11-13 15:35:47 · 13673 阅读 · 0 评论 -
14-Mybatis中like使用的两种情况
模糊查询,在mybaits中有两种实现方式1.在java代码中准备好字符串1.1StudentDao//使用名字like public Student selectStudentlike1(String name);1.2StudentDao.xml<select id="selectStudentlike1" resultType="com.yuhl.domain.Student"> select id,name,email,age from stude原创 2020-11-13 15:34:24 · 14036 阅读 · 0 评论 -
13-Mybatis封装输出结果之二 -- resultMap
上一篇:12-Mybatis封装输出结果之一 – resultType (含typeAliases)https://blog.csdn.net/fsjwin/article/details/109673170处理使用resultType之外,也可以使用resultMap,即当我们java类的属性名和数据库的名字不一致的时候可以一用。1.resultMap解决属性值和表列名不一致的情况1.1 StudentDao public MyStudent selectStudentResultMap(I原创 2020-11-13 15:32:36 · 14754 阅读 · 0 评论 -
12-Mybatis封装输出结果之一 -- resultType (含typeAliases)
前一篇: 11-Mybatis中mapper文件中#和$的区别https://blog.csdn.net/fsjwin/article/details/109672707ResultType结果的类型有三种1. 简单累心2. 对象类型3. map类型1.简单对象就是返回一个值,比如数据库的数量:1.1 StudentDao /** * ResultType返回结果类型 简单类型 * */ public Integer selectStudentR原创 2020-11-13 14:05:36 · 14220 阅读 · 0 评论 -
11-Mybatis中mapper文件中#和$的区别
上一篇:10-Mybatis参数的使用之五–通过Map传值-了解-不建议用https://blog.csdn.net/fsjwin/article/details/109670536mapper文件中#和$的区别应该是面试过程中容易问到的, 但对这个知识点的掌握也相对比较重要。1.#占位符前面我们用了这个占位符,比如: <!--Map传值--> <select id="selectStudentByMap" resultType="com.yuhl.domain.S原创 2020-11-13 13:07:39 · 14128 阅读 · 0 评论 -
10-Mybatis参数的使用之五--通过Map传值-了解-不建议用
前一篇:09-Mybatis参数的使用之四–通过索引传值-了解https://blog.csdn.net/fsjwin/article/details/109670182使用map传参,也很简单,直接看栗子,了解即可,别用啊!1. StudentDao /** * map传值 * */ public List<Student> selectStudentByMap(Map map);2. StudentDao.xml <!--原创 2020-11-13 10:58:11 · 14055 阅读 · 0 评论 -
09-Mybatis参数的使用之四--通过索引传值-了解
前一篇:08-Mybatis参数的使用之三–使用对象传值https://blog.csdn.net/fsjwin/article/details/109669862通过索引传值,相信小伙伴们应该能想想的出来吧,对了,非常简单。1.StudentDao /** * 通过name和age寻找学生- 通过索引传值 * */ public List<Student> selectStudentByIndex(String name,Integer ag原创 2020-11-13 10:45:44 · 13177 阅读 · 0 评论 -
08-Mybatis参数的使用之三--使用对象传值
前一篇:07-Mybatis参数的使用之二–多个参数的使用@Paramhttps://blog.csdn.net/fsjwin/article/details/109669306对象传值,传入的是一个对象,比较点单,直接看栗子。1. StudentDao /** * 通过name和age寻找学生 * */ public List<Student> selectStudentByObject(Student student);2. Student原创 2020-11-13 10:35:26 · 14792 阅读 · 0 评论 -
07-Mybatis参数的使用之二--多个参数的使用@Param
上一篇:06-Mybatis参数的使用之一–简单参数的使用https://blog.csdn.net/fsjwin/article/details/109668713一个参数结束后,看一下多个参数的使用。什么是多个参数呢?顾名思义就是有name和age属性,哈哈,就是多个了下面直接看例子1.StudentDao@Param(“myname”) 下载参数的前面: /** * 通过name和age寻找学生 * */ public List<Student原创 2020-11-13 10:17:35 · 14077 阅读 · 0 评论 -
06-Mybatis参数的使用之一--简单参数的使用
上一篇:05-2-Mybatis番外篇:复制一个maven module到另一个module https://blog.csdn.net/fsjwin/article/details/109667706参数怎么传入到sql语句中的呢?底层就是jdbc原始的做法,使用占位符的方式。1. 简单参数dao代码: /** * 按id查询学生 * */ public Student selectStudentById(Integer id);Studen原创 2020-11-13 10:02:32 · 13560 阅读 · 0 评论 -
05-2-Mybatis番外篇:复制一个maven module到另一个module
前一篇:05-1-Mybatis番外篇:idea中添加代码模板https://blog.csdn.net/fsjwin/article/details/109667511复制一个module到另一个module到另一个项目module1. 本地文件先复制一份,修改为新项目名称2. 修改新项目名称的pom文件为自己的名称,删除无用文件2.1pom文件为自己的名称2.2删除无用文件3. idea中导入选择新项目:选择选项:4.修改jdk版本5.完成,测试一下可以正常使用了原创 2020-11-13 09:18:33 · 13477 阅读 · 0 评论 -
05-1-Mybatis番外篇:idea中添加代码模板
上一篇:05-Mybatis中Dao接口演变过程https://blog.csdn.net/fsjwin/article/details/109667014问题抛出:下面的mybatis-mapp和mybatis配置文件怎么加上的?1. file-setting2. 进行如下操作就可以了这些内容哪儿来的呢?不要问哦,问就是其他地方考培过来的,官网,项目均可以的:为了方便大家,我贴过来一份:mybatis-mapper配置文件:<?xml version="1.0" enco原创 2020-11-13 09:05:46 · 13512 阅读 · 0 评论 -
05-Mybatis中Dao接口演变过程
上一篇:04-Mybatis工具类MybatisUtil的抽取https://blog.csdn.net/fsjwin/article/details/109662240本节其他小知识:idea中添加代码模板:怎么复制一个maven项目为另一个maven项目:前面我们使用:List<Student> studentList = sqlSession.selectList("com.yuhl.dao.StudentDao.selectStudents");这种方法在开发过程中原创 2020-11-13 08:55:51 · 12717 阅读 · 0 评论 -
04-Mybatis工具类MybatisUtil的抽取
上一篇:03-Mybatis的关键核心类说明https://blog.csdn.net/fsjwin/article/details/109661578为什么要抽取Mybatis的工具类呢?有没有感觉重复率好高!所以我们要一个工具类:1.工具类MybatisUtilpackage com.yuhl.utils;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSession;import o原创 2020-11-12 23:12:04 · 14336 阅读 · 0 评论 -
03-Mybatis的关键核心类说明
上一篇:02-Mybatis快速入门https://blog.csdn.net/fsjwin/article/details/109658135mybaits中有几个类是核心类,需要格外关照,下面逐个说明。1. ResourcesInputStream in = Resources.getResourceAsStream(conf);mybatis中来的类主要用来加载配置文件的2. SqlSessionFactoryBuilderSqlSessionFactoryBuilder sqlSess原创 2020-11-12 22:52:12 · 12795 阅读 · 0 评论 -
02-Mybatis快速入门之一斑窥豹
上一篇:01-Mybatis初识https://blog.csdn.net/fsjwin/article/details/109640386需求:写一个mysql的插入和查询开发补助如下:1.新建表2.加入maven坐标、mysql驱动3. 创建Student实体类4.创建Dao接口5.创建mybatis使用的配置文件sql映射文件,一个表一个,是一个xml文件 写在所在的接口目录中,名字一样6.创建mybatis的主配置文件,一个项目中就一个,提供数据库的连接信息和sql文件(第五步中)的原创 2020-11-12 22:35:05 · 13402 阅读 · 0 评论 -
01-Mybatis初识
Mybaits是Dao层的解决方案,他是一个框架,框架就是一个半成品,可以在你加入的配置或者按照框架的规范编写代码后,成为完成整体功能的成品,之前我们使用原始的jdbc操作数据库台low了。现在有一帮大牛把繁重的需要程序员写的代码封装起来,而这种封装有很多中,mybatis只是其中的一种。1. 什么是Mybatis框架apache旗下的开源项目。解决数据访问这个领域的问题。特点:可以写sql的控制权控制在程序员手中。hibernate就不太友好了。对于sql的优化mysql更为原始。GitHu原创 2020-11-12 20:45:59 · 13332 阅读 · 0 评论