Ibatis 命名空间使用
1.sqlMap-config.xml如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig
PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<settings useStatementNamespaces ="true" />
.......
<sqlMap resource=".../a.xml" /><sqlMap resource=".../b.xml" />
</sqlMapConfig>
2.a.xml 和 b.xml分别如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="A">
<resultMap id="result" >
...
</resultMap>
<select id="getAllCorp" resultMap="result">
select * from table_A
</select>
</sqlMap>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="B">
<resultMap id="result" >
...
</resultMap>
<select id="getAllCorp" resultMap="result">
select * from table_B
</select>
</sqlMap>
3.java Dao
public class dao extends SqlMapClientDaoSupport{
public List<IndCorp> getAllCorp(String nameSpace) throws Exception {
SqlMapClientTemplate sqlMap = getSqlMapClientTemplate();
List list=null;
if(nameSpace==null||"".equals(nameSpace.trim()))
list=sqlMap.queryForList("getAllCorp");
else
list=sqlMap.queryForList(nameSpace+".getAllCorp");
return list;
}}
浙公网安备 33010602011771号