MyBatis
文章平均质量分 53
Docker学习Docker学习
小码哥222
这个作者很懒,什么都没留下…
展开
-
SpringBoot中枚举类型的使用:①Json序列化和 ②在数据库中存储
ref:https://www.cnblogs.com/kelelipeng/p/13972138.html前言很多人给枚举定义一个私有的属性,序列化为JSON时,希望以这个属性值作为枚举对象的序列化结果。同时,Jackson和FastJson是两种不同的Json序列化方案。因此,如果你给属性添加了这个注解 @JsonValue ,但是又使用的是FastJson的序列化API去进行Json序列化,那么是没有效果的。FastJson对于枚举类型对象默认的序列化结果就是 枚举名称。如对于如下:O原创 2021-08-17 14:20:25 · 2752 阅读 · 0 评论 -
数据库中存储Json格式数据
在数据库中存储Json格式数据1、表字段类型 json2、Java代码有两种方式:方式一 :往数据库中存储的值 必须为JSON格式的字符串,因为数据库中会做一次校验。缺点:需手动进行转换 和 解析。方式二 :使用MybatisPlus的转换注解定义对象类型的属性,添加MybatisPlus的转换注解。其实注解的原理还是 将对象转成了JSON格式的字符串进行存储。优点:MybatisPlus自动完成了转换 和 解析。...原创 2021-08-09 15:41:08 · 13054 阅读 · 0 评论 -
mybatis-plus操作注意点
1、查询条件之——or若你想实现这样的sql效果,SELECT *FROM tb_userWHERE id = 4OR ( `name` LIKE '%liang%' AND age > 22);对应mp的API为:QueryWrapper<User> queryWrapper = new QueryWrapper<>();queryWrapper.eq("id",4).or(i -> i.like("name","liang").gt("a原创 2021-04-17 23:09:00 · 305 阅读 · 0 评论 -
Mybatis-plus使用注解 @TableField(exist = false) 注明非数据库字段属性
@TableField(exist = false) 注解加载bean属性上,表示当前属性不是数据库的字段,但在项目中必须使用,这样在新增等使用bean的时候,mybatis-plus就会忽略这个,不会报错原创 2021-04-15 14:08:41 · 704 阅读 · 0 评论 -
MyBatisPlus的CRUD操作
一、MP简介它是 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生。那么它是怎么增强的呢?其实就是它已经封装好了一些crud方法,我们不需要再写xml了,直接调用这些方法就行,就类似于JPA。二、SpringBoot项目整合 MP引入了mybatis-plus,就不用再引入mybatis的依赖了,因为 mybatis-plus 中包含了。1、pom: <dependency> <groupId.原创 2021-01-17 22:17:58 · 1266 阅读 · 0 评论 -
MyBatis常见面试题总结?
参考:javaGuide-mybatis面试题总结1、获取参数的2种方式: #{}和${} 区别是什么?参考:#{}和${} 区别是什么?#{} 和 ${}在预编译中的处理是不一样的。#{}在预处理时,会把参数部分用一个占位符 ? 代替。然后再给把占位符?替换成参数值。而${} 则只是简单的字符串替换,不存在 占位符 ? 这个过程。在使用过程中 优先使用 #{}。因为 ${} 会导致 sql 注入的问题。...原创 2021-03-08 19:26:36 · 84 阅读 · 0 评论 -
MyBatis动态SQL,写SQL更爽
参考:https://mp.weixin.qq.com/s/ar8y-ZC4E71NM3EIybBFygMyBatis动态SQL,写SQL更爽文章目录MyBatis动态SQL,写SQL更爽前言1 动态 SQL 支持以下几种标签:2 if 标签2.1 在 WHERE 条件中使用 if 标签2.读入数据总结前言MyBatis 令人喜欢的一大特性就是动态 SQL。在使用 JDBC 的过程中, 根据条件进行 SQL 的拼接是很麻烦且很容易出错的。MyBatis 动态 SQL 的出现, 解决了这个麻烦。原创 2021-01-25 16:38:42 · 101 阅读 · 0 评论 -
Mybatis配置C3p0 和Druid连接池
https://blog.csdn.net/qq_16183731/article/details/83931933原创 2019-09-20 01:09:54 · 152 阅读 · 0 评论 -
深入理解MyBatis中的一级缓存与二级缓存
https://www.cnblogs.com/yuluoxingkong/p/8205858.html原创 2019-09-19 23:56:47 · 410 阅读 · 0 评论 -
#{}与${}的区别
#{}表示一个占位符号通过#{}可以实现 preparedStatement 向占位符中设置值,自动进行 java 类型和 jdbc 类型转换,#{}可以有效防止 sql 注入。 #{}可以接收简单类型值或 pojo 属性值。 如果 parameterType 传输单个简单类型值,#{}括号中可以是 value 或其它名称。${}表示拼接 sql 串通过${}可以将 paramete...原创 2019-09-19 01:00:53 · 614 阅读 · 0 评论 -
MyBatis中实体类的属性名 和 表中字段的名称不一样?
不一样导致的问题:属性值封装不进去,值为null。解决方案:1、查询sql语句时, 给字段起一个别名。2、在mybatis全局配置文件中开启驼峰命名法:- 3、在mapper映射文件中使用 <resultMap> 自定义映射规则。(高级映射)...原创 2019-09-15 11:10:30 · 391 阅读 · 0 评论