Java 空白表单文本框

Java 空白表单文本框,java,Java,我正在重新填充一个表单字段,该字段是用户以前在HTTP中使用会话填写的。我通过servlet从表单中获取字段: //On servlet String polyNum = request.getParameter("policyNum") session.setAttribute("policyNum", polyNum); //On JSP <td align = "right"><font color = "#FF0000">*</font><fo

我正在重新填充一个表单字段,该字段是用户以前在HTTP中使用会话填写的。我通过servlet从表单中获取字段:

//On servlet
String polyNum = request.getParameter("policyNum")
session.setAttribute("policyNum", polyNum);

//On JSP
<td align = "right"><font color = "#FF0000">*</font><font face= "Calibri, Arial" size = "3"> Policy #:</font></td>
<td><input type="text" name= "policyNum" size="19" tabindex = "1" value="
<% out.println(session.getAttribute("policyNum");%>">
//在servlet上
String polyNum=request.getParameter(“policyNum”)
setAttribute(“policyNum”,polyNum);
//关于JSP
*政策#:
问题是:当我运行JSP页面时,表单的文本框中会出现一个前导空格。因此,每当我提交表单时,空白也会被插入到数据库中

有什么想法吗?非常感谢您的帮助。

请查看String类中的.trim()方法:


“返回字符串的副本,省略前导和尾随空格。”

您可以按如下方式修剪它:

String polyNum = request.getParameter("policyNum");
polyNum = polyNum == null ? null : polyNum.trim();
session.setAttribute("policyNum", polyNum  );
如果您的jsp看起来像

<input type ="text" value="
<%= session.getAttribute( "policyNum" ); %>
"/>

您将得到空白


此外,您也不会显示在数据库中输入的位置。

Apache Commons StringUtils库非常适合修剪,因为它可以处理空值

所以

可以成为

String polyNum = StingUtils.stripToEmpty(request.getParameter("policyNum"));

结果证明,我的jsp页面中的scriplets是按句法错误放置的。我根本不需要删去空格。我的表格现在很好用


您关于Apache库的解决方案很有趣,Damo。感谢您的反馈。

我尝试过修剪方法,但没有成功。如果表单的文本框中有空格,那么我是否需要在jsp中使用trim方法?很高兴您找到了答案。我很好奇他们前后的样子。为了完整起见,你能把它贴出来吗?
String polyNum = StingUtils.stripToEmpty(request.getParameter("policyNum"));