数据库条件查询
为什么加where 1=1,是为了让前面的where作为第一查询条件,不管后面and是否有值,都作为第二条件。
//封装查询条件 TODO 待使用
public String getUser(Integer id,String username,String email){
//通用写法
StringBuffer sql = new StringBuffer(" select * from user where 1=1");
if(id !=null){
sql.append(" and id = "+id);
}
if(username!=null && !username.equals("")){
sql.append(" and username like '%"+username+"%' ");
}
if(email!=null && !email.equals("")){
sql.append(" and email like '%"+email+" %' ");
}
return sql.toString();
}
public static void main(String[] args) {
String sql = new PageDao().getUser(null, "tom", null);
System.out.println(sql);
}