用集合輸出怎么報(bào)錯(cuò)了?Unknown column '?€??§‘????–??€?' in 'where clause'
public List<Goddes> query(List<Map<String, Object>>params) throws Exception{
?? ??? ?List<Goddes>result=new ArrayList<Goddes>();
?? ??? ?
?? ??? ?Connection cnn=DbUtil.getConnection();
?? ??? ?StringBuilder sb=new StringBuilder();
?? ??? ?sb.append(" select*from yingxiong? where 1=1 ");
?? ??? ?
?? ??? ?if(params!=null&¶ms.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=cnn.prepareStatement(sb.toString());
?? ??? ?
?? ??? ??? ??? ?System.out.println(sb.toString());
?? ??? ?ResultSet rs=ptmt.executeQuery();
?? ??? ?Goddes g=null;
?? ??? ?while(rs.next()){
?? ??? ??? ?g=new Goddes();
?????? ??? ?g.setId(rs.getInt("id"));
?????? ??? ?g.setname(rs.getString("name"));
?????? ??? ?g.setSex(rs.getString("sex"));
?????? ??? ?g.setAge(rs.getInt("age"));
???????? result.add(g);
?? ??? ?}
?? ??? ?return result;
??? }
2018-03-10
應(yīng)該是項(xiàng)目的字符集不對(duì),SQL 語(yǔ)句拼接時(shí)遇到了漢字的亂碼。可將項(xiàng)目字符集修改為UTF-8試下。