• 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>
    
        <!-- 设置一个默认的连接环境信息 -->
        <environments default="mysql_developer">
            <environment id="mysql_developer">
                <!-- mybatis使用jdbc事务管理方式 -->
                <transactionManager type="JDBC"></transactionManager>
                <!-- mybatis使用连接池方式来获取连接 -->
                <dataSource type="POOLED">
                    <!-- 配置与数据库交互的4个必要属性,不要直接写,单独写在一个配置文件中 -->
                    <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                    <property name="url" value="jdbc:mysql://127.0.0.1:3306/test?serverTimezone=UTC"/>
                    <property name="username" value="root"/>
                    <property name="password" value="123456"/>
                </dataSource>
            </environment>
        </environments>
    
        <!-- 加载映射文件-->
        <mappers>
            <mapper resource="config/Message.xml"/>
        </mappers>
    
    </configuration>
    

    dtd提示

    我们的Mybatis配置文件头部是这样的,可以看到下面有一个dtd的约束

    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE mapper PUBLIC
            "-//mybatis.org//DTD Mapper 3.0//EN"
            "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    

    这个dtd约束的作用就是提示,你在引用了这个dtd约束之后,打Mybatis都是有提示的

    properties标签(不怎么用)

    可以在配置文件打出properties标签,这个是来引入外部配置文件的,他有两个属性

    resource:引用类路径下的配置文件
    url:引用网络路径或者磁盘路径下的文件

    虽然这个标签不怎么使用,但是我还是要讲讲,我们现在就来写一个

    <?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="config/DBconfig.properties"></properties>
    
        <!-- 设置一个默认的连接环境信息 -->
        <environments default="mysql_developer">
            <environment id="mysql_developer">
                <!-- mybatis使用jdbc事务管理方式 -->
                <transactionManager type="JDBC"></transactionManager>
                <!-- mybatis使用连接池方式来获取连接 -->
                <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="config/Message.xml"/>
        </mappers>
    
    </configuration>
    

    看到没,我的resource属性写的是config文件夹下的DBconfig.properties,看看内容

    url: jdbc:mysql://127.0.0.1:3306/test?serverTimezone=UTC
    username: root
    password: 123456
    driver: com.mysql.cj.jdbc.Driver
    

    可以看到,我们下面的Mybatis的连接,都使用的是${}的方式取出来的

    这样,我们就实现了使用properties标签来加载外部配置文件的功能了

    typeAliases

    这个是起别名的,例如我们在Message.xml中的这个返回类型,类的全类名太长了

        <select id="getMsgById" parameterType="com.example.bean.Message"  resultType="com.example.bean.Message">
            select * from message where ID=#{ID}
        </select>
    

    我们可以在Mybatis.xml中配置一个全局的别名

        <typeAliases>
            <!--  typeAlias:为某个Java类型起别名
                  type:指定要起别名的类型全类名,默认的别名是最后一个单词的全小写,例如message
                  alias:自己指定别名
            -->
            <typeAlias type="com.example.bean.Message" alias="messageTest"></typeAlias>
        </typeAliases>
    
    

    然后Message.xml中的返回类型就写别名就可以了。注意,别名在调用的时候是不区分大小写的

    自动把下划线换成驼峰命名

    数据库是user_age,实体类里面是userAge,这样就无法对上数据,可以这样设置

        <settings>
            <!--是否开启自动驼峰命名规则(camel case)映射,即从经典数据库列名 A_COLUMN 到经典Java 属性名 aColumn 的类似映射。 -->
            <setting name="mapUnderscoreToCamelCase" value="true"/>
        </settings>
    
  • 相关阅读:
    RNN 一对一
    js只保留整数,向上取整,四舍五入,向下取整等函数
    oracle中的decode的使用
    ORACLE里锁有以下几种模式,v$locked_object,locked_mode
    时间序列/信号处理开源数据集-转
    ORACLE常用数值函数、转换函数、字符串函数
    Oracle to_date()函数的用法
    java使double保留两位小数的多方法 java保留两位小数
    Oracle修改字段类型方法总结
    POI对Excel自定义日期格式的读取
  • 原文地址:https://www.cnblogs.com/yunquan/p/10491112.html
Copyright © 2020-2023  润新知