Java教程

Mybatis的配置

本文主要是介绍Mybatis的配置,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Mybatis配置解析

  • 在mybatis-config.xml 里面进行配置

  • 所有能配置的内容如下

configuration(配置) 
	properties(属性) 
	settings(设置) 
	typeAliases(类型别名) 
	typeHandlers(类型处理器) 
	objectFactory(对象工厂) 
	plugins(插件) 
	environments(环境配置) 
		environment(环境变量) 
			transactionManager(事务管理器) 
			dataSource(数据源) 
	databaseIdProvider(数据库厂商标识) 
	mappers(映射器) 
	<!-- 注意元素节点的顺序!顺序不对会报错 -->

常用配置:

1.configuration

<!--配置环境(可以配置多套环境,可以指定选用的环境)-->
<environments default="development">
    <!--配置mysql的环境-->
    <environment id="development">
        <!--配置事务的类型-->
        <transactionManager type="JDBC"/>
        <!--配置数据源(连接池)-->
        <dataSource type="POOLED">
            <!--配置连接数据库的基本信息-->
            <property name="driver" value="${driver}"/>
            <property name="url" value="${url}"/>
            <property name="username" value="${username}"/>
            <property name="password" value="${password}"/>
        </dataSource>
    </environment>
</environments>
  • 配置MyBatis的多套运行环境,将SQL映射到多个不同的数据库上,必须指定其中一个为默认运行环境(通过default指定)
  • 子元素节点:transactionManager事务管理器,有两种分别是JDBCMANAGED
  • 子元素节点:dataSource数据源有三种类型,分别是如下
    • unpooled:这个数据源的实现只是每次被请求时打开和关闭连接。
    • pooled:这种数据源的实现利用“池”的概念将 JDBC 连接对象组织起来 , 这是一种使得并发 Web 应用快速响应请求的流行处理方式
    • jndi:这个数据源的实现是为了能在如 Spring 或应用服务器这类容器中使用,容器可以集中或在外部配置数据源,然后放置一个 JNDI 上下文的引用。
    • 数据源也有很多第三方的实现,比如dbcp,c3po,druid等等

2.mappers

引入资源方式:

<!-- 使用相对于类路径的资源引用 --> 
<mappers> 
    <mapper resource="org/mybatis/builder/PostMapper.xml"/>
</mappers>
<!-- 使用完全限定资源定位符(URL) --> 
<mappers> 
    <mapper url="file:///var/mappers/AuthorMapper.xml"/> 
<mappers>    
<!-- 使用映射器接口实现类的完全限定类名 需要配置文件名称和接口名称一致,并且位于同一目录下 --> 
<mappers> 
    <mapper class="org.mybatis.builder.AuthorMapper"/>
</mappers>
<!-- 将包内的映射器接口实现全部注册为映射器 但是需要配置文件名称和接口名称一致,并且位于同一目录下 --> 
<mappers> 
    <package name="org.mybatis.builder"/> 
</mappers>

3.properties

数据库的属性是可以动态替换的,所以我们可以用properties文件来传递属性

  • 在resources目录下新建一个db.properties文件

    driver = com.mysql.cj.jdbc.Driver
    url = jdbc:mysql://localhost:3306/mybatiserverTimezone=UTC
    username = root
    password = root
    
  • 在配置文件中导入properties(配置文件是有顺序的)

    <configuration>
        <!--引入db.properties资源文件-->
        <properties resource="db.properties"/>
        <!--配置环境(可以配置多套环境,可以指定选用的环境)-->
        <environments default="development">
            <!--配置mysql的环境-->
            <environment id="development">
                <!--配置事务的类型-->
                <transactionManager type="JDBC"/>
                <!--配置数据源(连接池)-->
                <dataSource type="POOLED">
                    <!--配置连接数据库的基本信息-->
                    <property name="driver" value="${driver}"/>
                    <property name="url" value="${url}"/>
                    <property name="username" value="${username}"/>
                    <property name="password" value="${password}"/>
                </dataSource>
            </environment>
        </environments>
    </configuration>
    

4.typeAliases

设置别名,我们可以在mapper文件中不用写那么长的全限类名了

<!--配置别名,注意顺序--> 
<typeAliases> 
	<typeAlias type="com.kuang.pojo.User" alias="User"/> </typeAliases>

注解的方式:类的首字母小写

@Alias("user") 
public class User {
    ...
}
这篇关于Mybatis的配置的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!