后台报错截图明细:
报错代码部分:
SQL语句和params参数都没有问题,在数据库运行可以取到一条数据,但是从接口就是取不到;
public Map<String, Object> getNoticeById(String id) {
//参数
ArrayList<String> params = new ArrayList<String>();
params.add(id);
//查询sql
StringBuffer sql = new StringBuffer();
sql.append("");
return getJdbcTemplate().queryForMap(sql.toString(), params.toString());
}
解决方案:
返回的Map必须进行判断,这样才能拿到数据;
public Map<String, Object> getNoticeById(String id) {
//参数
ArrayList<String> params = new ArrayList<String>();
params.add(id);
//查询sql
StringBuffer sql = new StringBuffer();
sql.append("");
Map<String, Object> result = new HashMap<String, Object>();
try{
result = getJdbcTemplate().queryForMap(sql.toString(), params.toArray());
if(result != null && result.size()>0){
return result;
}
}catch(EmptyResultDataAccessException e){
return null;
}
return result;
}