@column注解_Mybatis 注解开发

这几年来注解开发越来越流行,Mybatis 也可以使用注解开发方式,这样我们就可以减少编写 Mapper 映射 文件了。本次我们先围绕一些基本的 CRUD 来学习,再学习复杂映射关系及延迟加载。

3.1 mybatis 的常用注解说明

@Insert

3.2 使用 Mybatis 注解实现基本 CRUD

单表的 CRUD 操作是最基本的操作,前面我们的学习都是基于 Mybaits 的映射文件来实现的。

3.2.1 编写实体类

package 

注意: 此处我们故意和数据库表的列名不一致。

3.2.2 使用注解方式开发持久层接口

3.2.2 使用注解方式开发持久层接口

008c67208504450a4c45b58daeaa50ad.png

完整的DAO类

public 

3.2.3 编写 SqlMapConfig 配置文件

<?xml version="1.0" encoding="UTF-8"?>

5991acbb0a7d308afdb3551214246a5c.png

3.2.4 编写测试方法

@Test
    

3.3 使用注解实现复杂关系映射开发

实现复杂关系映射之前我们可以在映射文件中通过配置<resultMap>来实现,在使用注解开发时我们需要借 助@Results 注解,@Result 注解,@One 注解,@Many 注解。

3.3.1 复杂关系映射的注解说明

@

3.3.2 使用注解实现一对一复杂关系映射及延迟加载

需求: 加载账户信息时并且加载该账户的用户信息,根据情况可实现延迟加载。(注解方式实现)

3.3.2.1 添加 User 实体类及 Account 实体类

public 
public 

3.3.2.2 添加账户的持久层接口并使用注解配置

public 

3.3.2.3 添加用户的持久层接口并使用注解配置

@CacheNamespace

3.3.2.4 测试一对一关联及延迟加载

@Test

3.3.3 使用注解实现一对多复杂关系映射

需求: 查询用户信息时,也要查询他的账户列表。使用注解方式实现。 分析: 一个用户具有多个账户信息,所以形成了用户(User)与账户(Account)之间的一对多关系。

3.3.3.1 User 实体类加入 List<Account>

//一对多关系映射:一个用户对应多个账户

3.3.3.2 编写用户的持久层接口并使用注解配置

@CacheNamespace
@Many

3.3.3.3 编写账户的持久层接口并使用注解配置

/**

3.3.3.4 添加测试方法

/** 

3.4 mybatis 基于注解的二级缓存

3.4.1 在 SqlMapConfig 中开启二级缓存支持

<!-- 配置二级缓存 --> 

3.4.2 在持久层接口中使用注解配置二级缓存

7e867d818422c4cbe00544237312f51a.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值