
Mybatis
文章平均质量分 80
Let_me_tell_you
一线码农,终身学习者。微信公众号:谈谈理想
展开
-
SpringBoot 3.x整合Fluent Mybatis极简流程
此为基础配置,不包括其他高级配置,需要其他高级配置请查阅官方文档:[fluent mybatis特性总览 - Wiki - Gitee.com](https://gitee.com/fluent-mybatis/fluent-mybatis/wikis/fluent mybatis特性总览)原创 2023-08-10 09:25:04 · 948 阅读 · 0 评论 -
SpringBoot2.2上传文件示例
上传文件代码controllerpublic class PicController { //注入异步线程池 @Autowired private FileThreadPool fileThreadPool; @Autowired private FileService fileService; /** * 图片上传接口 ...原创 2019-12-13 16:56:41 · 1279 阅读 · 0 评论 -
MyBatis源码解析(四) Cache模块
MyBatis的二级缓存MyBatis的缓存分为一级缓存和二级缓存,一级缓存是 SqlSession 级别的缓存,二级缓存是mapper级别的缓存。但是这篇博客主要是介绍mybaits中缓存接口和缓存键接口,以及一些缓存实现。之前写过一篇博客简单介绍了一下Hibernate的两级缓存。链接: https://blog.youkuaiyun.com/Letmetell_you/article/detail...原创 2019-11-30 16:44:30 · 1146 阅读 · 0 评论 -
Java反射桥接方法解析
在阅读mybaits源码的反射模块时,看到了如下的一段代码:/** * 添加 Method 数组到 uniqueMethods * @param uniqueMethods * @param methods */ private void addUniqueMethods(Map<String, Method> uniqueMethods, Method[...原创 2019-10-17 09:50:59 · 1103 阅读 · 0 评论 -
Integer的parseInt和valueOf的区别
先来看一下下面这段代码String s = "1";System.out.println(Integer.valueOf(s));System.out.println(Integer.parseInt(s));输出结果是什么?没错,一样都是1。两个方法都可以把数字类型字符串转成int类型整数,但是这两个方法还是有一点区别的,valueOf(String s)方法调用了parseInt(S...原创 2019-09-25 10:39:27 · 744 阅读 · 0 评论 -
Spring源码解析之ConfigurableApplicationContext
UML图接口的作用从上面的UML图中,可以看到 ConfigurableApplicationContext 直接继承了 ApplicationContext, Lifecycle, Closeable 接口,所以 ApplicationContext 是 ApplicationContext 的子类。用过Spring或者看过Spring源码的,肯定都知道ApplicationContext...原创 2019-09-06 15:07:12 · 1208 阅读 · 0 评论 -
Invilad value for getInt() - 'xxx'
环境是MyBatis + MyBatis Plus + MySQL 5.7 + SpringBoot 2.x。使用mybaits-plus的查询方法映射数据到对象时报错,错误信息在下面有贴。异常代码:List<WxPublicAccountInfo> list = wxPublicAccountInfoMapper.selectList(null);先说一下我的解决方案,然后再...原创 2019-08-07 17:39:55 · 312 阅读 · 0 评论 -
MyBatis源码解析(二) 解析器模块
mybatis源码解析系列源码基于 3.5.2-SNAPSHOT 版本,截至笔者开始写第一篇源码解析时这是官方的最新master分支。写文章的过程中参考了很多大佬的文章和思路,以及一些为了解释清楚所必须的图。如有侵权,请联系删除。参考内容:芋道源码博客 《MyBatis技术内幕》以及其他很多文章及书籍,以及开源项目,不一一列举。引言:在之前的项目结构概览里提到了初始化项目的时候解析 my...原创 2019-07-17 23:23:44 · 366 阅读 · 0 评论 -
MySQL text类型对应mybatis jdbcType类型
MySQL 的 text 类型对应 JAVA 中的数据类型是 String。对应MyBatis的类型是 LONGVARCHAR 。例:<result column="field1" property="field1" jdbcType="LONGVARCHAR" />注意,在MyBatis支持的JDBC类型中是没有 TEXT 类型的,如果在 mapper.xml 中指定了 TE...原创 2019-07-19 11:14:55 · 37461 阅读 · 0 评论 -
mybatis源码解析(一) 项目结构概览
mybatis源码解析(一) 项目结构概览mybatis源码解析系列源码基于 3.5.2-SNAPSHOT 版本,截至笔者开始写第一篇源码解析时这是官方的最新master分支。写文章的过程中参考了很多大佬的文章和思路,以及一些为了解释清楚所必须的图。如有侵权,请联系删除。参考内容:芋道源码博客 《MyBatis技术内幕》以及其他很多文章及书籍,以及开源项目,不一一列举。1.整体架构M...原创 2019-07-16 12:55:32 · 350 阅读 · 0 评论 -
mybatis源码解析(零) MyBatis简单介绍
mybatis源码解析(零) 项目结构概览mybatis源码解析系列源码基于 3.5.2-SNAPSHOT 版本,截至笔者开始写第一篇源码解析时这是官方的最新master分支。写文章的过程中参考了很多大佬的文章和思路,以及一些为了解释清楚所必须的图。如有侵权,请联系删除。参考内容:芋道源码博客 《MyBatis技术内幕》以及其他很多文章及书籍,以及开源项目,不一一列举。在真正开始梳理M...原创 2019-07-16 12:53:13 · 246 阅读 · 0 评论 -
MyBatis最佳实践 第一弹
其实最佳实践有点标题党,一千个人用mybatis有一千种用法,所以这是我个人总结出来的一些开发建议,参考了很多大佬的文章。#{}和${}用哪个区别:${}属于字符串替换,会将参数原样拼接在SQL语句中,有SQL注入的风险;#{}属于参数占位符,mybatis会将SQL中的 #{} 替换成 ? ,执行SQL之前会调用PreparedStatement 的参数设置方法,按序给 SQL 的 ? ...原创 2019-07-16 12:48:34 · 811 阅读 · 0 评论 -
mybatis返回MySQL自增主键
此博客内容参考 芋道源码 的博客。帮博主贴个地址:http://www.iocoder.cn/获取MySQL的自增主键有以下两种方式// 方式一,使用 useGeneratedKeys + keyProperty 属性<insert id="insert" parameterType="Person" useGeneratedKeys="true" keyProperty="id"&g...原创 2019-07-15 11:01:38 · 754 阅读 · 0 评论 -
mybatis通用mapper分页后数据为空的问题
原因其实很简单,就是分页的位置写错了,放在了查询之后。也就是list集合已经查询出来了,才开始分页。解决办法:将分页代码放在list查询之前,个人建议放在查询方法的第一行。PageHelper.startPage(page, limit);...原创 2019-07-14 10:46:13 · 999 阅读 · 0 评论 -
mybatis-plus代码生成器
惯例,先贴地址:https://gitee.com/x_z/mybatis-plus-generator.git项目clone下来之后,参照readme改一下配置就好了。之前在网上找mybatis-plus的代码生成器,发现这一块简直是八仙过海,各显神通。什么GUI的,web页面的,还有各种收费好几百的高大上的,看的我是一脸懵逼。然后试用了一下,发现都不是很满意。。。GUI的各种报错,各种...原创 2019-06-28 11:47:46 · 627 阅读 · 0 评论 -
org.apache.ibatis.binding.BindingException 问题排查
问题原因:在eclipse下开发的ssm框架的web项目,切换到idea下开发在我调试代码中遇到的有以下两种情况:接口被扫描到,但是mapper对象注入失败,或者为 null。 接口被扫描到,代理对象创建成功并注入成功的,但是调用方法时出现异常。下面是网上查到的几种方法: 检查xml文件所在的package名称是否和interface对应的package名称一一对应 ...原创 2019-05-13 16:39:58 · 363 阅读 · 0 评论