为了账号安全,请及时绑定邮箱和手机立即绑定

通过id可以查询到我想要的数据 但是输出的id总是0或者1

求大神帮帮忙 数据库检查了没问题 不知道代码有啥问题呢 

public List<Goddess> query(List<Map<String,Object>> params) throws Exception {

//查询女神 可能返回多个女神 所以创建一个List

Connection conn =DBUtil.getConnection();

//3.通过数据库的连接操作数据库 实现增删改查

StringBuilder sb = new StringBuilder();

sb.append(" select * from database.imooc_goddess where 1=1 "); //小技巧 1=1肯定成立

if(params!=null&&params.size()>0) {

for(int i=0; i<params.size(); i++) {

Map<String,Object> map = params.get(i);

//查询什么?关系是什么?值是什么 都能传进来

sb.append(" and  " + map.get("name") + " " + map.get("rela") + " "+ map.get("value") + " " ); 

}

}

PreparedStatement ptmt = conn.prepareStatement(sb.toString());

System.out.println(sb.toString());

ResultSet rs = ptmt.executeQuery(); //返回一个ResultSet

List<Goddess> gs = new ArrayList<Goddess>();

Goddess g = null;

while(rs.next()) {  //看下一个是否为空 如果true则有下一个

g = new Goddess();

g.setId(rs.getInt("id"));

g.setUser_name(rs.getString("user_name"));

g.setAge(rs.getInt("age"));

g.setSex(rs.getInt("sex"));

g.setBirthday(rs.getDate("birthday"));   //从数据库传过来的sql的类型再转为util不需要转 因为util是父集

g.setEmail(rs.getString("email"));

g.setMobile(rs.getString("mobile"));

g.setCreate_date(rs.getDate("create_date"));

g.setCreate_user(rs.getString("create_user"));

g.setUpdate_date(rs.getDate("update_date"));

g.setUpdate_user(rs.getString("update_user"));

g.setId(rs.getInt("isdel"));

gs.add(g);

}

return gs;

}



public class TestAction {


public static void main(String[] args) throws Exception {

// TODO Auto-generated method stub

GoddessAction action = new GoddessAction(); 

//新增

Goddess g = new Goddess();

g.setUser_name("Stark");

g.setSex(1);

g.setAge(299);

g.setBirthday(new Date());

g.setEmail("tonystark@yahoo.com");

g.setMobile("13871445748");

g.setIsdel(0);

g.setId(9);

// action.add(g);

// action.edit(g);

// action.del(9);

List<Map<String, Object>>params = new ArrayList<Map<String, Object>>();

Map<String, Object>map = new HashMap<String, Object>();

map.put("name", "id");

map.put("rela", "=");

map.put("value",5);

params.add(map);

List<Goddess> result =action.query(params);

for (Goddess goddess : result) {

System.out.println(goddess.toString());

}


}


}



正在回答

1 回答

举报

0/150
提交
取消

通过id可以查询到我想要的数据 但是输出的id总是0或者1

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信