改进代码以保存到DB

时间:2013-06-26 18:45:58

标签: java jsp servlets

我在JSP页面中有下面提到的代码。我能够将下面文本框中的所有值保存到DB。但是,我读取了servlet中的每个文本框名称(request.getParameter())以保存字段。是否可以改进此代码?例如:保存数组中某个特定列的所有值并保存到db。如是;请展示一个帮助我的例子。如果一行是空的,如何忽略。例如,用户只填充两行,其余行为空。我想只保存DB中的前两行。

<table class="cmn-table" id="t1" border="1" style="margin-left: 0.2em; margin-    right:0em">
 <col width="5%">
   <col width="18%">
   <col width="18%">
   <col width="18%">
   <col width="18%">
   <col width="18%">
  <tr>    
   <th>Sl.No</th>
   <th>Source IP Address</th>
   <th>Destination IP Address</th>
   <th>Service and Port (TCP, UDP, etc.)</th>
   <th>Start Date</th>
   <th>Expiration Date</th>
   </tr>
  <tr>
  <td style="align:center"> 1 </td>
 <td><input type="text" name="name" id="name" size="20"> </td>
  <td><input type="text" name="name1" id="name1" size="20"> </td>
  <td><input type="text" name="name2" id="name2" size="20"> </td>
  <td><input type="text" name="name3" id="name3" size="15"> <img src="../Image/cal.gif" id="" style="cursor: pointer;" onclick="javascript:NewCssCal('name3','MMddyyyy','dropdown',false,'12')" /></td>
  <td><input type="text" name="name4" id="name4" size="15"><img src="../Image/cal.gif" id="" style="cursor: pointer;" onclick="javascript:NewCssCal('name4','MMddyyyy','dropdown',false,'12')" /> </td>
  </tr>
   <tr>
  <td style="align:center"> <label> 2 </label> </td>
  <td><input type="text" name="name5" id="name" size="20"> </td>
  <td><input type="text" name="name6" id="name" size="20"> </td>
  <td><input type="text" name="name7" id="name" size="20"> </td>
  <td><input type="text" name="name8" id="name3" size="15"> <img src="../Image/cal.gif" id="" style="cursor: pointer;" onclick="javascript:NewCssCal('name3','MMddyyyy','dropdown',false,'12')" /></td>
  <td><input type="text" name="name9" id="name4" size="15"><img src="../Image/cal.gif" id="" style="cursor: pointer;" onclick="javascript:NewCssCal('name4','MMddyyyy','dropdown',false,'12')" /> </td>
  </tr>
   <tr>
   <td> <label> 3 </label> </td>
  <td><input type="text" name="name10" id="name" size="20"> </td>
  <td><input type="text" name="name11" id="name" size="20"> </td>
  <td><input type="text" name="name12" id="name" size="20"> </td>
 <td><input type="text" name="name13" id="name3" size="15"> <img src="../Image/cal.gif" id="" style="cursor: pointer;" onclick="javascript:NewCssCal('name3','MMddyyyy','dropdown',false,'12')" /></td>
  <td><input type="text" name="name14" id="name4" size="15"><img src="../Image/cal.gif" id="" style="cursor: pointer;" onclick="javascript:NewCssCal('name4','MMddyyyy','dropdown',false,'12')" /> </td>
  </tr>
   <tr>
   <td> <label>4 </label> </td>
  <td><input type="text" name="name15" id="name" size="20"> </td>
  <td><input type="text" name="name16" id="name" size="20"> </td>
  <td><input type="text" name="name17" id="name" size="20"> </td>
 <td><input type="text" name="name18" id="name3" size="15"> <img src="../Image/cal.gif" id="" style="cursor: pointer;" onclick="javascript:NewCssCal('name3','MMddyyyy','dropdown',false,'12')" /></td>
  <td><input type="text" name="name19" id="name4" size="15"><img src="../Image/cal.gif" id="" style="cursor: pointer;" onclick="javascript:NewCssCal('name4','MMddyyyy','dropdown',false,'12')" /> </td>
  </tr>
     <tr>
    <td> <label>5 </label> </td>
  <td><input type="text" name="name20" id="name" size="20"> </td>
  <td><input type="text" name="name21" id="name" size="20"> </td>
  <td><input type="text" name="name22" id="name" size="20"> </td>
  <td><input type="text" name="name23" id="name3" size="15"> <img src="../Image/cal.gif" id="" style="cursor: pointer;" onclick="javascript:NewCssCal('name3','MMddyyyy','dropdown',false,'12')" /></td>
  <td><input type="text" name="name24" id="name4" size="15"><img src="../Image/cal.gif" id="" style="cursor: pointer;" onclick="javascript:NewCssCal('name4','MMddyyyy','dropdown',false,'12')" /> </td>
  </tr>

</table>

1 个答案:

答案 0 :(得分:1)

据我所知,你想摆脱在所有输入字段上调用request.getParameter。

为什么不在下面使用:

request.getParameterMap()

这为您提供了所有参数名称和值的映射。因此,您可以遍历映射,并且映射中的键是参数名称,该键的值是该参数的值。它是对地图的简单迭代。在遍历地图时,您实际上可以根据其他检查(如空检查)准备数据库查询。