
在mybatis通过执行sql语句的方式是,用getSqlSession().xxx(param,..)方法来调用,
其中第一个参数就是dao mapper.xml文件的命名空间.id
package com.xxx.cms.activity.dao.impl; public class ActivityDaoImpl extends BaseDao implements ActivityDao {
//获得class名, 即 ActivityDaoImpl
public String getSimpleNameSpace() {
return this.getClass().getSimpleName();
} //获得class全文件名, 包名.class名
// 即com.xxx.cms.activity.dao.impl.ActivityDaoImpl
public String getNameSpace() {
return this.getClass().getName();
} // sql调用
int id = (int) (Integer) getSqlSession().selectOne(getNameSpace() + ".getActivityComingId"); }
//直接以class名为命名空间
<mapper namespace="ActivityDaoImpl"> <!-- 以class全路径为命名空间,这样可以避免两个class文件名相同的问题 -->
<mapper namespace="com.teshehui.cms.activity.dao.impl.ActivityDaoImpl">