Mybatis入门(三)之取别名标签

今天内容比较简单,就是几个标签的介绍,但对于开发的效率确是有很大的提高,在实际开发中也是经常用到的一种手段。要介绍的标签有properties、typeAlias、package等标签。

一、properties

在之前的入门案例中,我们在SqlMapConfig.xml中配置了连接数据库必备的属性,如下:

<dataSource type="POOLED">
  
  <property name="driver" value="com.mysql.jdbc.Driver">property>
  <property name="url" value="jdbc:mysql://localhost:3306/web_test2">property>
  <property name="username" value="root">property>
  <property name="password" value="123">property>
dataSource>

第一种修改:

写一个dbcConfig.properties文件,内容为:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/web_test2
jdbc.username=root
jdbc.password=123

将文件方法main文件夹的resource中:

Mybatis入门(三)之取别名标签_第1张图片

在SqlMapConfig.xml文件的configuration标签中添加一个properties标签,然后再里面写上属性标签等值。如下图:

<configuration>
    <properties resource="dbcConfig.properties">
       
    properties>
    
    <environments default="mysql">
        
        <environment id="mysql">
            
            <transactionManager type="JDBC">transactionManager>
            
            <dataSource type="POOLED">
                <property name="driver" value="${jdbc.driver}">property>
                <property name="url" value="${jdbc.url}">property>
                <property name="username" value="${jdbc.username}">property>
                <property name="password" value="${jdbc.password}">property>
            dataSource>
        environment>
    environments>
    
    <mappers>
        <mapper resource="com/itheima/dao/IUserDao.xml">mapper>
    mappers>
configuration>

第二种修改,和上面的做法类似,只是将properties标签中的resource标签换成url标签,如下所示:

<properties url="file:///F:/Program Files/IdeaProjects/hello_maven/src/main/resources/jdbcConfig.properties">
    properties>

从两种方式的用法不难看出,resource和url的区别,url的值必须为全路径名,需要加协议和端口等信息,而resource就不需要这么麻烦,只要满足文件在resources文件夹下即可直接使用文件名来填写信息。

他们的共同点就是,我们如果需要修改数据库的连接信息,直接用打开属性文件来修改即可,并不需要再去查找对应的配置文件。

二、typeAlias

在SqlMapConfig.xml中properties标签下添加如下代码,那么我们在写mapper文件的时候就可以省略全限定类名,直接写类名。


<typeAliases>
  <typeAlias type="com.stevensam.domain.Student" alias="student">typeAlias>
typeAliases>

<select id="findAll" resultType="student">
    SELECT * FROM student;
select>

三、package

当有多个实体类在同一个包下的时候,我们并不需要想上面一个一个地添加typeAlias,只需要修改代码如下所示即可。


<typeAliases>
  
  
  <package name="com.stevensam.domain">package>
typeAliases>

package也还可以用在其他的标签中,如mappers中

<mappers>
    
    
    <package name="com.stevensam.dao">package>
mappers>

你可能感兴趣的:(后端框架)