
Mybatis
爱为斯坦
这个作者很懒,什么都没留下…
展开
-
Mybatis缓存(超细节)
像大多数的持久化框架一样,Mybatis 也提供了缓存策略,通过缓存策略来减少数据库的查询次数,从而提高性能。Mybatis 中缓存分为一级缓存,二级缓存。Mybatis 一级缓存一级缓存是 SqlSession 级别的缓存,只要 SqlSession 没有 flush 或 close,它就存在。编写用户持久层 Dao 接口public interface IUserDao {/**...原创 2020-04-11 23:01:03 · 262 阅读 · 0 评论 -
Mybatis——延迟加载(超细节)
何为延迟加载?延迟加载:就是在需要用到数据时才进行加载,不需要用到数据时就不加载数据。延迟加载也称懒载.好处:先从单表查询,需要时再从关联表去关联查询,大大提高数据库性能,因为查询单表要比关联查询多张表速度要快。坏处:因为只有当需要用到数据时,才会进行数据库查询,这样在大批量数据查询时,因为查询工作也要消耗时间,所以可能造成用户等待时间变长,造成用户体验下降。使用 assocation...原创 2020-04-11 22:43:22 · 209 阅读 · 0 评论 -
Mybatis链接池与事务
mybatis将数据源基本分为三种:在这三种数据源中,我们一般采用的是 POOLED 数据源(很多时候我们所说的数据源就是为了更好的管理数据库连接,也就是我们所说的连接池技术)。Mybatis 中数据源的配置:我们的数据源配置就是在 SqlMapConfig.xml 文件中,具体配置如下:<!-- 配置数据源(连接池)信息 --><dataSource type="P...原创 2020-04-11 15:15:18 · 128 阅读 · 0 评论 -
Mybatis动态SQL语句(超细节)
动态 SQL 之标签我们根据实体类的不同取值,使用不同的 SQL 语句来进行查询。比如在 id 如果不为空时可以根据 id 查询,如果 username 不同空时还要加入用户名作为条件。这种情况在我们的多条件组合查询中经常会碰到。<select id="findByUser" resultType="user" parameterType="user">select * from...原创 2020-04-11 15:33:25 · 194 阅读 · 0 评论 -
Mybatis——多表查询(一对多,多对多)
Mybatis 多表查询之一对多一对一查询(多对一):需求查询所有账户信息,关联查询下单用户信息。注意:因为一个账户信息只能供某个用户使用,所以从查询账户信息出发关联查询用户信息为一对一查询。如果从用户信息出发查询用户下的账户信息则为一对多查询,因为一个用户可以有多个账户。*方式一: 定义账户信息的实体类public class Account implements Serial...原创 2020-04-11 16:28:50 · 1206 阅读 · 0 评论 -
mybatis 的常用注解说明(超级细节)
@Insert:实现新增@Update:实现更新@Delete:实现删除@Select:实现查询@Result:实现结果集封装@Results:可以与@Result 一起使用,封装多个结果集@ResultMap:实现引用@Results 定义的封装@One:实现一对一结果集封装@Many:实现一对多结果集封装@SelectProvider: 实现动态 SQL 映射@CacheN...原创 2020-04-12 00:30:24 · 877 阅读 · 0 评论