九点钟☆方向

记录成长点滴

欢迎来到我的个人博客~


Mybatis笔记(五) Mybatis主配置文件SqlMapConfig.xml

目录

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

4

properties(属性)

在使用 properties 标签配置时,我们可以采用两种方式指定属性配置。

第一种

<configuration>
    <!--配置属性-->
    <properties>
        <property name="driver" value="com.mysql.jdbc.Driver"/>
        <property name="url" value="jdbc:mysql://localhost:3306/mybatis"/>
        <property name="username" value="root"/>
        <property name="password" value="root"/>
    </properties>
    
    <environments default="mysql">
        <environment id="mysql">
            <!-- 配置事务类型 -->
            <transactionManager type="JDBC"></transactionManager>
            <!-- 配置数据源(连接池) -->
            <dataSource type="POOLED">
                <!-- 此处使用${}直接引用上面的定义即可  -->
                <property name="driver" value="${driver}"></property>
                <property name="url" value="${url}"></property>
                <property name="username" value="${username}"></property>
                <property name="password" value="${password}"></property>
                <!--原先写法
                <property name="driver" value="com.mysql.jdbc.Driver"></property>
                <property name="url" value="jdbc:mysql://localhost:3306/mybatis"></property>
                <property name="username" value="root"></property>
                <property name="password" value="root"></property>
				-->
            </dataSource>
        </environment>
    </environments>
</configuration>

第二种

  1. 在 classpath 下定义 jdbcConfig.properties 文件

    driver=com.mysql.jdbc.Driver
    url=jdbc:mysql://localhost:3306/mybatis
    username=root
    password=root
    
  2. properties 标签引入jdbcConfig.properties

    <configuration>
        <!-- 配置连接数据库的信息
            1. resource 属性:用于指定 properties 配置文件的位置,要求配置文件必须在类路径下
               如:resource="jdbcConfig.properties"
            2. url 属性:
               URL: Uniform Resource Locator 统一资源定位符
               如:http://localhost:8080/mystroe/CategoryServlet URL  支持http协议
    		      file:///D:/mybatis/src/main/resources/jdbcConfig.properties  也支持file协议
               协议 主机 端口 URI
               URI: Uniform Resource Identifier 统一资源标识符
               /mystroe/CategoryServlet
               它是可以在 web 应用中唯一定位一个资源的路径
        -->
    	<properties resource="jdbcConfig.properties"></properties>
        <!--
        <properties url="file:///D:/mybatis/src/main/resources/jdbcConfig.properties">
    	</properties>
    	-->
        <environments default="mysql">
            <environment id="mysql">
                <!-- 配置事务类型 -->
                <transactionManager type="JDBC"></transactionManager>
                <!-- 配置数据源(连接池) -->
                <dataSource type="POOLED">
                    <!-- 此处使用${}直接引用jdbcConfig.properties的键  -->
                    <property name="driver" value="${driver}"></property>
                    <property name="url" value="${url}"></property>
                    <property name="username" value="${username}"></property>
                    <property name="password" value="${password}"></property>
                    <!--原先写法
                    <property name="driver" value="com.mysql.jdbc.Driver"></property>
                    <property name="url" value="jdbc:mysql://localhost:3306/mybatis"></property>
                    <property name="username" value="root"></property>
                    <property name="password" value="root"></property>
    				-->
                </dataSource>
            </environment>
        </environments>
    </configuration>
    

typeAliases(类型别名): 在 SqlMapConfig.xml 中配置

<typeAliases>
    <!-- 单个别名定义
 		alias:别名,定义后不再区分大小写,使用时user,User,USER都一样
		type:实体类的全限定名
	-->
    <typeAlias alias="user" type="com.mg.entity.User"/>
</typeAliases>

或者可以批量定义别名:
<typeAliases>
    <!-- 批量别名定义,扫描整个包下的类,别名为类名,定义后不再区分大小写,使用时user,User,USER都一样 -->
    <package name="com.mg.entity"/>
</typeAliases>

在Mapper文件中使用时IUserMapper.xml

<!-- resultType直接引用别名 -->
<select id="findAll" resultType="user">
	select * from user
</select>

mappers(映射器)

  1. mapper resource:使用相对于类路径的资源

    <mappers>
        <mapper resource="com/mg/dao/IUserMapper.xml" />
    </mappers>
    
  2. mapper class:使用 mapper 接口类路径 ,此种方法要求 mapper 接口名称和 mapper 映射文件名称相同,且放在同一个目录中

    <mappers>
    	<mapper class="com.mg.dao.IUserMapper"/>
    </mappers>
    
  3. package name:注册指定包下的所有 mapper 接口 ,此种方法要求 mapper 接口名称和 mapper 映射文件名称相同,且放在同一个目录中。

    <mappers>
    	<package name="cn.mg.mybatis.mapper"/>
    </mappers>
    
  4. mapper url:注册指定url下的mapper文件

    <mappers>
    	<package url="file:///var/mappers/IUserMapper.xml"/>
    </mappers>
    

打赏一个呗

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦