这一节我们继续上一节的知识,笔者将向大家介绍TransactionManager、Propertis、setting和Mappers的参数

1. TransactionManager参数

MyBatis提供了两个TransactionManager的types:JDBC和MANAGED。

1)        TransactionManager的types为JDBC时,那么应用程序就负责管理连接的生命周期,如commit(提交)、rollback(回滚)等。当你设置TransdactionManagetr的属性为JDBC时,底层的场景就是MyBatis去使用JdbcTransactionFactory的类,去创建TransactionManager。例如,一个应用程序使用Apache的Tomcat,那么需要它自己去管理事务。

2)        当应用程序服务负责管理连接的生命周期时,我们就会使用MANAGED的事务管理。当你设置TransactionManager的属性为MANAGED,MyBatis的底层会去调用ManagedTransactionFactory的类去创建TransactionManager。例如,一个JavaEE的应用程序依赖于申请的服务,像JBoss、WebLogic或GlasFish,可以使用EJB来进行事务管理。在事务管理的环境中,你可以使用MANAGED的事务来管理。

2. Properties的参数

properties的配置参数可以使用外部的配置信息,然后加载进来。我的意思就是说,我们在前定义了个application.properties的文件,里面定义的形式就是key-value的格式。这样的我们在mybatis-config.xml的文件的Properties的值,可以引用 application.properties的值。

1)        在application.properties的文件中配置数据库连接的参数。

 jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mybatisdemo
jdbc.username=root
jdbc.password=admin

2)        在mybatis-config.xml的文件中,使用占位符来配置。

<properties resource="application.properties">
<property name="jdbc.username" value="db_user"/>
<property name="jdbc.password" value="verysecurepwd"/>
</properties>
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driverClassName}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</dataSource>

就如上面的所看到的,我们又重新给username和password设值了,如果你不需要重新设值,那么就直接写:<properties resource="application.properties"/>就可以了。

3. Settings的参数

如果我们配置了下面的信息,那么Mybatis的相关属性就不在是默认的,而是会被覆盖,使用我们自己配置的信息。

<settings>
<setting name="cacheEnabled" value="true"/>
<setting name="lazyLoadingEnabled" value="true"/>
<setting name="multipleResultSetsEnabled" value="true"/>
<setting name="useColumnLabel" value="true"/>
<setting name="useGeneratedKeys" value="false"/>
<setting name="autoMappingBehavior" value="PARTIAL"/>
<setting name="defaultExecutorType" value="SIMPLE"/>
<setting name="defaultStatementTimeout" value="25000"/>
<setting name="safeRowBoundsEnabled" value="false"/>
<setting name="mapUnderscoreToCamelCase" value="false"/>
<setting name="localCacheScope" value="SESSION"/>
<setting name="jdbcTypeForNull" value="OTHER"/>
<setting name="lazyLoadTriggerMethods" value="equals,clone,hashCode
,toString"/>
</settings>

4. Mappers的参数

Mapper XML的文件包含了映射的SQL的声明,这些SQL的语言将会被执行,通过staterment的id.如果是本地的xml文件,那么我们需要写出绝对路径,同时,我们需要在mybatis-config.xml的文件配置。

<mappers>
<mapper resource="com/owen/mybatis/mappers/StudentMapper.xml"/>
<mapper url="file:///D:/mybatisdemo/app/mappers/TutorMapper.xml"/>
<mapper class="com.owen.mybatis.mappers.TutorMapper"/>
<package name="com.owen.mybatis.mappers"/>
</mappers>

上面的代码中,第一个不同的<mapper>的标签,我们都使用不同的定义,有resource、url、class、package的。

1)        resource的属性连接着每一个映射的文件,这个文件是放在类路径下的。

2)        url的路径是连接着映射文件通过我们系统的绝对路径或web的URL。

3)        class的属性就是关联着映射类的接口。

4)        package的参数,可以是关联到类的包,映射的可以被找到。

MyBatis的XML配置文件(二)相关推荐

  1. 解决eclipse中mybatis的xml配置文件无代码提示问题

    解决eclipse中mybatis的xml配置文件无代码提示问题 参考文章: (1)解决eclipse中mybatis的xml配置文件无代码提示问题 (2)https://www.cnblogs.co ...

  2. mybatis基于XML(二)

    1.创建MySQL数据库:mybatisDemo和表:user 2.建立一个Java工程,并导入相应的jar包,具体目录如下 3.在 MyBatisTest 工程中添加数据库配置文件 mybatis- ...

  3. eclipse中hibernate和mybatis中xml配置文件的没有标签提醒解决方法

    当我们使用eclipse编写Mybatis或hibernate的xml文件时,面对众多标签的配置文件,却没有自动提醒,对于工作和学习都十分不方便. 之所以没有自动提醒,是因为dtd文件没有加载成功. ...

  4. intellij idea中设置mybatis的xml配置文件的背景色

    点击这里查看 <intellij idea使用教程汇总篇> 场景:在idea中打开mybatis的配置文件××Mapper.xml,打开后黄压压的一大片,背景色是真的不太友好,如下图所示: ...

  5. Spring实现热加载MyBatis 的XML配置文件

    为什么80%的码农都做不了架构师?>>>    package com.myapp.util;import java.io.IOException; import java.lang ...

  6. struts.xml配置文件(二)

    1,命名空间配置 java语言为了避免同名java类的冲突,可以使用包,struts2也存在同名的Action问题,但是struts用命名空间区分同名Action 命名空间的配置格式如下: <p ...

  7. 关于Mybatis的xml配置文件中使用and与or混合查询

    <!-- 该语句结合and or 来查询 是否是老年或者儿童 --><select id="selectCount" resultType="java. ...

  8. SpringBoot 精通系列-如何优雅地使用Mybatis的XML配置

    导语   首先Mybatis作为如今最为流行的ORM框架之一,那么首先需要了解的就是什么是ORM框架. 文章目录 ORM框架 为什么需要ORM这种技术呢? Mybatis简介 Mybatis的几个重要 ...

  9. mysql+xml+注释,springboot整合mybatis完整示例, mapper注解方式和xml配置文件方式实现(我们要优雅地编程)...

    一.注解方式 pom org.mybatis.spring.boot mybatis-spring-boot-starter 2.0.0 mysql mysql-connector-java org. ...

  10. MyBatis框架基于XML配置文件开发

    MyBatis框架基于XML配置文件开发 本文内容涉及MyBatis框架开发的传参,多表查询,结果封装: 说明: 当前使用的是mysql数据库, 测试在maven工程下: 数据库表: book表: k ...

最新文章

  1. 【阿里Q3财报:阿里云去年营收破百亿,亚洲市场遥遥领先】
  2. 分享几个路由器设置小技巧,总有用得到的一天!
  3. [2021-07-19 内测NOIP] 操作(状压DP),异或(字典树),等级(线段树),矩阵(DP)
  4. Minor GC和Full GC
  5. Visual Studio 2017 通过SSH 调试Linux 上.NET Core
  6. 母版页的铵钮事件去获取子页的内容
  7. 05 库的简单操作
  8. c语言谭浩强简介,大一C语言谭浩强总结(到数组)简介.ppt
  9. 论文笔记:Multilingual Multimodal Pre-training for Zero-Shot Cross-Lingual Transfer of Vision-Language Mo
  10. 多空对比(DKDB)指标
  11. Elasticsearch优化原理
  12. Android封装含有通用标题栏的基类BaseActivity
  13. 怎么看计算机内存和独显,电脑独立显卡或集成显卡的显存大小怎么查看?
  14. Python的模式匹配
  15. Spring技术内幕
  16. 存钱罐小程序_一罐来统治所有人
  17. 8820c自动化测试软件,8820C LTE测试操作手册
  18. 神州数码易拓TIPTOP ERP查询作业模板-2个单头并排2个单身维护作业
  19. ENDC NEDC NGEN-DC是什么
  20. 基于图特征混合学习的功能网络组织动力学

热门文章

  1. winfrom 窗口起始位置为屏幕中央
  2. strstr 可以用来查找子字符串的位置
  3. 成功激活windows server 2008 sp2!
  4. 扩展卡尔曼滤波器设计
  5. HCIE-Security Day21:GRE协议:实验(二)配置基于OSPF的GRE隧道
  6. Redis高并发1-redis环境搭建
  7. openstack 云主机关机:ournal: End of file while reading data: Input/output error
  8. 盘点欧洲五大智慧城市典范
  9. C#设计模式之简单工厂模式
  10. 贫血模式or领域模式(转载)