mybatis
文章平均质量分 79
键盘歌唱家
我要吊到你们拿着世界上最吊的哈勃望远镜都看不到我的头,有这么吊!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MyBatis关联查询(xml方式和注解方式都有)
本博客将用简单的demo来展示MyBatis关联查询的全部写法,如果写的不好还望评论区的小伙伴指点和补充! 前置环境和数据库的表 本项目所需要的jar包: 数据库的表: student表: card表: studentclass表 MyBatis核心配置文件:(主要配置数据库信息和mapper接口位置) <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org/原创 2021-03-15 10:19:11 · 2768 阅读 · 5 评论 -
怎么玩LOG4J
首先我们得知道这是个什么东西?LOG4J是MyBatis提供的一个日志,可以查看sql语句是怎么被MyBatis执行的。 看了很多垃圾博客说玩这个只需要一个log4j.jar就行了,结果浪费了本人太多的时间,现在我来总结一下log4j需要的jar: 我觉得至少需要两个jar:log4j.jar和self-api.jar,如果不放心可以把self4j-log4j12-1.7.25.jar整进来! 使用方法: 第一步: 编写log4j.properties文件并放在内路径(src目录下) log4j.rootL原创 2020-05-26 17:19:35 · 214 阅读 · 0 评论 -
MyBatis插件开发基础
四个处理:StatementHandler ParameterHandler ResultSetHandler TypeHandler 四大核心对象:StatementHandler ParameterHandler ResultSetHandler Executor 四大核心对象: 1.都涉及到了 拦截器 用于增强 2.四大核心对象都包含了 该增强操作 自定义插件的编写逻辑: 根据MyBatis规则 编写一个 拦截器 ,在拦截器内部加入 自定义增强功能。 下面举例实现一个拦截查询原创 2020-08-22 16:33:25 · 180 阅读 · 0 评论 -
MyBatis分页插件PageHelper
PageHelper是国人写的一款MyBatis的分页插件! 本文简单的说明一下他的使用: 要使用PageHelper,您只需要在类路径中包含 pagehelper-xyzjar 和jsqlparser-xyzjar文件。 如果您使用的是Maven,只需将以下依赖项添加到pom.xml中: < 依赖关系 > < groupId > com.github.pagehelper </ groupId > < artifactId > pagehelper <原创 2020-08-22 16:33:07 · 183 阅读 · 0 评论 -
MyBatis中不同数据库的差异
下面有这样一个场景: 数据库的某些字段是自增产生的(比如说mysql,他就有自增的功能) 我在插入数据的时候就没插入自增的那一段数据,但在插入数据后,我想看看自增的这条数据是什么(回写操作),下面我们通过这个问题进行分别讲述: mysql支持自增 只需要配置两个属性即可: useGeneratedKeys=“true” keyProperty="stuNo" KeyProperty指定自增的字段! <insert id="addStudent" parameterTyp原创 2020-08-22 16:32:01 · 747 阅读 · 0 评论 -
MyBatis环境切换问题
本文讲的是MyBatis框架怎么切换数据库的环境: 分为以下几步: 在核心配置文件中: 1.编写environment标签 2.environments的default属性指定需要的environment的id值 3.配置数据库支持类 db.properties: #oracle oracle.driver=oracle.jdbc.OracleDriver oracle.url=jdbc:oracle:thin:@127.0.0.1:1521:ORCL oracle.username=scott oracl原创 2020-08-22 16:17:57 · 744 阅读 · 0 评论 -
MyBatis批量操作DML
sessionFactory.openSession(ExecutorType.BATCH ); --推荐的写法 BATCH: 预编译SQL一次 ,其余DML 只需要设置参数值即可 insert into student(stuNo,stuName,stuAge,graName) values(#{stuNo} , #{stuName},#{stuAge},#{graName}) 没有BATCH: 预编译N次 ,每次DML都需要 执行完整的SQL public static void addBatc原创 2020-08-22 16:11:07 · 452 阅读 · 0 评论 -
MyBatis自定义类型转换器
MyBatis虽然自身提供了很多种默认的转换机制,比如数据库中的number类型会自动转换成java的int类型,varchar/varchar2会自动转换成String…如果这些默认的类型转换依旧不能满足程序的开发,开发者就应该考虑自己去编写类型转换器! 本文以jav中的boolean转化为数据库中number为例子。(True-1,false-0) 下面讲述实现方法: 1.编写继承 BaseTypeHandler的实现类BooleanAndIntConverter(转换器类) 从数据库取数据用的下面的g原创 2020-08-22 16:17:46 · 1041 阅读 · 0 评论 -
Springboot整合MyBatis以及MyBatis-plus
在创建springboot项目的时候,勾选spring web , jdbc Api , mybatis framework , mysql driver. 然后配置好数据库的连接配置: application.yml spring: datasource: username: root password: root url: jdbc:mysql://127.0.0.1:3306/mp?serverTimezone=Asia/Shanghai drive原创 2020-08-22 16:14:25 · 485 阅读 · 0 评论 -
Mybatis逆向工程模板
因为Mybatis框架定义了数据库表和实体类一一对应,所以只要知道表,mybaits就能自动帮你生成实体类,和mapper文件(会自动帮你写一些增删改语句),虽然这个功能很鸡肋,毕竟逆向工程往往达不到我们开发的要求,但用的好的话,还是能提高开发效率,减少代码量的。本文依旧拿oracle举例子: 首先至少需要三个jar: 然后创建一个generator.xml:根据下面的注释,自己稍微修改一下:(基本就是要修改数据库信息,表名和生成路径) <?xml version="1.0" encoding="U原创 2020-08-22 16:19:07 · 289 阅读 · 0 评论 -
浅谈MyBatis缓存
学过MyBatis框架的都知道,MyBatis自带一二级缓存,并且还有第三方给MyBastis提供二级缓存,例如ehcache、memcache,本文粗略的讲一下这个几个缓存的机制和使用吧。 首先解释一下缓存存在的意义:他避免了相同的sql查询语句频繁的去访问数据库。自动的把第一次查询的结果放在了缓存中,后续再次查询该同样的对象时,则直接从缓存中查询该对象即可。 一级缓存: MyBatis默认开启一级缓存,范围是同一个SqlSession对象。 public static void query() thro原创 2020-08-22 16:19:13 · 216 阅读 · 0 评论
分享