MyBatis 配置解析
mybatis-config.xml 配置解析
<!--引入外部配置文件-->
<properties resource="db.properties"/>
这是为了引入外部文件,这边是为下面的property注入数据。
<settings>
<!--标准的日志工厂实现-->
<setting name="logImpl" value="STDOUT_LOGGING"/>
</settings>
这是配置控制台日志输出,这里使用的是标准日志输出格式。
<!--可以给实体类起别名-->
<typeAliases>
<typeAlias type="com.hudu.pojo.Student" alias="Student"/>
<typeAlias type="com.hudu.pojo.Teacher" alias="Teacher"/>
<!--扫描实体类的包,它的默认别名就为这个类的类名,实体类比较多用package扫描-->
<!--<package name="com.com.test.pojo"/>-->
</typeAliases>
这是给实体类起别名,便于在对应的Mapper.xml文件编写时指定对象类型。
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<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>
这是环境配置,defalut表示使用哪个环境,可以配置多个环境。transactionManager type 表示使用上面方式连接数据库。dataSource type 表示是否使用连接池。driver、url、username、username分别表示使用的是数据库连接驱动、数据库连接地址、数据库用户名、数据库用户密码。
<mappers>
<!--通过resource方法定位StudentMapper.xml文件-->
<mapper resource="com/hudu/dao/TeacherMapper.xml"/>
<mapper resource="com/hudu/dao/StudentMapper.xml"/>
<!--通过类定位-->
<!-- <mapper class="com.hudu.dao.TeacherMapper"/>-->
<!-- <mapper class="com.hudu.dao.StudentMapper"/>-->
<!--通过包扫描-->
<!-- <package name="com.hudu.dao"/>-->
</mappers>
解释如上,其它具体配置用法看官方文档
接口对应的 XML 配置文件解释
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.hudu.dao.StudentMapper">
<select id="getStudents" resultType="Student">
select * from student
</select>
<delete id="deleteStudent" parameterType="_int">
delete from student where id = #{sid}
</delete>
<insert id="addStudent" parameterType="Student">
insert into student(id,name,tid) values (#{id},#{name},#{tid})
</insert>
<update id="updateStudent" parameterType="Student">
update student set name = #{name},tid = #{tid} where id = #{id}
</update>
</mapper>
其中namespace表示绑定的接口,select、delete 等表示 sql 中的操作,id 绑定的接口中定义的方法,parameterType 表示方法中的参数类型,resultType 表示返回值的类型。
本作品采用《CC 协议》,转载必须注明作者和本文链接