package com.ibatis.example;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class BaseDao extends
org.springframework.orm.ibatis.support.SqlMapClientDaoSupport
{
public int delete(String name, Serializable id)
{
return getSqlMapClientTemplate().delete(name, id);
}
public <T> T get(String name, Serializable id)
{
return (T)getSqlMapClientTemplate().queryForObject(name, id);
}
public <T> T get(String name, Object object)
{
return (T)getSqlMapClientTemplate().queryForObject(name, object);
}
public <T> List<T> getList(String name)
{
return getSqlMapClientTemplate().queryForList(name);
}
public <T> List<T> getList(String name, Object object)
{
return getSqlMapClientTemplate().queryForList(name, object);
}
public void insert(String name, Object o)
{
getSqlMapClientTemplate().insert(name, o);
}
public int update(String name, Object o)
{
return getSqlMapClientTemplate().update(name, o);
}
public <T> T count(String name)
{
return (T)getSqlMapClientTemplate().queryForObject(name);
}
public <T> T count(String name, Object object)
{
return (T)getSqlMapClientTemplate().queryForObject(name, object);
}
/**
* sql 查询.
* @author yuyang
* @param sql 直接sql的语句(需要防止注入式攻击)
*/
public <T> List<T> getList(String name, String sql)
{
Assert.hasText(sql);
if (StringUtils.isEmpty(sql))
return this.getSqlMapClientTemplate().queryForList(name, null);
else
return this.getSqlMapClientTemplate().queryForList(name, sql);
}
/**
* map查询.
* @author yuyang
* @param map 包含各种属性的查询
*/
public <T> List<T> getList(String name, Map map)
{
if (map == null)
return this.getSqlMapClientTemplate().queryForList(name, null);
else
{
map.put("findBy", "True");
return this.getSqlMapClientTemplate().queryForList(name, map);
}
}
/**
* 分页查询.
* @param sql 直接sql的语句(需要防止注入式攻击)
*/
public <T> Map<String, Object> getList(String name, Page page)
{
List<T> list = new ArrayList<T>();
Map<String, Object> map = new HashMap<String, Object>();
page = PageInation.getPageALLRecorde(page);
Map paramMap = new HashMap();
paramMap.put("sql", page.getPageSql());
paramMap.put("result", page.getPageResult());
paramMap.put("firstRecord", page.getFristPage());
paramMap.put("endRecorde", page.getEndPage());
list = getSqlMapClientTemplate().queryForList(name, paramMap);
map.put("list", list);
map.put("page", page);
return map;
}
}
import java.io.Serializable;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class BaseDao extends
org.springframework.orm.ibatis.support.SqlMapClientDaoSupport
{
public int delete(String name, Serializable id)
{
return getSqlMapClientTemplate().delete(name, id);
}
public <T> T get(String name, Serializable id)
{
return (T)getSqlMapClientTemplate().queryForObject(name, id);
}
public <T> T get(String name, Object object)
{
return (T)getSqlMapClientTemplate().queryForObject(name, object);
}
public <T> List<T> getList(String name)
{
return getSqlMapClientTemplate().queryForList(name);
}
public <T> List<T> getList(String name, Object object)
{
return getSqlMapClientTemplate().queryForList(name, object);
}
public void insert(String name, Object o)
{
getSqlMapClientTemplate().insert(name, o);
}
public int update(String name, Object o)
{
return getSqlMapClientTemplate().update(name, o);
}
public <T> T count(String name)
{
return (T)getSqlMapClientTemplate().queryForObject(name);
}
public <T> T count(String name, Object object)
{
return (T)getSqlMapClientTemplate().queryForObject(name, object);
}
/**
* sql 查询.
* @author yuyang
* @param sql 直接sql的语句(需要防止注入式攻击)
*/
public <T> List<T> getList(String name, String sql)
{
Assert.hasText(sql);
if (StringUtils.isEmpty(sql))
return this.getSqlMapClientTemplate().queryForList(name, null);
else
return this.getSqlMapClientTemplate().queryForList(name, sql);
}
/**
* map查询.
* @author yuyang
* @param map 包含各种属性的查询
*/
public <T> List<T> getList(String name, Map map)
{
if (map == null)
return this.getSqlMapClientTemplate().queryForList(name, null);
else
{
map.put("findBy", "True");
return this.getSqlMapClientTemplate().queryForList(name, map);
}
}
/**
* 分页查询.
* @param sql 直接sql的语句(需要防止注入式攻击)
*/
public <T> Map<String, Object> getList(String name, Page page)
{
List<T> list = new ArrayList<T>();
Map<String, Object> map = new HashMap<String, Object>();
page = PageInation.getPageALLRecorde(page);
Map paramMap = new HashMap();
paramMap.put("sql", page.getPageSql());
paramMap.put("result", page.getPageResult());
paramMap.put("firstRecord", page.getFristPage());
paramMap.put("endRecorde", page.getEndPage());
list = getSqlMapClientTemplate().queryForList(name, paramMap);
map.put("list", list);
map.put("page", page);
return map;
}
}