需求:mybatis的sql文件暴露在外面,但是当我们修改了对应的mapper.xml文件后,怎样才能避免重启项目实现热加载这类配置文件呢?
环境:springMVC(其中spring3.1.1、mybatis3.2.1)
1.首先看一下mybatis映射层目录结构图如下(Users.java是实体类、SqlMapConfig.xml是管理加载所有的mapper.xml文件、Users.xml是mapper.xml文件):
Users.java内容如下:
package com.pingpeng.misp.models;
public class Users implements java.io.Serializable {
private static final long serialVersionUID = -6057344509602820411L;
private Integer id;
private Integer enable;
private String password;
private String account;
// 四个属性的get、set方法请自行添加,此处不写了
}
SqlMapConfig.xml内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//ibatis.apache.org//DTD Config 3.0//EN"
"http://ibatis.apache.org/dtd/ibatis-3-config.dtd">
<configuration>
<typeAliases>
<!-- Entities 参数实体 -->
<!-- com.pingpeng.misp.models 包中的 所有Bean, 取个别名 -->
<!-- 比如Resources类就用resource来表示 -->
<typeAlias type="com.pingpeng.misp.models.Users" alias="users" />
</typeAliases>
<mappers>
<!-- 对应Bean类的xml配置文件的路径信息 -->
<mapper resource="com/pingpeng/misp/models/mybatis/mapper/Users.xml" />
</mappers>
</configuration>