zoukankan      html  css  js  c++  java
  • SSM框架之Mybatis(4)SqlMapConfig

    Mybatis(4)SqlMapConfig.xml

    SqlMapConfig.xml 中配置的内容和顺序

    -properties (属性)
    	--property
    -settings(全局配置参数)
    	--setting
    -typeAliases (类型别名)
    	--typeAliase
    	--package
    -typeHandlers(类型处理器)
    -objectFactory(对象工厂)
    -plugins(插件)
    -environments(环境集合属性对象)
    	--environment(环境子属性对象)
    		---transactionManager(事务管理)
    		---dataSource(数据源)
    -mappers (映射器)
    	--mapper
    	--package
    

    1、关于配置连接数据库的信息(关于properties标签的讲解)

    注:以下所有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">
    

    1.1、原始方法

    直接通过environment下的dataSource直接配置

    <configuration>
        <!--配置环境-->
        <environments default="mysql">
            <!--配置MySQL的环境-->
            <environment id="mysql">
                <!--配置事务类型-->
                <transactionManager type="JDBC"></transactionManager>
                <!--配置数据源(连接池)-->
                <dataSource type="POOLED">
                    <!--配置连接池的基本信息4个-->
                    <property name="driver" value="com.mysql.jdbc.Driver"/>
                    <property name="url" value="jdbc:mysql:///eesy_mybatis"/>
                    <property name="username" value="root"/>
                    <property name="password" value="123456"/>
                </dataSource>
            </environment>
        </environments>
    
        <!--指定映射配置文件的位置,映射配置文件指的是每个dao独立的配置文件-->
        <mappers>
            <mapper resource="dao/IUserDao.xml"/>
        </mappers>
    
    </configuration>
    

    1.2、通过properties标签配置对应的配置信息

    可以在标签内部配置连接数据库的信息,也可以通过属性引用外部配置文件的信息
    
    resource属性:resource="jdbcConfig.properties
        用于指定配置文件的位置,按照类路径来写,且配置文件必须保存在类路径下
        
    url属性:
        是要求按照Url的写法来写地址
        URL:Uniform Resource Locator 统一资源定位符。它是可以唯一标识一个
    资源的位置。
        它的写法:
            http://localhost:8080/mybatisserver/demo1Servlet
            协议      主机    端口       URI
    
    URI:Uniform Resource Identifier 统一资源标识符。它是在应用中可以唯一定位
    一个资源的。
    url="file:///E:/java/code/ssm01_mybatis_DAO/src/main/resources/jdbcConfig.properties"
    

    1.2.1、直接在SqlMapConfig.xml中配置

    <configuration>
        
        <properties >
            <!--配置连接池的基本信息4个-->
            <property name="driver" value="com.mysql.jdbc.Driver"/>
            <property name="url" value="jdbc:mysql:///eesy_mybatis"/>
            <property name="username" value="root"/>
            <property name="password" value="123456"/>
        </properties>
    
        <environments default="mysql">
            <environment id="mysql">
                <transactionManager type="JDBC"></transactionManager>
                <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="dao/IUserDao.xml"/>
        </mappers>
    </configuration>
    

    1.2.2、通过resource属性加载位于SqlMapConfig.xml同包下的jdbcConfig.properties配置文件

    SqlMapConfig.xml文件

    <configuration>
        
        <properties resource="jdbcConfig.properties">
        </properties>
    
        <environments default="mysql">
            <environment id="mysql">
                <transactionManager type="JDBC"></transactionManager>
                <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="dao/IUserDao.xml"/>
        </mappers>
    </configuration>
    

    jdbcConfig.properties配置文件

    driver = com.mysql.jdbc.Driver
    url = jdbc:mysql:///eesy_mybatis
    username = root
    password = 123456
    

    1.2.3、通过url属性加载文件

    configuration>
        
        <properties url="file:///E:/java/code/ssm01_mybatis_DAO/src/main/resources/jdbcConfig.properties">
        </properties>
    
        <environments default="mysql">
            <environment id="mysql">
                <transactionManager type="JDBC"></transactionManager>
                <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="dao/IUserDao.xml"/>
        </mappers>
    </configuration>
    

    其中url="file:///E:/java/code/ssm01_mybatis_DAO/src/main/resources/jdbcConfig.properties"就是jdbcConfig.properties配置文件在文件夹中的位置。使用的是file协议。使用默认的主机及端口。

    2.typeAliases标签的讲解

    使用typeAliases配置别名,它只能配置domain中的类的别名

    <typeAliases>
        <!--typeAlias属性用于配置别名,type:指定类的全限定类名,alise:指定别名,当指定别名后就不区分大小写因为数据库不区分大小写-->
        <!--<typeAlias type="domain.User" alias="user"/>-->
        <!--package属性用于指定要配置别名的包,指定后该包下的全部实体类都会注册别名,并且类名就是别名
        不再区分大小写-->
        <package name="domain"/>
    
    </typeAliases>
    

    3、mappers (映射器)

    3.1 mapper resource=" "

    使用相对于类路径的资源

    <mappers>
            <mapper resource="dao/IUserDao.xml"/>
    </mappers>
    

    3.2 mapper class=" "

    使用 mapper 接口类路径

    <mappers>
            <mapper class="dao.UserDao"/>
    </mappers>
    

    注意:此种方法要求mapper接口名称和mapper映射文件名称相同,且放在同一个目录中。

    3.3 package name=""

    注册指定包下的所有 mapper 接口

    <mappers>
           <package name="dao"/>
    </mappers>
    

    注意:此种方法要求 mar pper 接口名称和 r mapper 映射文件名称相同,且放在同一个目录中。

  • 相关阅读:
    selenium3 + python
    selenium3 + python
    Linux 文件查找
    Linux 重定向与管道
    MySQL —— 基本查询方法
    Linux 用户和文件权限管理
    Linux bash介绍与使用
    Linux 文件操作
    Linux 文件系统简介
    Linux 帮助命令
  • 原文地址:https://www.cnblogs.com/wf614/p/11673830.html
Copyright © 2011-2022 走看看