![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mybatis
yzgyjyw
这个作者很懒,什么都没留下…
展开
-
MyBatis的一级缓存
基本介绍mybatis的一级缓存是SqlSession级别的缓存,只能在一个SqlSession声明周期内可以通过缓存获取其中的数据,即从openSession到close之间都是可以通过缓存获取数据的(前提,之前获取过一次)注意事项缓存的清空当在sqlSesison的生命周期中,使用了commit操做,那么SqlSession级别的一级缓存的数据就会被删除,哪怕提交的时候并没有进行对数据进行任何的原创 2017-05-23 11:56:38 · 1120 阅读 · 0 评论 -
Mybatis中的动态Sql
where和ifwhere标签相当于where关键字,用它可以去除掉第一个and if就是一个条件判断,满足条件,则会拼接if标签里面的sql语句例子多条件查询user信息 <select id="findUsers" parameterType="UserQueryVo" resultMap="userMap"> select id ,username username_,原创 2017-05-22 20:40:59 · 1215 阅读 · 0 评论 -
Mybatis的多表查询
一对一查询使用ResultType在这种方法中,一般就是新建一个扩展类,用来将需要连接的两个对象的属性都包括其中,然后设置ResultType就是这个新建对象的类型 需求:查询每一个订单的用户的用户名,这是一个一对一的问题,需要连接user表和orders表 新建一个OrdersCustomer表,其继承了orders类,并新增加了一个username的属性public class Orders原创 2017-05-22 20:07:32 · 10053 阅读 · 1 评论 -
MyBatis的ResultMap
为什么需要有ResultMap正常情况下,如果数据库中的columnName与自己定义的javaBean中的属性名不一致的话,是不能进行column到javaBean的属性的绑定的,例如 java中的User的Beanpublic class User { private int id; private String username; private Date birth原创 2017-05-22 14:56:41 · 1160 阅读 · 0 评论 -
Mybatis的SqlMapConfig文件
Mybatis的配置文件的结构properties可以将一些配置文件单独的写在属性properties文件中,例如数据库连接的一些信息第一种引用外部的属性文件#db.properties jdbc.username=root jdbc.password=yzgylq jdbc.url=jdbc:mysql://localhost:3306/mybatis jdbc.driver=com.mysql.原创 2017-05-22 14:11:53 · 1138 阅读 · 0 评论 -
Mybatis自己实现Dao与使用Mapper的代理实现Dao
Mybatis原始的Dao的开发方式(不使用Mapper代理)主要知识点insert后如何获取对象的主键的值(自动增长的或者uuid的)使用selectKey,需要注意的是对于是自动增长的主键还是uuid的主键需要区分开来。自动增长的主键<insert id="insertUser" parameterType="com.njust.ml.po.User" > <!--查询插入后记录原创 2017-05-21 20:02:56 · 1287 阅读 · 0 评论 -
SpringMvc中的统一异常处理器
一般项目中都需要作异常处理,基于系统架构的设计考虑,使用统一的异常处理方法,这些异常有可能是预期的可能发生的,这个时候我们可以捕获它,但是也有一些异常是运行时才会发生的,我们无从捕获它,此时也需要统一的异常处理在SpringMVC中我们需要可以自定义一个(一般为多个)异常类,遇到可以预期的异常是的时候,捕获相应的自定义的异常,遇到运行时产生的异常的时候,在统一的异常处理器中捕获,实现统一的异常处理,原创 2017-05-26 17:28:51 · 1138 阅读 · 0 评论 -
Mybatis的逆向工程
为什么需要有逆向工程因为一般都是先创建好数据库的表的结构,然后创建Mybatis工程,进行数据库的操作,并且因为在创建的过程中,需要新建java的pojo类,mapper接口,mapper映射文件,这是很耗时并且很枯燥的一个过程,因此mybatis官方为了提高开发效率,提高自动对单表生成sql,包括 :mapper.xml、mapper.java、表名.java(po类)使用Mybatis的一般步骤原创 2017-05-23 15:26:42 · 1143 阅读 · 0 评论 -
MyBatis的二级缓存
一级缓存的缺陷 想象一下,因为sqlSession是线程不安全的,是定义在方法体内部的局部变量,这个时候,一个用户发来了请求,另一个用户也发来了请求,但是这两个请求不是使用的同一个sqlsession,所以也就无从使用缓存。 mybatis和spring整合后进行mapper代理开发,不支持一级缓存,mybatis和spring整合,spring按照mapper的模板去生成mapper代理对象,模板原创 2017-05-23 14:58:48 · 1249 阅读 · 0 评论 -
SSM框架的整合
第一步:首先整合spring和mybatis1.将spring与web项目整合通过配置ContextLoaderListener来在项目刚启动(servletContext对象刚创建)的时候,初始化spring容器WebApplicationContext,详细的源代码如下:public class ContextLoaderListener extends ContextLoader implem原创 2017-08-18 15:56:06 · 1110 阅读 · 0 评论