MyBatis笔记04 配置文件
coconutnut

https://www.bilibili.com/video/av47952553
p37~38

properties

可以在标签内部配置连接数据库的信息,也可以通过属性引用外部配置文件信息

内部配置

直接写在主配置文件中

1
2
3
4
5
6
<properties>
<property name="driver" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/eesy_mybatis"></property>
<property name="username" value="root"></property>
<property name="password" value="1234"></property>
</properties>

使用

1
<property name="driver" value="${driver}"></property>

外部文件

引用外部文件

classpath 下定义 db.properties 文件

1
2
3
4
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/eesy
jdbc.username=root
jdbc.password=1234

要求按url的写法写地址

1
2
<properties url="file:///D:/IdeaProjects/day02_eesy_01mybatisCRUD/src/main/resources/jdbcConfig.properties">
</properties>

使用

1
<property name="driver" value="${jdbc.driver}"></property>

使用typeAliases配置类型别名

只能配置domain中类的别名

type:指定的是实体类全限定类名

alias:属性指定别名

1
2
3
4
5
6
<typeAliases>
<!-- 单个别名定义 -->
<typeAlias type="com.itheima.domain.User" alias="user"></typeAlias>-->
<!-- 用于指定要配置别名的包,当指定之后,该包下的实体类都会注册别名,并且类名就是别名,不再区分大小写-->
<package name="com.itheima.domain"></package>
</typeAliases>

指定了别名就不再区分大小写,user、USER、uSeR都可以

mappers

resource用于指定相对于类路径的资源位置

1
<mapper resource="com/itheima/dao/IUserDao.xml" />

class指定接口类路径

要求 mapper 接口名称和 mapper 映射文件名称相同,且放在同一个目录中

1
<mapper class="com.itheima.dao.UserDao"/>

更简单的方式是使用package

1
2
3
4
5
<mappers>
<!--<mapper resource="com/itheima/dao/IUserDao.xml"></mapper>-->
<!-- package标签是用于指定dao接口所在的包,当指定了之后就不需要再写mapper以及resource或者class了 -->
<package name="com.itheima.dao"></package>
</mappers>