zoukankan      html  css  js  c++  java
  • 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>
    
  • 相关阅读:
    区块链入门
    上海美食餐厅
    《OD学hadoop》20160910某旅游网项目实战
    《OD学hadoop》20160904某旅游网项目实战
    《OD学hadoop》20160903某旅游网项目实战
    qt5-自定义类
    qt5-Qt Creator使用
    qt5-QPushButton按钮
    qt5-工程文件的介绍--快捷键
    电路分析-电阻
  • 原文地址:https://www.cnblogs.com/yunquan/p/10491112.html
Copyright © 2011-2022 走看看