zoukankan      html  css  js  c++  java
  • MyBatis数据持久化(五)数据源配置优化

    在前面的教程中,我们把数据库的驱动、用户名、密码等配置项全部写在 SqlMapConfig.xml中:

             <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/mybatis?characterEncoding=UTF8"/>
                <property name="username" value="root"/>
                <property name="password" value=""/>
            </dataSource>

    这并不是一种好的实践方式,比如我们的应用更换了数据库服务器,改用orcale数据库。这就需要我们对上面的配置项逐一修改,可维护性较差。
    一种更好的实践方式是把这些配置项写在一个properties文件中,然后在SqlMapConfig.xml文件中通过表达式引用这些配置属性即可。

    我们新建一个mysql.properties文件,内容如下:

    driver=com.mysql.jdbc.Driver
    url=jdbc:mysql://localhost:3306/mybatis?characterEncoding=UTF8
    username=root
    password=

    在SqlMapConfig.xml文件通过properties标签引入该属性文件,使用${属性名}方式引用mysql.properties中的属性值:

    <?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>
        <properties resource="mysql.properties">
        </properties>
        <!-- 自定义类型别名 -->
        <typeAliases>
            <typeAlias alias="user" type="com.mybatis.domain.User"/>
        </typeAliases>
    
        <environments default="development">
            <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>
        <mappers>
            <mapper resource="User.xml"/>
        </mappers>
    </configuration>

    当我们改用oracle数据库时,只需要新建一个oracle.properties,然后將properties标签的resource属性改为oracle.properties,像下面这个样子。

        <properties resource="oracle.properties">
        </properties>

    项目文件结构如下图:
    这里写图片描述

    博文源码:https://github.com/rongbo-j/mybatis-blog

  • 相关阅读:
    HDU 1789 Doing Homework again(馋)
    Understanding and Using HRMS Security in Oracle HRMS
    BZOJ 1003 ZJOI2006 物流运输trans 动态规划+SPFA
    oracle常规任务
    征服OA 飞鱼工作流程的在线培训课程(两)HTML形成基于
    《iOS8 Swift编程指南》类书图像
    js css 实现简单的计算器
    Android四个基本组件(2)之Service 服务与Content Provider内容提供商
    Unity UGUI——Rect Transform包裹(Anchor Presets)
    NYOJ 1076 计划数(公式 要么 递归)
  • 原文地址:https://www.cnblogs.com/lanzhi/p/6468729.html
Copyright © 2011-2022 走看看