1 转义字符 字符 转义 描述 < < 小于 <= <= 小于等于 > > 大于 >= >= 大于等于 <> <> 不等于 & & ' &apos; " " 2 一级缓存以及二级缓存 学习Mybatis缓存的过程中,发现一篇美团的优秀文章: 聊聊MyBatis缓存机制. 此处对一级缓存以及二级缓存的使用进行总结. 2.1 一级缓存 2.1.1 小结 (1) MyBatis一级缓存的生命周期和…
让我们回忆一下上篇博客中mybatis是怎样发挥它的作用的,主要是三类文件,第一mapper接口,第二xml文件,第三全局配置文件(application.properties),而今天我们就是来简化mybatis的工作的——利用注解替代xml配置文件. 先贴出mapper接口代码 @Mapperpublic interface UserMapper { //获取用户名单 public List<User> getUser() throws Exception; //根据id删除用户 publ…
  一.注解配置 目前MyBatis支持注解配置,用注解方式来替代映射文件,但是注解配置还是有点不完善,在开发中使用比较少,大部分的企业还是在用映射文件来进行配置.不完善的地方体现在于当数据表中的字段名与实体对象的属性名不一致时,需要配置ResultMap,但是注解的配置只能是在方法前,也就是当前方法能使用这个配置,其他的方法是不能应用此注解配置的ResultMap. 注解配置的方式是直接在数据访问接口的方法前加上相应的注解 @select(“select * from  student ”)…
在SQL语法中如果我们想使用in的话直接可以像如下一样使用: ,,) ; ,,) ; 但是如果在MyBatis中的使用 in 操作符,像下面这样写的话,肯定会报错: @Update("update user set status=#{status} where id in #{userIds}") public void updateUserStatus(@Param("userIds") String userIds, @Param("status&qu…
最近在编写mybatis的动态注解sql遇到了不少的坑,在网上看到一篇讲的比较详细的文章,记录一下: https://mbd.baidu.com/newspage/data/landingshare?pageType=1&isBdboxFrom=1&context=%7B%22nid%22%3A%22news_9416527835807077854%22%2C%22sourceFrom%22%3A%22bjh%22%7D…
1.用script标签包围,然后像xml语法一样书写 @Select({"<script>", "SELECT * FROM tbl_order", "WHERE 1=1", "<when test='title!=null'>", "AND mydate = #{mydate}", "</when>", "</script>&q…
### 1. 抽象方法中多个参数的问题 在使用MyBatis时,接口中的抽象方法只允许有1个参数,如果有多个参数,例如: Integer updatePassword( Integer id, String password); 在最终运行时,Java源代码会被编译成.class文件,就会丢失参数名称,所以,运行时会提示“找不到某参数”的错误: Caused by: org.apache.ibatis.binding.BindingException: Parameter 'password'…
JDK常用核心原理 概述 在 Mybatis 中,常用的作用就是讲数据库中的表的字段映射为对象的属性,在进入Mybatis之前,原生的 JDBC 有几个步骤:导入 JDBC 驱动包,通过 DriverManager 注册驱动,创建连接,创建 Statement,增删改查,操作结果集,关闭连接 过程详解 首先进行类的加载,通过 DriverManager 注册驱动 Class.forName("com.mysql.jdbc.Driver"); Connection connection…
原理等不在赘述,这里主要通过代码展现. 在mybatis(一)基础上,新建一个dao包,并在里面编写接口,然后再在xml文件中引入接口路径,其他不变,在运用阶段将比原始方法更节约时间,因为不用再去手动的 引用sql,我们只需调用dao层的方法,然后让dao层的方法去找配置文件,去找sql,sql查询数据并赋值给对象,或者设置对象参数值在经过sql更新到数据库,小伙伴们这就是 orm对象关系映射模型!(个人见解,不对之处请指正.) 新增后项目: 一.新建一个com.ckx.dao包,并new一个(…
MyBatis基础入门<二十>动态SQL(foreach) 1. 迭代一个集合,通常用于in条件 2. 属性 > item > index > collection : 必须指定 > list > array > map-key > open > separator > close >>> 代码示例: ClientMapper.java 接口 ClientMapper.xml文件 注意: 由于接口中定义的getClient…