摘要: 事务事务是由一步或者几步数据库操作序列组成的逻辑执行单元,这个系列要么全部执行,要么全部放弃执行。一般而言,程序中可以包含多个事务。事务是保证底层数据完整的重要手段。事务的特点:1、原子性:事务是应用中不可再分的最小的逻辑执行单体。2、一致性:事务的执行结果必须让数据... 阅读全文
posted @ 2018-05-27 00:03 惶者 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 扩展一个简单的实现 @Intercepts({ @Signature(type = StatementHandler.class,method = "parameterize",args = java.sql.Statement.class)})publ... 阅读全文
posted @ 2018-05-27 00:01 惶者 阅读(603) 评论(0) 推荐(0) 编辑
摘要: 插件原理 * 在四大对象创建的时候 * 1、每个创建出来的对象不是直接返回的,而是 * interceptorChain.pluginAll( parameterHandler ) * * 2、获取到所有的inter... 阅读全文
posted @ 2018-05-26 11:10 惶者 阅读(354) 评论(0) 推荐(0) 编辑
摘要: mybatis运行原理图:mybatis运行流程:public SqlSession getSession() throws IOException { /** * 1、根据xml配置文件(全局配置文件),创建一个sqlSessionFactory对象 ... 阅读全文
posted @ 2018-05-24 23:22 惶者 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 正向:数据库——》javaBean实体类、mapper接口、xml文件逆向:根据数据库的表mybatis可以逆向分析出这张表,然后根据这张表创建出对应的JavaBean实体类、对应的增删改查接口、mapper文件(代码生成器)Mybatis Generator一个专门... 阅读全文
posted @ 2018-05-24 23:22 惶者 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 目录结构1、相关依赖 org.springframework spring 2.5.6 org.springframework spring-context ... 阅读全文
posted @ 2018-05-24 23:22 惶者 阅读(154) 评论(0) 推荐(0) 编辑
摘要: Mybatis系统中默认定义了两级缓存。一级缓存和二级缓存 1、默认情况下只有一级缓存(SqlSession级别的缓存,也称为本地缓存)开启2、二级缓存需要手动开启和配置,它是基于namespace级别的缓存3、为了提高扩展性。Mybatis定义了缓存借口Cache,... 阅读全文
posted @ 2018-05-24 23:22 惶者 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 动态SQL1、if/where标签来将所有查询条件包括, mybatis就会将where标签中拼装的sql多出来的and或者or去掉 where只会去掉第一个多出来的and或者or-->2、trim自定义字符串截取规则标签不能解决拼接的问题trim:自定义... 阅读全文
posted @ 2018-05-21 18:18 惶者 阅读(129) 评论(0) 推荐(0) 编辑
摘要: Select元素id:唯一标识符parameterType:参数类型resultType:返回值类型返回一条记录的map:key就是列名,值就是对应的值多条记录封装一个map:Map:键是这条记录的主键,值是封装后的javaBean//多条记录封装一个map:Map:... 阅读全文
posted @ 2018-05-21 18:17 惶者 阅读(132) 评论(0) 推荐(0) 编辑
摘要: mybatis映射文件——增删改查public interface EmployeeMapper { Employee selectById(Integer id); void addEmp(Employee employee); void upda... 阅读全文
posted @ 2018-05-21 18:17 惶者 阅读(135) 评论(0) 推荐(0) 编辑