本文更新日期:2019年11月16日我谈一下如何去学习《趣谈shell》,主要有四点:(1)我认为:做事情要有热情,并且需要在平淡中能长久地保持热情,所以对待《趣谈shell》要保持长久的热情。如果让我隔上十天半个月不看《趣谈Shell》,我会有点疑惑:这东西怎么能卖钱呢,感觉也没有讲了什么东西。可是,当我翻开它的时候,我发现里面真的有很多干货。我个人...

Java程序员面对的最痛苦的事情之一就是在Java代码中嵌入SQL语句。由于SQL语句需要动态来生成,否则可以将它们放到外部文件或者存储过程中。虽然MyBatis的XML映射文件中有一个强大的动态SQL生成方案,但有时在Java代码内部创建SQL语句也是必要的。此时,MyBatis有另外一个特性可以帮到你,可以减少诸如加号、引号和嵌入条件等SQL硬拼接...

学习和研究mybatis框架,我一般会参考mybatis中文文档,这是mybatis官方维护的一份指导学习文档,具有权威性:https://mybatis.org/mybatis-3/zh/index.html此文档开头会标明mybatis当前最新版本号:mybatis中文文档分为以下几个部分:XML配置:https://mybatis.org/myb...

1、数据结构和算法学习的疑惑很多人感觉,学习数据结构和算法并没有多少用,在实际工作中用的机会很少,只是在面试中被考到而已。我并不想纠正这种想法,因为我觉得它是合理的。如果你仅仅学习大学的教材《数据结构》,犹如你只学习了几个单词,你想完成一篇作文,那自然是不可行的。你需要补充其他的资料,把对“算法”这个事物的认识扩大起来,这个时候你会发现算法其实用处很大...

mybatis版本不断迭代,与之对应的是并没有什么经典书籍,最经典的莫过于官方的指导文档。相对来说,下面这些书籍对mybatis的入门会有帮助的,算是比较好的书籍。感兴趣的人不妨找来电子书读一读。1、Java EE互联网轻量级框架整合开发,出版时间:2017-07-012、Spring+Spring MVC+MyBatis框架技术精讲与整合案例,出版时...

mybatis依赖的jar非常少,主要有两个:(1)mybatis自身jar,它就只有一个jar包构成,不像spring,有那么一大堆。在早期的版本,mybatis还需要依赖javassist jar(实现动态代理),ognl jar(实现动态sql),而今mybatis已经将javassist和ognl融入了进来,全部整合到mybatis内部,所以目...

1、什么是 MyBatis-Spring?MyBatis-Spring 会帮助你将 MyBatis 代码无缝地整合到 Spring 中。它将允许 MyBatis 参与到 Spring 的事务管理之中,创建映射器 mapper 和 SqlSession 并注入到 bean 中,以及将 Mybatis 的异常转换为 Spring 的 DataAccessE...

MyBatis是一个优秀的持久层框架,它对JDBC的操作数据库的过程进行封装。在《 MyBatis学习建议 》里面提到了,入门阶段需要结合JDBC知识,以加深理解MyBatis的工作原理和核心类库。所以,本文在主要内容是围绕JDBC展开的。JDBC是连接数据库和Java程序的桥梁,通过JDBC API可以方便地实现对各种主流数据库的操作。1、什么是JD...

ORM是Object和Relation之间的映射,包括Object->Relation和Relation->Object两方面。Hibernate是个完整的ORM框架,而MyBatis完成的是Relation->Object,也就是其所说的Data Mapper Framework。JPA是ORM框架标准,主流的ORM框架都实现了这个...

1、什么是事务事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做。事务可大可小,在关系数据库中,一个事务可以是一条SQL语句,一组SQL语句或整个程序。2、MyBatis事务管理策略MyBatis的事务管理分为两种形式:(1)使用JDBC的事务管理机制。这种机制就是利用java.sql.Connection对象完成对事务的提交(2)使...

计算机有两大基本的功能:计算和存储。在存储方面,缓存的设计和实现也是一门学问。这门学问里面包含什么门道呢?不妨研究一下MyBatis缓存类PerpetualCache,一定会大有收获的。在MyBatis里面,存在一个PerpetualCache,它是一级缓存、二级缓存的最基本实现,但PerpetualCache只不过包装了一下HashMap。Perpe...

MyBatis生态强大,更新频繁,足见其生命力非常旺盛。刚刚进行了新版本的发布,MyBatis 3.5.3 发布。在ORM领域,MyBatis是当之无愧的王者。MyBatis首创了SQL映射和ResultSet映射的设计思想,给行业发展指明了方向,历经时间的考验,面对各种后起之秀的挑战,依然笑傲江湖,它是软件工程史上的奇迹。1、MyBatis 3.5....

对于mybatis的缓存,我们往往有这样两个疑问:一级缓存、二级缓存的过期时间是多少?后台是否有个线程在检测?针对这两个问题,见下面的分析:1、一级缓存无过期时间,只有生命周期(1)MyBatis在开启一个数据库会话时,会创建一个新的SqlSession对象,SqlSession对象中会有一个Executor对象,Executor对象中持有一个Perp...

mybatis框架是java web开发必备的框架,很多mybatis新手写代码的时候,需要在sql中使用到大于等于,这时候如果像sql中一样直接使用了>、<、>=、<=,在运行的时候于是就出现了一些意想不到的错误,为什么会出现这种情况呢?其实,跟sql注入的道理一样,sql中的>、<、>=、<=与myb...

MyBatis源码采用了若干设计模式,在所有的设计模式中,关于“对象生成”类型的设计模式往往至关重要。生老病死嘛,生是第一位的。本文主要讲述一下产生MyBatis二级缓存的Builder设计模式。MyBatis二级缓存的产生过程当我们配置二级缓存的时候,是这样设置的:<cache eviction="FIFO" flushIn...