jsp如何实现多种条件查询

jsp如何实现多种条件查询,第1张

你可以把查询条件写在一个实体类里面。在执行查询的时候进行sql拼接的方式过滤查询条件。例如:查询 jsp页面上面有 用户名[uname],年龄[age],性别[sex] 这些查询内容,填写什么查什么的话,你就可以建一个 User实体类 里面包含这些字段 然后写sql :

StringBuffer sb =new StringBuffer("select * from user u")

User user=UserDao.User()

Boolean flag=false

if(null!=user.getAge()&&""!=user.getAge()){

sb.append(" where u.name= "+user.getAge())

flag=true

}

if(null!=user.getAge()&&""!=user.getAge()){

if(flag){

sb.append( and u.age= "+user.getAge())

}else

sb.append(" where u.age= "+user.getAge())

flag=true

}

if(null!=user.getSex()&&""!=user.getSex()){

if(flag){

sb.append(" and u.sex= "+user.getSex())

}else

sb.append(" where u.sex= "+user.getSex())

flag=true

}

实现思路还有很多 ,不过你要用hibernate来实现的话会更简单,你可以到网上查查。。。

希望可以帮到你,谢谢

}

示例:

JSP 页面中:<input name = "username">

后台 :String sql = "select * from user where username =?"//从用户表中查询指定用户名的数据

取得文本框中的值:String name = requset.getParameter("username")

然后取得connection对象 conn

Preparestatement pstmt = conn.preparestatement()

pstmt.setString(1,name)//拼接sql语句成为:select * from user where username =(name的值)

最后执行sql语句

把值传到后台之后通过set再传回来,前台下拉列表就应该写成动态的形式了,使用<s:if><s:if/>标签判断,对应的将其selected属性设为true就可以了。

例如:

<s:if test="bhlx=='档案编号'">

<option value='1' selected="selected">档案编号</option>

<option value='2'>姓名</option>

<option value='2'>号</option>

<s:if/>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11868278.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存