首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

50分乞援!怎样获取表单参数拼接成sql语句

2011-11-21 
50分求助!急!怎样获取表单参数拼接成sql语句?我的jsp页面上有这样一个表单,是用来实现多条件查询的,但是不

50分求助!急!怎样获取表单参数拼接成sql语句?
我的jsp页面上有这样一个表单,是用来实现多条件查询的,但是不知道怎样将表单的参数获取到,并且拼接成一个完整的sql语句,还请高手帮忙看一下,最好给出代码,一定给分!
<form     method= "POST "   action= "sql.jsp "   >
<input   type= "hidden "   name= "action "   value= "compoundSearch ">  
<input   type= "button "   name= "add_line "   value= "增加条件 "   onClick= "AddFieldInput() "   >
<input   type= "button "   name= "add_line "   value= "减少条件 "   onClick= "DeleteFieldInput() "   >
  <input   type= "button "   value= "搜索 "   name= "tj "   onClick= "checkstrSQL(); "   >
<!--   该图层用于组合查询界面-->
    <div   id= "selectData ">
    <div   id= "selectItem "   >  
      <table>
                      <tr>
                        <td     align= "center "   width= '40% '> 数据字段 </td>
                        <td     width= '15% '   align= "center "> 操作符 </td>
                        <td     width= '30% '   align= "center "> 取值 </td>
                        <td     width= '15% '   align= "center "> 关系 </td>
                      </tr>        
                  <tr   bgcolor= "#FFFFFF ">                            
                  <td   align= "center "     width= '40% '>
                      <select   id= "selectField "   size= "1 "   name= "selectField ">
                      <option   value= "A.user_id "> 编号 </option>
                      <option   value= "A.user_name "> 登录名 </option>
                      <option   value= "DateField:A.reg_date "> 注册时间 </option>
                                                                           
                      </select>
                      </td>
                        <td   align= "center "     width= '15% '>
                          <select     size= "1 "   name= "selectOpration "   >


                                <option   value= "LIKE "> 包含 </option>
                                <option   value= "= "> 等于 </option>
                          </select> </td>
                        <td   align= "center "     width= '30% '>   <input   type= "text "   name= "selectValue "   size= "15 "     value= " "> </td>
                        <td   al>   <select   size= "1 "   name= "selectRelation ">
                                <option   value= "AND "> 并且 </option>
                                <option   value= "OR "> 或者 </option>
                            </select> </td>
                    </tr>
                  </table>    
          </div>              
    </div>
              </form>

[解决办法]
用request.getParameterValues()
因为你的parameter是同名的,所以每个名字都会有一个数组的值

[解决办法]
我考虑的是你增加条件只是增加"取值"那个控件,不知道楼主是这种情况不。。。

我的Demo是用的两个页面,第一个页面和你的jsp页面差不多,第二个页面用来生成SQL语句。
在第二个页面中,使用获取多个"取值"控件的值,接下来是生成SQL语句
1:获取第一个jsp页面中的值
String Field = request.getParameter("selectField");
String Opration = request.getParameter("selectOpration");
String[] Value = request.getParameterValues("selectValue");
String Relation = request.getParameter("selectRelation");
2:生成SQL语句
<%
String sql = "SELECT * FROM A WHERE " + Field + " " + Opration + " " + Value[0];
%>
<% for (int i=1;i<Value.length-1;i++) { %>
sql = sql + " " + Relation + " " + Field + " " + Opration+ " " + Value[i];
<% }%>

<%=sql %>

这样SQL语句就出来了。。。
[解决办法]
用+链接你的sql语句就可以了

热点排行