码迷,mamicode.com
首页 > 其他好文 > 详细

Mybatis配置

时间:2019-10-03 11:03:38      阅读:96      评论:0      收藏:0      [点我收藏+]

标签:multiple   类型   name   java   lazyload   tin   变量   tip   hand   

配置概述

Mybatis配置并不复杂,但是配置项的顺序不能颠倒。

<?xml version="1.0" encoding="UTF-8"?>
<configuration><!--配置-->
    <properties/><!--属性-->
    <settings/><!--设置-->
    <typeAliases><!--类型别名-->
    <typeHandlers><!--类型处理器-->
    <objectFactory><!--对象工厂-->
    <plugins><!--插件-->
    <environments><!--配置环境-->
        <environment><!--环境变量-->
            <transactionManager/><!--事务管理器-->
            <dataSource/><!--数据源-->
        <environment>
    <environments>
    <databaseIdProvider/><!--数据库厂商标识-->
    <mappers/><!--映射器-->
</configuration>

properties属性

properties属性可以给系统配置一些运行参数,可放在XML文件或者properties文件中。
一、放在XML文件中

<!--定义-->
<properties/>
    <property name="database.driver" value="com.mysql.jdbc.Driver"/>
    <property name="database.username" value="root"/>
<properties/>
<!--使用-->
<dataSource type="POOLED">
    <property name="driver" value="${database.driver}" />
    <property name="username" value="${database.username}" />
 </dataSource>

二、放在properties文件中

##定义
database.driver=com.mysql.jdbc.Driver
database.username=root
<!--引入到XML-->
<properties resource="jdbc.properties"/>
<!--使用-->
<dataSource type="POOLED">
    <property name="driver" value="${database.driver}" />
    <property name="username" value="${database.username}" />
</dataSource>

三、真实的生产环境中,数据库的密码和用户名对于其他人员是保密的。

String resource = "mybatis_config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
// 解密配置文件
InputStream in = Resources.getResourceAsStream("jdbc.properties");
Properties props = new Properties();
props.load(in);
String userName = props.getProperty("database.username");
String password = props.getProperty("database.password");
props.put("database.username", CodeUtill.decode(userName));
props.put("database.password", CodeUtill.decode(password));
// 构建SqlSessionFactory工厂类,后面的明文将覆盖前面的密文。
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream, props);

setting设置

setting是Mybatis中最复杂的配置,它可以影响Mybatis底层的运行,大部分情况下使用默认便可。

<settings>
    <setting name="cacheEnabled" value="true"><!--缓存总开关-->
    <setting name="lazyLoadingEnable" value="false"><!--懒加载开关-->
    <setting name="aggressiveLazyLoading" value="true"><!--积极载开关-->
    <setting name="multipleResultSetsEnabled" value="true"/><!--单一语句返回多结果集-->
</settings>

Mybatis配置

标签:multiple   类型   name   java   lazyload   tin   变量   tip   hand   

原文地址:https://www.cnblogs.com/feiqiangsheng/p/11619108.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!