将数据库的表写入JTable里,显示TableDTO返回值为空。可能是SQL语句写错了,但是找不到错误。下面是我写的将数据库的数据写入JTable中
public class VcdServiceImpl implements VcdService{
@Override
public TableDTO retrieveVcds(VcdRequest request) {
StringBuilder sql = new StringBuilder();
sql.append("select * from sm_vcd ");
if(request.getSearchKey() != null && !"".equals(request.getSearchKey().trim())){
sql.append("where sm_name like '%"+request.getSearchKey().trim()+"%' ");
}
sql.append("order by sm_num desc limit ").append(request.getStart()).append(",").append(request.getPageSize());
Connection conn=null;
PreparedStatement ps=null;
ResultSet rs=null;
TableDTO returnDTO=new TableDTO();
try{
conn= DBUtil.getConn();
ps= conn.prepareStatement(sql.toString());
rs=ps.executeQuery();
//查询记录
returnDTO.setData(fillData(rs));
sql.setLength(0);
sql.append("select count(*) from sm_vcd ");
if(request.getSearchKey() != null && !"".equals(request.getSearchKey().trim())){
sql.append("where sm_name like '%"+request.getSearchKey().trim()+"%'");
}
ps= conn.prepareStatement(sql.toString());
rs= ps.executeQuery();
while(rs.next()){
int count=rs.getInt(1);
returnDTO.setTotalCount(count);
}
return returnDTO;
}catch (Exception e){
}finally {
DBUtil.closers(rs);
DBUtil.closePs(ps);
DBUtil.closeConn(conn);
}
return null;
}
private Vector> fillData(ResultSet rs) throws SQLException {
Vector> data=new Vector<>();
while (rs.next()){
//处理查出的每一条记录
Vector