MyBatis3中文用户指南
"Mtbatis3中文开发手册" MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。 在MyBatis3的用户指南中,我们可以了解到如何开始使用MyBatis。首先,我们需要构建`SqlSessionFactory`,它是MyBatis的核心,负责创建`SqlSession`对象。有两种方式创建`SqlSessionFactory`:通过XML配置文件或不使用XML的方式。 1. **从XML中构建SqlSessionFactory**:这是传统的配置方式,XML配置文件通常包含了数据库连接信息、映射文件位置等。通过`SqlSessionFactoryBuilder`,我们可以使用`SqlSessionFactoryBuilder.build()`方法来创建`SqlSessionFactory`。 2. **不使用XML构建SqlSessionFactory**:在不使用XML的情况下,MyBatis提供了基于Java的配置,可以在代码中直接定义`Configuration`对象,然后使用`SqlSessionFactoryBuilder.build()`方法创建`SqlSessionFactory`。 一旦有了`SqlSessionFactory`,就可以获取`SqlSession`。`SqlSession`是MyBatis的主要工作接口,用于执行SQL操作。从`SqlSessionFactory`调用`openSession()`方法即可创建`SqlSession`。 接下来,我们关注映射的SQL语句。MyBatis允许在映射文件中定义SQL语句,这些语句可以通过命名空间来区分。每个映射文件对应一个命名空间,命名空间的目的是为了避免SQL语句冲突。 - **命名空间的一点注释**:命名空间通常与Java接口关联,每个接口方法对应一个映射的SQL语句。 MyBatis的配置文件中包含了许多重要的元素: - **properties**:允许外部化配置,如数据库连接字符串,可以从properties文件中加载。 - **settings**:全局配置,例如缓存、延迟加载等。 - **typeAliases**:类型别名,简化Java类全限定名的引用。 - **typeHandlers**:类型处理器,用于处理Java类型到JDBC类型的转换。 - **objectFactory**:对象工厂,自定义对象创建方式。 - **plugins**:插件,可以拦截SqlSession和Executor等,实现AOP功能。 - **environments**:环境配置,包括事务管理器和数据源。 - **transactionManager**:事务管理器,例如JDBC或MANAGED(容器管理)。 XML映射配置文件中还包括了各种元素,比如: - **select**、**insert**、**update**、**delete**:定义SQL查询、插入、更新和删除操作。 - **resultMap**:结果映射,用于描述如何将数据库结果映射到Java对象。 - **parameterMap**(在MyBatis3中已废弃):参数映射,用于指定输入参数的映射关系。 在实际开发中,MyBatis提供了强大的动态SQL功能,使得开发者可以根据业务需求灵活地编写SQL。通过使用`<if>`、`<choose>`(类似switch语句)、`<when>`、`<otherwise>`、`<where>`、`<set>`等标签,可以轻松实现条件判断和拼接SQL语句。 MyBatis3中文开发手册为开发者提供了详尽的指南,涵盖了从安装、配置到实际使用的各个方面,是学习和掌握MyBatis的宝贵资料。通过阅读和实践,开发者能够更好地理解和运用MyBatis,提升项目开发的效率和质量。
![](https://csdnimg.cn/release/download_crawler_static/10677785/bga.jpg)
![](https://csdnimg.cn/release/download_crawler_static/10677785/bgb.jpg)
![](https://csdnimg.cn/release/download_crawler_static/10677785/bgc.jpg)
剩余56页未读,继续阅读
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![xlsx](https://img-home.csdnimg.cn/images/20210720083732.png)
![whl](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![whl](https://img-home.csdnimg.cn/images/20210720083646.png)
![whl](https://img-home.csdnimg.cn/images/20210720083646.png)
![whl](https://img-home.csdnimg.cn/images/20210720083646.png)
![whl](https://img-home.csdnimg.cn/images/20210720083646.png)
![whl](https://img-home.csdnimg.cn/images/20210720083646.png)
![whl](https://img-home.csdnimg.cn/images/20210720083646.png)
![whl](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://profile-avatar.csdnimg.cn/5f16da42641749bab789015766f368a3_shelleylittlehero.jpg!1)
- 粉丝: 111
- 资源: 23
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- Vue实现iOS原生Picker组件:详细解析与实现思路
- Arduino蓝牙小车:参数调试与功能控制
- 百度Java面试精华:200页精选资源涵盖核心知识点
- Swift使用CoreData填坑指南:CoreData在Swift 3.0的变化
- 微距离无线充电器创新设计及其实验探索
- MTK Android平台开发全攻略:44步详解流程
- RecyclerView全面解析:替代ListView的新选择
- Android开发:自动适配中英文键盘解决方案
- Android调用WebService接口教程
- Android开发:BitmapUtil图片处理全解析与实例
- Android多线程断点续传实现详解
- PCA算法在人脸识别会议签到系统中的应用
- EventBus 3.0:Android事件总线详解与实战应用
- Android FileUtil:全面解析文件操作实用技巧与实例
- RecyclerView添加头部和尾部实战教程
- Android实现微博滑动固定顶部栏实战与优化
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)