一、连接数据库的配置单独放在一个properties文件中
1、在src目录下新建一个jdbc.properties文件(使用到的数据库驱动,连接URL地址,用户名,密码)
driver=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@localhost:1521:HLX
username=scott
password=hsx
2、在mybatis-conf.xml文件中引用jdbc.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>
<!-- 引入 jdbc.properties 文件 -->
<properties resource="jdbc.properties" />
<!--
development : 开发模式
work : 工作模式
-->
<environments default="development">
<environment id="development">
<!--配置事务管理,采用JDBC的事务管理 -->
<transactionManager type="JDBC" />
<!-- 配置数据库连接信息 value属性值引用jdbc.properties配置文件中配置的值 -->
<!-- POOLED:mybatis自带的数据源,JNDI:基于tomcat的数据源 -->
<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>
<!-- 将mapper文件加入到配置文件中 -->
</configuration>
二、实体类定义别名,来简化sql映射xml文件中的引用
在sql映射xml文件中的引用实体类时,需要写上实体类的全类名(包名+类名),如下:
<select id="myid" parameterType="int" resultType="com.hlx.pojo.Userinfos">
select * from userinfos where id=#{id}
</select>
<select id="myid" parameterType="int" resultType="_User">
select * from userinfos where id=#{id}
</select>
但必须在mybatis-config.xml文件<configuration></configuration>配置如下:
<!-- (a) Userinfos实体类对应一个别名 _User -->
<!-- 这就达到了一个简化实体类引用的目的。 -->
<typeAliases>
<typeAlias type="com.hlx.pojo.Userinfos" alias="_User" />
</typeAliases>
除了上面这种方式单独为某一个实体类设置别名之外,我们还可以使用如下的方式批量为某个包下的所有实体类设置别名 <typeAliases>
<package name="com.hlx.pojo" />
</typeAliases>
resultType="com.hlx.pojo.Userinfos"这里写的实体类Userinfos的全类名,每次这样繁琐,可以简化如下:<!-- 简化resultType="com.hlx.pojo.Userinfos" 改为别名:Userinfos -->
<select id="myid" parameterType="int" resultType="Userinfos">
select * from userinfos where id=#{id}
</select>
说明: <package name="com.hlx.pojo" />包下的所有实体类配置别名,MyBatis默认的设置别名的方式就是去除类所在的包后的简单的类名比如com.hlx.pojo.Userinfos这个实体类的别名就会被设置成Userinfos