
mybatis
文章平均质量分 69
天天
手把青秧插满田
低头便见水中天
心地清净方为道
退步原来是向前
展开
-
MyBatis-Spring 注入映射器
原文地址:http://mybatis.github.io/spring/zh/mappers.html#MapperScannerConfigurer为了代替手工使用 SqlSessionDaoSupport 或 SqlSessionTemplate 编写数据访问对象 (DAO)的代码,MyBatis-Spring 提供了一个动态代理的实现:MapperFactoryBean。这个类 可转载 2015-05-21 11:02:32 · 925 阅读 · 0 评论 -
Mybatis 配置报错:元素类型为 "configuration" 的内容必须匹配 "(properties?,settings?,typeAliases?,typeHandlers?.....
在配置Mybatis的时候明明配置项没有错,就会莫名其妙的报错:元素类型为 "configuration" 的内容必须匹配 "(properties?,settings?,typeAliases?,typeHandlers?,objectFactory?,objectWrapperFactory?,reflectorFactory?,plugins?,environments?,databaseI...原创 2018-07-04 14:53:47 · 1693 阅读 · 2 评论 -
Mybatis 源码学习(五) DataSource
作为一个ORM框架对jdbc的封装是基础和前提。假设要自己写一个ORM框架,首先也是从jdbc入手。或者说从创建数据库链接开始。跟我想的不太一样,获取数据库链接没有在jdbc包里,而是在datasource包里。javax.sql.DataSource。...原创 2018-06-28 14:19:51 · 546 阅读 · 0 评论 -
Mybatis 源码学习(七) 缓存的刷新
之前学习了mybatis的一级缓存和二级缓存。那么当数据库数据有跟新的时候,缓存是如何被清除的呢?找到update的实现源码: public int update(String statement, Object parameter) { try { dirty = true; MappedStatement ms = configuration.getMappe...原创 2018-07-03 14:45:39 · 3006 阅读 · 0 评论 -
Mybatis 源码学习(六) Transaction事务模块
看到这里,有点没有看明白mybatis的两种事务类型。网上搜了一下相关文章。MyBatis源码解析(三)——Transaction事务模块别人的这篇写的太好,直接转过来吧。原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/6634151.html1、回顾 之前介绍了Environment环境类,这其实是一个单例类,在MyBatis运行开启后...转载 2018-07-02 10:13:20 · 626 阅读 · 0 评论 -
Mybatis 源码学习(四) 二级缓存
听说二级缓存是Mapper级的,我找变了mapper也没有找到。不小心看到MappedStatement有个cache属性。难道是在这里。开始没能串起来。只能网上找。最后确认这个二级缓存果然就是在MappedStatement。而它又是在Configuration上的啊,这不就成了全局的了吗。猜:只是缓存的时候以mapper为一个组,然后清理的时候按mapper去清理缓存。所以就成了是Mapper...原创 2018-06-07 11:06:54 · 288 阅读 · 1 评论 -
Mybatis 源码学习(三) 一级缓存
今天想挑战一下一级缓存。直接从github上下载了源码。https://github.com/mybatis/mybatis-3.git原创 2018-06-06 16:13:41 · 193 阅读 · 0 评论 -
Mybatis 源码学习(二) Mapper 接口和sql的映射
问题:xml中的sql语句是怎么被映射到Mapper接口的一个方法上的?弄明白了mapper是如何注册的了以后,发现xml文件中的namespace是关键。实际还是去找那个java接口文件。那么找到了接口文件,注册了mapper那这个mapper又是怎么反过来找到xml中配置的sql的呢?看mapper注册的代码好想没有发现这个映射关系。从新再看一下源码,这次要顺利很很,很快找到了昨天那一串调用栈...原创 2018-06-05 18:32:26 · 2177 阅读 · 0 评论 -
Mybatis 源码学习(一) Mapper 注册
问题:mybatis中mapper接口和xml文件是如何对应起来的。在mybatis-config.xml中配置一个mapper <mappers> <mapper resource="com/tiantao/learn/mappers/UserMapper.xml" /> </mappers>是最简单最直接的方式了。这样我们就可以...原创 2018-06-04 17:11:28 · 1113 阅读 · 0 评论 -
MyBatis Generator生成DAO——序列化
MyBatis Generator生成DAO 的时候是没有序列化的。还以为要手工添加(开始是手工添加的委屈),今天遇到分页的问题,才发现生产的时候可以添加插件。既然分页可以有插件,序列化是不是也有呢。果然SerializablePlugin,已经给我们提供好了。 <plugin type="org.mybatis.generator.plugins.SerializablePlugin" />马上高端大气了起来。每个model对象都乖乖的带上了Serializable接口。无奈只有model对象原创 2015-07-01 17:41:04 · 13805 阅读 · 5 评论 -
mybatis 批量插入实现。
原文:http://chenzhou123520.iteye.com/blog/1583407在程序中封装了一个List集合对象,然后需要把该集合中的实体插入到数据库中,由于项目使用了Spring+MyBatis的配置,所以打算使用MyBatis批量插入,由于之前没用过批量插入,在网上找了一些资料后最终实现了,把详细过程贴出来。 实体类TrainRecord结构转载 2015-06-17 11:27:03 · 2536 阅读 · 0 评论 -
MyBatis特殊字符转义
被<![CDATA[]]>这个标记所包含的内容将表示为纯文本,比如<![CDATA[<]]>表示文本内容“<”。 此标记用于xml文档中,我们先来看看使用转义符的情况。我们知道,在xml中,”<”、”>”、”&”等字符是不能直接存入的,否则xml语法检查时会报错,如果想在xml中使用这些符号,必须将其转义为实体,如”&lt;”、...转载 2019-01-30 18:08:36 · 5790 阅读 · 0 评论