• Java第三十七天,Mybatis框架系列,配置文件琐碎知识点


    一、XML 文件支持 properties 属性

    xml 文件内部是支持 properties 标签的定义的;因此我们可以将 jdbc 的配置信息写到 properties 标签里

    方法一:xml 内部完成 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>
            <!--配置连接数据库的基本信息-->
            <property name="driver" value="com.mysql.jdbc.Driver"/> <!--数据库驱动-->
            <property name="url" value="jdbc:mysql://localhost:3306/lanyue"/> <!--指明哪个数据库-->
            <property name="username" value="root"/>    <!--数据库用户名-->
            <property name="password" value="123456"/>  <!--数据库用户名密码-->
        </properties>
        <!--主配置文件-->
        <!--配置环境-->
        <environments default="mysql">  <!--可为任意值,但该值必须出现在下面的 environment 标签中-->
            <!--配置mysql环境-->
            <environment id="mysql">
                <!--事务类型-->
                <transactionManager type="JDBC"></transactionManager>
                <!--配置m数据源(连接池)-->
                <dataSource type="POOLED">
                    <!--配置连接数据库的基本信息-->
                    <!--value 可以直接使用 ${} 的方式读取上面定义的变量-->
                    <property name="driver" value="${driver}"/> <!--数据库驱动-->
                    <property name="url" value="${url}"/> <!--指明哪个数据库-->
                    <property name="username" value="${username}"/>    <!--数据库用户名-->
                    <property name="password" value="${password}"/>  <!--数据库用户名密码-->
                </dataSource>
            </environment>
        </environments>
    
        <!--用resource属性指明配置文件-->
        <mappers>
            <mapper resource="mybatis/userDao.xml"/>
        </mappers>
    </configuration>

    方法二:在 xml 文件的 properties 标签里通过 url 或 resource 属性引用外部配置文件

    例如:

    jdbcConfig.properties

    driver=com.mysql.jdbc.Driver
    url=jdbc:mysql://localhost:3306/lanyue
    username=root
    password=123456

    sqlMapConfig.xml

    <?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 既可以在xml文件内部配置;也可以引用外部文件信息-->
        <!--resource 属性用于指定配置文件的位置;并且必须存在于类路径下(访问时根据与 resources 文件夹路径的相对路径)-->
        <!--url 也是用于指定配置文件的位置;但是要求按照 url 的写法写-->
        <!--url 格式: 协议 + 主机 + 端口 + uri 唯一标识互联网上任意主机的任意文件-->
        <!--uri 格式: 唯一标识应用内文件-->
        <!--<properties url="file:///J:/Project/Java/MySQLCURD/src/main/resources/jdbcConfig.properties">-->
        <!-- </properties>-->
        <properties resource="jdbcConfig.properties">
        </properties>
    
        <!--主配置文件-->
        <!--配置环境-->
        <environments default="mysql">  <!--可为任意值,但该值必须出现在下面的 environment 标签中-->
            <!--配置mysql环境-->
            <environment id="mysql">
                <!--事务类型-->
                <transactionManager type="JDBC"></transactionManager>
                <!--配置m数据源(连接池)-->
                <dataSource type="POOLED">
                    <!--配置连接数据库的基本信息-->
                    <!--value 可以直接使用 ${} 的方式读取上面定义的变量-->
                    <property name="driver" value="${driver}"/> <!--数据库驱动-->
                    <property name="url" value="${url}"/> <!--指明哪个数据库-->
                    <property name="username" value="${username}"/>    <!--数据库用户名-->
                    <property name="password" value="${password}"/>  <!--数据库用户名密码-->
                </dataSource>
            </environment>
        </environments>
    
        <!--用resource属性指明配置文件-->
        <mappers>
            <mapper resource="mybatis/userDao.xml"/>
        </mappers>
    </configuration>

    二、typeAliases(类型别名)和 package

    1.作用:

    在 mapper 配置文件中,我们可以看到 Int、String、Integer 等类型可以直接写,而我们的自定义实体类却不能;为什么呢?因为官方已经把常用的这些类做了别名;既然如此,那我们当然也可以自定义别名了

    2.配置方法

    <?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 既可以在xml文件内部配置;也可以引用外部文件信息-->
        <!--resource 属性用于指定配置文件的位置;并且必须存在于类路径下(访问时根据与 resources 文件夹路径的相对路径)-->
        <!--url 也是用于指定配置文件的位置;但是要求按照 url 的写法写-->
        <!--url 格式: 协议 + 主机 + 端口 + uri 唯一标识互联网上任意主机的任意文件-->
        <!--uri 格式: 唯一标识应用内文件-->
        <!--<properties url="file:///J:/Project/Java/MySQLCURD/src/main/resources/jdbcConfig.properties">-->
        <!-- </properties>-->
        <properties resource="jdbcConfig.properties">
        </properties>
    
        <!--通过 typeAliase 标签配置类名的别名-->
        <!--type 标签指明要被设置别名的全限定类名;alias 标签指明要设置成的别名名称-->
        <!--制订了别名后不再区分大小写-->
        <!--typeAliases 中的 package 用来指定要配置别名的包,当指定之后,该包下的所有类都自动注册别名,别名为类名-->
        <typeAliases>
            <typeAlias type="entil.User" alias="user"></typeAlias>
            <!--<package name="entil"/>-->
        </typeAliases>
    
        <!--主配置文件-->
        <!--配置环境-->
        <environments default="mysql">  <!--可为任意值,但该值必须出现在下面的 environment 标签中-->
            <!--配置mysql环境-->
            <environment id="mysql">
                <transactionManager type="JDBC"></transactionManager>
                <!--配置m数据源(连接池)-->
                <dataSource type="POOLED">
                    <!--配置连接数据库的基本信息-->
                    <!--value 可以直接使用 ${} 的方式读取上面定义的变量-->
                    <property name="driver" value="${driver}"/> <!--数据库驱动-->
                    <property name="url" value="${url}"/> <!--指明哪个数据库-->
                    <property name="username" value="${username}"/>    <!--数据库用户名-->
                    <property name="password" value="${password}"/>  <!--数据库用户名密码-->
                </dataSource>
            </environment>
        </environments>
    
        <!--用resource属性指明配置文件-->
        <!--mappers 中的 package 标签用于指定 dao 接口所在的包;当指定了之后,就不需要再写 mapper、 resources 或者 class 了;注意:此种方法要求 mapper 接口名称和 mapper 映射文件名称相同,且放在同一个目录中-->
        <mappers>
            <package name="dao"/>
    <!--         <mapper resource="dao/UserDao.xml"/>-->
        </mappers>
    </configuration>
    作者:蓝月

    -------------------------------------------

    个性签名:能我之人何其多,戒骄戒躁,脚踏实地地走好每一步

  • 相关阅读:
    2019.2.18接口
    第一阶段复习
    vue-cli使用介绍
    Webpack 入门教程
    js报错Uncaught TypeError: Cannot read property 'getElementsByTagName' of null
    用shell编程.编写一个程序,用循环创建多个目录 并在该目录下创建多个文件 在文件中写入内容:
    explorer.exe应用程序错误,怎么解决?
    [Java连接MySQL数据库——含详细步骤和代码](https://www.cnblogs.com/town123/p/8336244.html)
    墨刀的简单使用
    laravel报错:SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '0' for key 'PRIMARY...
  • 原文地址:https://www.cnblogs.com/viplanyue/p/13573712.html
Copyright © 2020-2023  润新知