相关介绍-
Spring 让 LOB 数据操作变得简单易行(http://www.ibm.com/developerworks/cn/java/j-lo-spring-lob/)
具体代码:
Blob操作也类似Clob,也是通过LobHandler 类的方法进行操作。
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.dao.DataAccessException;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.jdbc.core.support.AbstractLobCreatingPreparedStatementCallback;
import org.springframework.jdbc.support.lob.DefaultLobHandler;
import org.springframework.jdbc.support.lob.LobCreator;
import org.springframework.jdbc.support.lob.LobHandler;
import org.springframework.stereotype.Repository;
import com.commom.model.PageBean;
/**
* 类:ReportTemplateDaoImpl.java
* 时间:2016-1-8
* 说明:模板
*/
@Repository
public class ReportTemplateDaoImpl extends BaseDao
{
/**
* 根据条件获取模板的信息
* @param queryMap:查询条件
* @return
*/
public List<Map<String, Object>> queryReportTemplate(Map<String,Object> filterMap)
{
return execConditonSql(filterMap,false);
}
/**
* 统计模板总记录数
* @param queryMap:查询条件
* @return
*/
public int countReportTemplate(Map<String,Object> filterMap)
{
List<Map<String, Object>> retObjMapList = execConditonSql(filterMap, true);
return Integer.valueOf(retObjMapList.get(0).get("count").toString());
}
/**
* 根据条件查询模板信息
* @param filterMap
* @return
*/
public List<Map<String,Object>> execConditonSql(Map<String,Object> filterMap,boolean isCount)
{
StringBuffer sql;
if(isCount)
{
//查数据条数
sql = new StringBuffer(" select count(*) as count from TEMPLATE_TABLE where 1=1 ");
}else
{
//查数据信息
sql = new StringBuffer(" select * from TEMPLATE_TABLE where 1=1 ");
}
if(filterMap != null )
{
if(filterMap.containsKey("title"))
{
sql.append("and title like '%"+ filterMap.get("title") +"%'");
}
if(filterMap.containsKey("label"))
{
sql.append("and label like '%"+ filterMap.get("label") +"%'");
}
if(filterMap.containsKey("type"))
{
sql.append("and type ="+Integer.valueOf(filterMap.get("type").toStrin