mybatis主配置文件详解

<?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>

    <!--引入jdbc配置文件-->
    <properties resource="jdbcConfig.properties"/>

    <settings>
        <!--开启延迟加载-->
            <!--lazyLoadingEnabled:延迟加载的全局开关,开启时,所有关联对象都会延迟加载。如需立即加载,可通过设置fetchType属性覆盖该项的开关状态-->
            <setting name="lazyLoadingEnabled" value="true"/>
            <!--aggressiveLazyLoading:开启时,立即加载所有延迟加载属性;关闭时,每个延迟加载都会按需加载-->
            <setting name="aggressiveLazyLoading" value="false"/><!--此项可以不配,因为mybatis3.4.1之后默认为false-->
        
        <!--开启二级缓存:SqlSessionFactory级别的缓存-->
            <setting name="cacheEnabled" value="true"/><!--默认为true,所以可以不用配置-->
    </settings>

    <!--typeAliases:用于设置别名,只能配置domain包中得类-->
    <typeAliases>
        <!--设置别名后,mapper文件中就不需要再写全限定类名了-->
        <typeAlias type="com.domain.User" alias="user"/>
        <!--如果类太多,可以用package指定包,此种方式类名即别名,不再区分大小写-->
        <package name="com.domain"/>
    </typeAliases>

    <!--配置数据源,可以配置多个,用default来指定使用哪个数据源-->
    <environments default="test">
        <!--用于单个数据源的配置,id用于定义当前数据源的名称-->
        <environment id="mysql">
            <!--transactionManager:配置事务管理,一般使用jdbc管理-->
            <transactionManager type="JDBC"/>
            <!--dataSource:数据源的具体连接信息,
                    type的值有三个:
                        POOLED:使用连接池(最常用)
                        UNPOOLED:采用传统的获取连接的方式,没有池的思想
                        JNDI:采用服务器提供的JNDI技术实现
            -->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/eesy?useUnicode=true&amp;characterEncoding=utf-8"/>
                <property name="username" value="root"/>
                <property name="password" value="root"/>
            </dataSource>
        </environment>

        <environment id="test">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="${jdbc.driver}"/>
                <property name="url" value="${jdbc.url}"/>
                <property name="username" value="${jdbc.username}"/>
                <property name="password" value="${jdbc.password}"/>
            </dataSource>
        </environment>
    </environments>

    <!--告知mybatis映射配置的位置-->
    <mappers>
        <!--xml方式-->
        <mapper resource="com/dao/UserDao.xml"/>
        <mapper resource="com/dao/AccountDao.xml"/>
        <mapper resource="com/dao/RoleDao.xml"/>
        
        <!--注解方式-->
        <!--<mapper class="com.dao.RoleDao"/>-->
        
        <!--一劳永逸方式:指定dao接口所在的包,此方式需要接口名称和mapper文件名称保持一致-->
        <package name="com.dao"/>
    </mappers>
</configuration>

 

posted @ 2021-04-15 09:12  爱喝葡萄酒  阅读(94)  评论(0)    收藏  举报