package com.zxh.customer.testmap.dao;
import java.util.List;
import java.util.Map;
public interface IBaseDao {
/**
* 获取单条记录
* @param map
* @return
*/
public Map selectOne(String sqlId, Map map);
/**
* 获取记录列表
* @param map
* @return
*/
public List selectList(String sqlId, Map map);
/**
* 插入一条记录
* @param map
*/
public void insert(String sqlId, Map map);
/**
* 更新记录
*/
public void update(String sqlId, Map map);
/**
* 删除记录
* @param map
*/
public void delete(String sqlId, Map map);
/**
* 调用存储过程
* @param map
*/
public void callProcedure(String sqlId, Map map);
}
package com.zxh.customer.testmap.dao;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.session.SqlSession;
import com.zxh.customer.testmap.util.MybatisUtil;
/**
* 通用DAO 减少代码量,服务层只需构造map参数 sqlId 为映射sql的id 增删改 要提交事务
*
* @author zhangxiaohong
*
*/
public class BaseDaoImpl implements IBaseDao {
public Map selectOne(String sqlId, Map map) {
SqlSession session = MybatisUtil.getSessionFactory().openSession();
Map resultMap;
try {
resultMap = session.selectOne(sqlId, map);
} finally {
session.close();
}
return resultMap;
}
public List selectList(String sqlId, Map map) {
SqlSession session = MybatisUtil.getSessionFactory().openSession();
List resultList;
try {
resultList = session.selectList(sqlId, map);
} finally {
session.close();
}
return resultList;
}
public void insert(String sqlId, Map map) {
SqlSession session = MybatisUtil.getSessionFactory().openSession();
try {
session.insert(sqlId, map);
session.commit();
} finally {
session.close();
}
}
public void update(String sqlId, Map map) {
SqlSession session = MybatisUtil.getSessionFactory().openSession();
try {
session.update(sqlId, map);
session.commit();
} finally {