@column注解_MyBatis 中常用的注解和运行原理

v2-a232bd2a34ed7d93d335dad29392f0e2_1440w.jpg?source=172ae18b

1. 注解开发

a)注解是用于描述代码的代码. 例如: @Test(用于描述方法

进行 junit测试), @Override(用于描述方法的重写),

@Param(用于描述属性的名称)

b)注解的使用风格: @xxx(属性), 使用前必须先导包

c)使用注解一般用于简化配置文件. 但是, 注解有时候也不

是很友好(有时候反而更麻烦), 例如动态 SQL.

d)关于注解的属性

Ø 属性的设定方式是: 属性名=属性值

e)关于属性值的类型

Ø 基本类型和 String, 可以直接使用双引号的形式

Ø 数组类型, name={值 1, 值 2, ...}; 如果数组元素只有

一个, 可以省略大括号

Ø 对象类型, name=@对象名(属性)

Ø 如果属性是该注解的默认属性, 而且该注解只配置这

一个属性, 可以将属性名省略

f)注解和配置文件可以配合使用

1. MyBatis 中常用的注解

1.1 CRUD 注解

@Select: 类似于<select>

@Insert: 类似于<insert>

@Update: 类似于<update>

@Delete: 类似于<delete>

package 

1. MyBatis 中常用的注解

1.2 其他注解

@Results: 类似于<resultMap>

@Result: 类似于<resultMap>的子标签

@One: 类似于<association>

@Many: 类似于<collection>

public 

1. MyBatis 运行原理
1.1 运行过程中涉及到的类或接口
1.1.1 Resources(C)
用于加载 MyBatis核心配置文件
1.1.2 XMLConfigBuilder(C)
用于解析 xml文件(核心配置文件)
1.1.3 Configuration(C)
用于存放 xml文件解析后的结果
1.1.4 DefaultSqlSessionFactory(C)
是 SqlSessionFactory(I)的 实 现 类 , 创 建 时 需 要 使 用
Configuration对象
1.1.5 SqlSession(I)
是 MyBatis操作的核心
1.1.6 DefaultSqlSession(C)
是 SqlSession接口的实现类

1.1.7 TransactionFactory(I)
用于生产 Transaction对象
1.1.8 Transaction(I)
用于表示操作数据库的事务对象
1.1.9 Executor(I)
是 MyBatis的核心执行器, 类似于 jdbc中的 Statement, 常
用的实现类是 SimpleExecutor
1.2 文字描述
当 MyBatis运行开始时, 先要通过 Resources加载核心
配置文件, 之后使用 XMLConfigBuilder对配置文件进行解
析, 将解析结果封装为 Configuration对象, 接着, 使用
Configuration对象构建一个 DefaultSqlSessionFactory对
象, 至此, SqlSession工厂构建完成.
接下来, 通过工厂对象调用 openSession方法创建
SqlSession对 象 . 在 这 个 过 程 中 , 需 要 通 过
TransactionFactory生成 Transaction对象, 并且, 还需要
创建核心执行器 Executor对象, 之后, 通过这些对象来创
建 DefaultSqlSession对象, 至此, SqlSession对象创建成

功.

之后, 通过 SqlSession对象执行相应的操作, 如果执

行成功, 调用 commit方法提交事务; 如果失败, 调用

rollback方 法 事 务 回 滚 . 最 后 , 调 用 close方 法 关 闭

session资源. 以上, 就是 MyBatis的运行原理.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值