在webservice客户端代码中循环调用DAO实现 出现内存泄露问题
DAO实现的代码如下:
public class OrderRequestDAOImpl extends JdbcDaoSupport implements IOrderRequestDAO {
private final OrderRequestMapper map = new OrderRequestMapper();
private final OrderRequestT table = new OrderRequestT();
private StringBuffer sql = new StringBuffer(); public List getOrderRequestList() {
sql.append("SELECT * FROM Table");
return getJdbcTemplate().query(sql.toString(),map);
} public class OrderRequestMapper implements RowMapper {
public Object mapRow(final ResultSet rs, int rowNum) throws SQLException {
try{
table.setMdn(rs.getString("F_MDN"));
table.setMerchantCode(rs.getString("F_MERCHANT_CODE"));
table.setProductCode(rs.getString("F_PRODUCT_CODE"));
table.setProductNum(Integer.parseInt(rs.getString("F_PRODUCT_NUM")));
table.setSpCode(rs.getString("F_SPCODE"));
table.setCreateTime(rs.getString("F_CREATE_TIME"));
table.setStat(rs.getString("F_STAT"));
table.setPartyName(rs.getString("F_PARTY_NAME"));
table.setBusinessName(rs.getString("F_BUSSINESS_NAME"));
table.setProdName(rs.getString("F_PROD_NAME"));
table.setIp(rs.getString("F_PARTY_ORDER_REQUEST"));
table.setSpName(rs.getString("F_CLIENT_NAME"));
table.setSpPasswd(rs.getString("F_CLIENT_PASSWD"));
return table;
}catch(SQLException sqle) {
throw new SQLException("error!"+sqle.toString());
}
}
}
DAO实现的代码如下:
public class OrderRequestDAOImpl extends JdbcDaoSupport implements IOrderRequestDAO {
private final OrderRequestMapper map = new OrderRequestMapper();
private final OrderRequestT table = new OrderRequestT();
private StringBuffer sql = new StringBuffer(); public List getOrderRequestList() {
sql.append("SELECT * FROM Table");
return getJdbcTemplate().query(sql.toString(),map);
} public class OrderRequestMapper implements RowMapper {
public Object mapRow(final ResultSet rs, int rowNum) throws SQLException {
try{
table.setMdn(rs.getString("F_MDN"));
table.setMerchantCode(rs.getString("F_MERCHANT_CODE"));
table.setProductCode(rs.getString("F_PRODUCT_CODE"));
table.setProductNum(Integer.parseInt(rs.getString("F_PRODUCT_NUM")));
table.setSpCode(rs.getString("F_SPCODE"));
table.setCreateTime(rs.getString("F_CREATE_TIME"));
table.setStat(rs.getString("F_STAT"));
table.setPartyName(rs.getString("F_PARTY_NAME"));
table.setBusinessName(rs.getString("F_BUSSINESS_NAME"));
table.setProdName(rs.getString("F_PROD_NAME"));
table.setIp(rs.getString("F_PARTY_ORDER_REQUEST"));
table.setSpName(rs.getString("F_CLIENT_NAME"));
table.setSpPasswd(rs.getString("F_CLIENT_PASSWD"));
return table;
}catch(SQLException sqle) {
throw new SQLException("error!"+sqle.toString());
}
}
}
解决方案 »
- 求助有关spring IOC和AOP的概念和实际应用。
- struts2标签问题
- getJSON为什么无法执行回调函数?
- 想用Lucene做一个局域网的搜索引擎,怎样实现呢?
- ssh找错对应的方法,很奇怪。在逻辑层能执行,在浏览器执行就找错对应的方法,而且action层对逻辑层的调用也是对的,请高手帮忙
- Myeclipse里面加入hibernate功能的问题
- struts中action类中设置setAttribute属性,在jsp页面中无法取出
- 急求 ftp文件下栽如何实现续传?
- Applet中用JDBC的问题
- jsp播放flv格式视频
- 现在,公司里面都是用MyEclipse哪个版本来开发呀?Spring、Hibernate、Struts这些哪个是主流术框架呀?
- ssh框架的hql问题
如close()什么的另一方面可以加大服务器的内存看看