MyBatis的XML配置文件(二)

这一节我们继续上一节的知识,笔者将向大家介绍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的参数,可以是关联到类的包,映射的可以被找到。






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Mybatis是一款优秀的持久层框架,其核心配置文件是用于配置Mybatis的各种参数以及SQL语句映射关系的xml文件。以下是一个简单的Mybatis核心配置文件xml的示例: ```xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <typeAliases> <typeAlias type="com.example.User" alias="User"/> </typeAliases> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/test"/> <property name="username" value="root"/> <property name="password" value="123456"/> </dataSource> </environment> </environments> <mappers> <mapper resource="com/example/UserMapper.xml"/> </mappers> </configuration> ``` 上述xml文件中主要包含以下三个部分: 1. **typeAliases**:用于为Java类型建立别名,可以简化后续的SQL语句映射操作。 2. **environments**:定义Mybatis使用的环境,包括事务管理器和数据源等。 3. **mappers**:定义映射文件,即SQL语句与Java方法的映射关系。在示例中,`UserMapper.xml`文件定义了SQL语句与Java接口的映射关系。 这是一个简单的Mybatis核心配置文件xml示例,实际应用中可能会更加复杂,需要根据具体情况进行配置。 ### 回答2: MyBatis核心配置文件是一个重要的配置文件,用于定义和配置MyBatis的全局属性和设置。 在MyBatis核心配置文件中,第一个标签是`<configuration>`,它是整个配置文件的根元素。在该标签中可以配置一些全局通用的设置,比如类型别名、插件等。可以使用`<typeAliases>`标签来定义别名,使得在Mapper映射文件中可以使用别名来代替类的全限定名。插件可以通过自定义拦截器来对SQL语句进行增强或自定义处理。 接下来是`<environments>`标签,用于配置MyBatis的数据库环境。在该标签中可以配置多个`<environment>`子标签,每个子标签代表一个数据库环境,包括数据库连接池、事务管理器等。可以通过`<transactionManager>`标签配置事务管理器,通过`<dataSource>`标签配置数据库连接池。 紧接着是`<mappers>`标签,用于配置Mapper映射器。可以使用`<mapper>`子标签来引入Mapper映射文件,可以配置多个`<mapper>`标签。在Mapper映射文件中定义了与数据库交互的SQL语句和对应的映射关系。 除了上述标签外,还有一些其他的全局配置,比如日志输出方式、延迟加载等。可以通过`<properties>`标签定义一些全局的配置属性,并通过`${}`引用这些属性。 总之,MyBatis核心配置文件MyBatis框架中的一个重要组成部分,通过配置文件,可以定义和配置一些全局的属性和设置,使得MyBatis能够正常运行并与数据库交互。 ### 回答3: Mybatis的核心配置文件是一个XML文件,用于配置与数据库相关的信息和Mybatis框架的各种功能。 首先,核心配置文件需要指定数据库的连接信息,包括数据库的URL、驱动程序类名、用户名和密码等。这些信息使得Mybatis能够和数据库建立连接,并执行SQL语句。 其次,核心配置文件还包括映射器(Mapper)的注册信息。映射器是一个用于定义数据库操作的接口,通过将接口与数据库的SQL语句进行映射,实现了Java方法和数据库操作的关联。核心配置文件会定义多个映射器的路径,用于告诉Mybatis在哪里可以找到这些映射器的定义。 另外,核心配置文件还可以配置一些全局属性和插件。全局属性可以被映射器中定义的SQL语句引用,用于动态地生成SQL语句。插件可以为Mybatis提供额外的功能,比如自定义拦截器、日志记录等。 在核心配置文件中,还可以定义数据库连接池的配置、缓存的配置、事务管理器的配置等。这些配置项可以根据实际需求进行调整,以满足特定的性能要求和业务需求。 总之,Mybatis的核心配置文件是一个重要的配置文件,用于定义数据库连接信息、映射器的路径和其他配置项。通过对核心配置文件配置,可以实现与数据库的连接、SQL语句的映射以及其他数据库相关的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值