org.springframework.dao.support.DaoSupport.JdbcDaoSupport实现类中提供了org.springframework.jdbc.core.JdbcTemplate实例以及相对应的get方法.
所以我们自己的Dao实现类继承JdbcDaoSupport类来做数据库操作,代码如下:
@Repository("supportDao")
public class SupportDaoImpl extends JdbcDaoSupport implements SupportDao {
private static final Logger LOGGER = Logger.getLogger(SupportDaoImpl.class);
public Map<String,String> map = new HashMap<String,String>();
private String strRes;
@Override
public Map<String,String> method1(String specName)throws SQLException {
getJdbcTemplate().query("select CONFIG_KEY,CONFIG_VALUE from tableName where config_group_name= '"+specName+"'", new RowCallbackHandler() {
@Override
public void processRow(ResultSet rs) throws SQLException {
String key = rs.getString(1);
String value = rs.getString(2);
map.put(key, value);
}
});
return map;
}
@Override
public String method2(String configKey) throws SQLException{
getJdbcTemplate().query("select CONFIG_VALUE from tableName where config_group_name=? and config_key=?",new Object[]{Constants.SOPHIS_FILE_UPLOAD,configKey}, new RowCallbackHandler() {
@Override
public void processRow(ResultSet rs) throws SQLException {
strRes= rs.getString(1);
}
});
return strRes;
}
}
我们可以看到,query大致的框架是:
getJdbcTemplate().query(sql,new Object[]{Object1,Object2}, new RowCallbackHandler() {
@Override
public void processRow(ResultSet rs) throws SQLException {
//TODO 这里读取数据库查询结果
}
});
其中 new Object[]{Object1,Object2}用于传入参数,可选.