根据前端页面选择的不同查询条件进行查找
- 将所需要的查询条件传给响应的Servlet,进行判断,根据条件进行SQL语句的拼接
...
Connection con = null;
PrapareStatement st = null;
ResultSet rs = null;
...
public void query(String username,int id,String content){
StringBuilder sql = new StringBuilder("select * from tables where 1=1 ");//where 1=1 是为了拼接查询条件
//根据查询条件拼接SQL语句
if(username!=null&&!username.trim().equals("")){
sql.append(" and username=? ");
}
if(id!=null&&id!=0){
sql.append(" and id=? ");
}
if(content!=null&&!content.trim().equals("")){
sql.append(" and content=? ");
}
st = conn.prepareStatement(sql);
int index = 1;
//为预编译语句赋值
if(username!=null&&!username.trim().equals("")){
st.setString(index++,username);
}
if(id!=null&&id!=0){
sql.append(" and id=? ");
st.setInt(index++,id);
}
if(content!=null&&!content.trim().equals("")){
st.setString(index++,content);
}
rs = st.executeQuery();
}