
Mybatis&Mybatisplus
Mybatis Frame
ooooooooooooooxiaosu
这个作者很懒,什么都没留下…
展开
-
【】多数据源和Invalid bound statement(not found)
多数据源和Invalid bound statement(not found)原创 2022-07-06 11:32:11 · 810 阅读 · 0 评论 -
【Mybatis】mapper.xml文件中list集合的判断
判断为空<if test="idList != null and idList.size > 0">判断下标的值<choose> <when test='idList.size == 1 and idList[0] == "123"'> ... </when> <otherwise> ... </otherwise></choose>.原创 2021-03-26 14:40:02 · 6411 阅读 · 0 评论 -
【Mybatis】执行任意SQL语句
描述让mybatis执行自定义SQL、执行传入的sql语句,不在mapper的xml配置文件中拼接或占位,即传入什么执行什么。方法方法一https://blog.youkuaiyun.com/xiaoxiao_su123/article/details/115181203方法二dao层接口方法List<Integer> selectBySql(String sql);mapper层xml配置<select id="selectBysql" paramete...转载 2021-03-24 17:03:57 · 1377 阅读 · 0 评论 -
【MyBatis】执行任意SQL
描述个人是采用了定义无特定语义的字段来实现的。采用JavaBean的原因在于一是方便取用数据,方便对数据进行校验。JavaBean如下:/**我这边限定了最多查询条件,所以5个字段就足够了。*如果任意多个字段的话可以采用LinkedHashMap*/public class ReportResult { private String time; private String byField1; private String byField2; priva...转载 2021-03-24 16:55:18 · 772 阅读 · 0 评论 -
【exceptions】com.alibaba.druid.sql.parser.ParserException
问题描述部分框架:springboot + mybatis + druid + oracle在mapper的xml文件中编写sql,执行测试,报错.......sql injection violation,syntax error:todo: values values...caused bycom.alibaba.druid.sql.parser.ParserException原因分析这个问题的本质就是 编写的sql没有解析出来,从而认为那条sql的语法有问题。..原创 2021-03-24 15:35:06 · 5220 阅读 · 1 评论 -
【Mybatis】【Oracle】批量更新
探讨批量更新数据三种写法的效率问题。实现方式有三种一、用for循环,通过循环传过来的参数集合,循环出N条sql注意:该法要想成功,需要(针对mysql)在db链接url后面带一个参数 &allowMultiQueries=true,即: jdbc:mysql://localhost:3306/mysqlTest?characterEncoding=utf-8&allowMultiQueries=true其实这种东西写过来写过去就是差不多一样的代码,不做重复的赘述,直..转载 2020-09-30 13:56:02 · 2875 阅读 · 0 评论 -
【Mybatis】choose-when中==的写法
问题描述<when>标签的条件满足,但没有执行<select> SELECT COUNT(1) FROM TABLE1 WHERE ID_NO = #{idNo} <choose> <when test="flag == '0'"> AND CONT_ADDR LILE CONCAT(#{contAddr},'%') </when> <when原创 2020-09-27 11:26:55 · 2026 阅读 · 2 评论 -
【Mybatis】出现异常,事务不回滚
问题描述springboot项目在service层的业务逻辑用@Transactional(rollbackFor = Exception.class)注解来标明事务,结果程序报异常之后,数据依然修改成功了。。。原因分析因为在这块处理中,用try...catch...进行了异常的捕获,而没有抛出,故事务不会滚。总结:在有事务的业务逻辑中,捕获异常要格外小心解决方法在本例中,因为涉及到一些异常的处理,所以,捕获照样捕获,然后再对异常抛出。结果就是异常抛出时,事务回滚,数据库数据不会修改原创 2020-09-08 16:30:42 · 1709 阅读 · 1 评论 -
【Mybatis】PageHelper分页插件
PageHelper是mybatis的分页插件,参考地址https://pagehelper.github.io/原创 2020-08-17 11:10:56 · 141 阅读 · 0 评论 -
Mybatis delete
delete相关方法注意事项deleteByPrimaryKey(Object o):参数传入主键即可delete(T var1):该方法参数传入一个对象,删除条件是每个字段and之后的结果(如果数据库数据在删除之前改变,存在删不掉的情况)...原创 2020-08-05 13:49:16 · 575 阅读 · 0 评论 -
Mybatis Exception Java.util.date cannot be cast to java.lang.String
错误描述dao层接口方法接受Map类型参数(即Mybatis的参数类型是Map) service层创建HashMap<String,Object>,其中一个key-value为updateTime:new Date();调用dao层方法报错【Java.util.date cannot be cast to java.lang.String】原因分析@Repositorypublic interface TestDao { int selectById(Map<St原创 2020-05-14 16:19:20 · 2160 阅读 · 0 评论 -
selectByPrimaryKey查询为null
问题描述spring boot整合mybatis 用实体类对象接收查询结果 Oracle数据库查询结果实体类对象是null,后续调用报空指针。原因分析字段类型使用包装类型,不适用基本类型。附:不加@Id的普通字段(但该字段是数据库的主键)依然可以查询。代码逻辑一个事务中代码逻辑的先后顺序。比如,先对某一条记录进行删除,再用selectByPrimaryKey查...原创 2020-05-06 17:47:04 · 2358 阅读 · 0 评论 -
反向工程
问题描述实体类字段是驼峰形式,数据库字段是下划线形式; 引入mybatis包后,正向写库没有问题,驼峰和下划线可以正确对应,但反向查询就无法对应,字段值为null解决方法方法一: 添加配置属性在application.properties文件中添加 mybaits.configuration.map-undersource-to-camel-case=true 的配置,并且不用配置...原创 2019-12-31 10:09:02 · 174 阅读 · 0 评论 -
java.lang.IllegalArgumentException: argument type mismatch
问题描述mybatis报java.lang.IllegalArgumentException: argument type mismatch错误错误原因:参数类型异常,传入的参数类型和需要的参数类型不匹配解决办法:1、打断点,找到是哪个参数 2、产看这个参数的转换是否有问题 3、尤其是使用反射的话,看反射的时候设置的参数数类型是否考虑周全转自https://blog....转载 2019-12-27 11:20:51 · 330 阅读 · 0 评论 -
mybatis insert成功后返回主键
问题描述mybatis新增成功后不返回主键解决方法方法一:推荐在mapper(即xml文件)的<insert>标签中进行如下图的设置其中,useGeneratedKeys="true"和keyProperty="id"成对使用,且必须设置; parameterType和keyColumn属性可以不设置。方法二:不推荐用<selectKey>标签;...原创 2019-12-26 16:36:55 · 1504 阅读 · 0 评论