mybatis
以基础为主
闪电蛙
生命不息,奋斗不止!
个人博客:http://www.cloverhk.top,欢迎各位多多指教。
展开
-
如何“优雅”的将Spring与Mybatis整合(配置文件方式)
思路:SqlSessionFactory -> SqlSession ->StudentMapper ->CRUDSpring整合Mybatis时,我们如果只需要SqlSessionFactory 那么其他的功能都是可以实现的,所以在整合时就是将Mybatis的SqlSessionFactory 交给Spring的Ioc容器来管理,整合的步骤:1.用到的jar包myb...原创 2020-04-21 00:25:20 · 370 阅读 · 0 评论 -
MyBatis自定义插件开发
插件的原理:1.每个创建出来的对象都不是直接返回 interceptorChain.pluginAll(parameterHandler);2.获取到所有的Interceptor(拦截器)(插件需要实现的接口) 调用interceptor.plugin(target);返回target包装后的对象3.插件机制,我们可以使用插件为目标对象创建一个代理对象,AOP(面向切面)我们的插...原创 2020-04-01 17:22:54 · 385 阅读 · 0 评论 -
Mybatis使用pagehelper分页插件实现分页
在使用pagehelper插件,核心就是利用sql语句中的limit对数据进行范围的查找显示,下面我们来看如何实现插件,我们通过一个小demo来看一下原理应用的场景:查询一个部门下员工的所有信息,利用分页显示,一页4条记录,并且显示当前页的记录时,要显示总记录数,总页数,当前页。1.导入项目依赖<dependency> <groupId>com.gi...原创 2020-03-30 23:06:56 · 386 阅读 · 0 评论 -
Mybatis使用pagehelper分页报错java.lang.ClassCastException: com.github.pagehelper.PageHelper cannot be cast
1.网上多数配置如下:<plugins> <!-- com.github.pagehelper.PageHelper为PageHelper类所在包名 --> <plugin interceptor="com.github.pagehelper.PageHelper"> <!-- 4.0.0以后版本可以不设置该参数 --&...转载 2020-03-30 16:20:19 · 568 阅读 · 0 评论 -
Mybatis的源码解析(三):获得xxxMapper对象并执行
框架3.获得xxxMapper对象并执行接下来我们就来执行自己写的增删改查的方法//得到SqlSessionFactorySqlSessionFactory sessionFactory= new SqlSessionFactoryBuilder().build(reader);//使用SqlSessionFactory拿到SqlSession...原创 2020-03-29 20:59:48 · 409 阅读 · 0 评论 -
Mybatis的源码解析(二):SqlSession
Mybatis的流程:2.获取SqlSession对象从配置文件中取出Exceutor(执行器),调用openSessionFromDataSource()新建的执行器的类型默认为:SIMPLE执行器的类型有三种:注意: executor = (Executor) interceptorChain.pluginAll(executor);对Executor进行拦截...原创 2020-03-29 17:52:10 · 137 阅读 · 0 评论 -
Mybatis框架图
框架原创 2020-03-29 15:23:24 · 175 阅读 · 0 评论 -
Mybatis的源码解析(一):SqlSessionFactory
Mybatis的框架图原创 2020-03-27 12:35:48 · 179 阅读 · 0 评论 -
IDEA多个项目的情况下Mybatis生成逆向工程老是找不到xml文件的解决
在使用idea生成Mybatis逆向工程时,老是加载不到generator.xml文件我写的路径没有问题啊,这是我的项目结构:这是我的主类:public class TestGenerator { public static void main(String[] args) throws Exception{ File file = ne...原创 2020-03-26 09:35:59 · 1562 阅读 · 0 评论 -
Mybatis中鉴别器discriminator的使用
Mybatis中的监别器:对查询的结果进行分支处理:话不多说下面大家看例子,总结原理:我的表结构EmpInfoMapper.xml <select id="queryAllEmpins" resultType="HashMap" resultMap="EmpInoMap"> select * from empinfo &...原创 2020-03-25 22:15:37 · 2459 阅读 · 1 评论 -
Mybatis开启Log4j日志
使用Maven开发1.引入maven坐标<!-- https://mvnrepository.com/artifact/log4j/log4j --><dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <...原创 2020-03-25 09:11:47 · 433 阅读 · 0 评论 -
Mybatis中无法加载src目录下的资源文件(.xml)
在idea中,为什么有时候不能加载src目录下的xml文件呢,mybatis中我就遇到了这样的问题Caused by: java.io.IOException: Could not find resource com/itt/mapper/StudentMapper.xmlat org.apache.ibatis.io.Resources.getResourceAsStream(Resou...原创 2020-03-22 15:29:39 · 957 阅读 · 0 评论 -
Mybatis中使用储存过程实现一条记录入两张表
使用Mybatis实现输入用户的完整的信息分别进入两个表,由于自己还是个小白,这个问题还真的难搞,使用insert来写的话,标签内只能写一句SQL,太多SQL会出现SQL注入的问题。所以我就想用存储过程来实现。下面是我的实现过程!首先是两张表的表结构注:这里我做了外键约束,detail表中的ded是userinfo表中的外键,建立存储过程报的错就是:接下来就是Mapper...原创 2020-03-18 07:38:19 · 1088 阅读 · 0 评论 -
FUNCTION XXX does not exist
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: FUNCTION queryCountByGradeWithProcesure does not existat sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)a...原创 2020-03-08 00:16:12 · 15662 阅读 · 2 评论 -
org.apache.ibatis.binding.BindingException: Type interface xxx is not known to the MapperRegistry
使用idea开发mybatis,出现:org.apache.ibatis.binding.BindingException: Type interface xxx is not known to the MapperRegistry第一步:第二步:第三步:设置resource文件夹的目录为:Resources Root 这是因为在使用Maven进,如何不设置文件夹的目录,就会导...原创 2020-03-05 21:43:01 · 396 阅读 · 0 评论