Java Web开发中信息查询方法综述
本文概述了Java Web开发中的信息查询方法。分享给大家参考。具体如下:
这里介绍的查询方法有:
(1)根据特定字段查询;多字段查询;根据任意字段查询;任意字段的组合查询;多值查询。
根据特定字段进行查询。
在用户输入界面输入需要查询的字段值,系统会根据该值进行搜索。下面的例子是根据用户名查询用户的详细信息。简单的渲染如下:
关键代码如下:
p请输入要查询的名称:/p formaction=' select . JSP ' method=' post ' pin put type=' text ' name=' username ' size=' 20 ' input type=' submit ' value=' submit ' name=' B1 ' input type=' reset ' value='重写all '。
“%@”页面内容类型=' text/html;charset=GB 2312“% % StringBuffer SQL=new StringBuffer();//查询字符串字符串username=request . getparameter(' username ');//查询条件if(username==null | | username . length()==0){ out . println('请输入查询条件!'。);} else { sql.append('从用户名类似''的用户中选择*);sql.append(用户名);SQL . append(' ' ');}//接下来,根据上面生成的sql进行查询。%这里主要关心SQL语句,查询过程和显示过程参考其他主题。以上是准确的查询,可以进行模糊查询,比如可以查询用户名包含某个词的用户的信息。
只需要修改代码中的查询语句,修改后的代码如下:
sql.append('从用户名为“%”的用户中选择*);sql.append(用户名);SQL . append(' % ' ');只添加了模糊查询的通配符“%”。如果您想从某个东西开始,可以删除它前面的通配符,如果查询以某个东西结束,可以删除后面的同音异义词。在多个字段中查询。
假设有一个关于Java技术的BBS,每个记录都有标题、摘要、内容等字段。在这里,我们忽略了其他领域。如果用户想检查编码问题,他希望他在标题、摘要和内容中输入的所有信息都能被查询到。此时,他需要在多个字段中进行查询。
关键代码如下:
p请输入要查询的关键字:/p formaction=' select . JSP ' method=' post ' pinput type=' text ' name=' condition ' size=' 20 ' input type=' submit ' value=' submit ' name=' B1 ' input type=' reset ' value='全部重写'。
“%@”页面内容类型=' text/html;charset=GB 2312“% % StringBuffer SQL=new StringBuffer();//查询字符串string condition=request . getparameter(' condition ');//查询条件if(条件==null | | condition . length()==0){ out . println('请输入查询条件!'。);} else { sql.append('从标题类似“%”的用户中选择*);sql.append(条件);SQL . append(“%”和类似“%”的摘要);sql.append(条件);SQL . append(“%”和类似“%”的细节);sql.append(条件);SQL . append(' % ' ');}//然后根据上面生成的sql进行查询。%根据任何字段进行查询。
您可以让用户选择根据什么进行查询,然后输入要查询的值。这样的查询比较复杂,但是对用户来说是最方便的。
处理文件:
“%@”页面内容类型=' text/html;charset=GB 2312“% % StringBuffer SQL=new StringBuffer();//查询字符串string condition=request . getparameter(' condition ');//查询的字段字符串v=request . getparameter(' v ');//查询if的值(v.length()==0) {out.println('请输入查询条件!'。);} else { sql.append('从用户位置选择* ');//根据用户选择的字段if(condition . equals(' a '))SQL . append(' a like ' ')进行处理;else if(condition . equals(' b '))SQL . append(' b like ' ');else SQL . append(' c like ' ');SQL . append(v);SQL . append(' ' ');/*如果界面下拉列表中的条件是数据库中字段的名称,那么上面的代码会很简单:SQL . append(‘从user where中选择*即可’);sql.append(条件);SQL . append(' like ' ');SQL . append(v);SQL . append(' ' ');*/}//然后根据上面生成的sql进行查询,也就是%任意组合的查询。
因此,列出了所有可以查询的字段,每个字段对应一个输入框。用户可以根据某个字段或者几个字段进行查询,根据需要查询什么,在相应的输入框中输入信息。
正在处理查询文件:
“%@”页面内容类型=' text/html;charset=GB 2312“% % StringBuffer SQL=new StringBuffer();//查询字符串字符串a=request . getparameter(' a ');字符串b=request . GetParameter(' b ');字符串c=request . GetParameter(' c ');字符串d=request . GetParameter(' d ');//获取用户输入的查询条件SQL . append(' select * from user where ');if(a.length()!=0){ SQL . append(' a like ' ');SQL . append(a);sql.append(' '和');} if(b.length()!=0){ SQL . append(' b like ' ');SQL . append(b);sql.append(' '和');} if(c.length()!=0){ SQL . append(' c like ' ');SQL . append(c);sql.append(' '和');} if(d.length()!=0){ SQL . append(' d like ' ');SQL . append(d);sql.append(' '和');} sql.trim(sql.length-3,3);//删除最后四个字母('和')//然后按照上面生成的sql进行查询,也就是%多值查询。
用户可以通过在单个输入框中输入多个数据进行查询,例如,查询主题中既有“java”又有“C”的记录,或者是一个数字范围,例如,19到22岁之间的记录,或者是一个时间范围,例如,1981年1月1日到1983年12月31日之间出生的记录。
这里只介绍按数字区间搜索,其他情况的实现基本相同。
处理文件:
“%@”页面内容类型=' text/html;charset=GB 2312“% % StringBuffer SQL=new StringBuffer();//查询字符串string condition=request . getparameter(' condition ');//获取查询条件int index=condition . indexof(');//找到空格的位置,空格是两个数字的分隔符。字符串最小值=条件。子串(1,索引);//前一个值string max=condition . substring(index 1,condition . length-1);//以下值尝试{ integer . parsent(min);integer . ParSeint(max);}catch(异常e) {out.println('输入的信息非法!');返回;} sql.append('从年龄介于之间的用户中选择*);SQL . append(min);sql.append('和');SQL . append(max);//构造查询字符串//然后根据上面生成的sql进行查询。%希望这篇文章对大家的JSP编程有所帮助。
版权声明:Java Web开发中信息查询方法综述是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。