其中通过"%"#{key}"%"来拼接语句 <sql id="select_where"> from cellphone c left join client cl on c.client=cl.id left join client cli on c.receiver=cli.id <if test="key!=null"> where phone_brand like "%"#{…
大纲摘要: 1.输入映射和输出映射 a) 输入参数映射 b) 返回值映射 2.动态sql a) If b) Where c) Foreach d) Sql片段 3.关联查询 a) 一对一关联 b) 一对多关联 [更新]:延迟加载 一.输入映射和输出映射 1.输入映射 也就是day01提到的入参 parameterType 传递简单类型:见day01,这里不再赘述 传递POJO包装类型: 开发中通过pojo传递查询条件 ,查询条件是综合的查询条件, 不仅包括用户查询条件还包括其它的查询条件(比如将…
Mybatis中传参包There is no getter for property named 'XXX' in 'class java.lang.String' 一.发现问题 <select id="queryStudentByNum" resultType="student" parameterType="string"> select num,name,phone from student <where> <…
一.发现问题 <select id="queryStudentByNum" resultType="student" parameterType="string"> select num,name,phone from student <where> <if test = " num!=null and num!='' "> AND num = #{num} </if> <…
1.启动项目的时候报错 1.Error starting ApplicationContext. To display the auto-configuration report re-run your application with 'debug' enabled. 解决方法: 在yml配置文件中加入debug: true,因为默认的话是false 2.在集成mybatis时mapper包中的类没被扫描 org.springframework.beans.factory.NoSuchBean…
1. 参数中直接加入%%,注意不需要加两个单引号,加了就会出错,因为系统会自动为字符串类型加上两个单引号 <select id="selectPersons" resultType="person" parameterType="person"> select id,sex,age,username,password from person where true <if test="username!=null&qu…
一:问题描述: 在springboot-security框架生成BCryptPasswordEncoder()方法生成加密后的密码后,带有$符号,导致新增用户的时候插入不了,报(IndexOutOfBoundsException: No group 2)的错误! 谷歌一下 java.lang.IndexOutOfBoundsException: No group 这个错误会发现是 String.replace方法出现反斜杠\或美元符号$时会出现这个异常, 二:出现问题的原因: MyBatis直…
问题描述 @Select("select * from account order by #{orderBy} #{orderRule} limit #{start},#{offset}") public List<Account> getAccountList(@Param("orderBy") String orderBy, @Param("orderRule") String orderRule, @Param("st…
mybatis将传入的Integer类型的0被识别成空字符串,网上的解决办法: <if test="status != null and status != '' or status == 0"> and status = #{status, jdbcType = INTEGER}</if> 然而还是有无效的时候.既然status==''时无效,就将其置为null.此时就在Java中对该参数进行处理,当 status == '' 时将其赋值为 null. @Po…
前言 当数据库里存储的值是以逗号分隔格式存储的字符串时. 数据格式如下: id name ids 1 张三 a,b,c 2 李四 c,d,e 我们拿到的条件参数是:b,e 1.后台通过逗号分隔数组,生成查询语句 select * from table where ids in (’b’,’e’) 2.通过myBatis自带功能foreach,直接把逗号分隔的字符串传到mapper.xml即可,后台不用过多操作. <select id="getSimilarity"…