我目前正在尝试了解其他人的jsp代码,但我遇到以下代码时出现问题:
if( request.getParameter("username")!=null &&
!request.getParameter("username").equals(""))
用户名是用户填写HTML表单的字段。这些代码之后的代码将用户填写的数据保存到字符串中,这些字符串稍后将用于其他目的。
我的问题是上面!request.getParameter("username").equals("")
代码部分的目的是什么?
是否有request.getParameter("username")!=null
部分代码尚未经过测试,用户是否将信息输入HTML表单的输入字段?
此致
答案 0 :(得分:1)
如果你发现了像
这样的请求http://.../yourservlet
然后参数值将为null,因为根本没有传递名为username的参数。
如果你发现了像
这样的请求http://.../yourservlet?username=
然后参数值将是空字符串,因为传递了参数,但它的值是空字符串。
您将收到的内容取决于HTML以及用户实际执行的操作(例如,他可以在地址栏中手动键入URL)。代码确保两个案例都以相同的方式处理。让我们假设页面中的某些JavaScript禁用了输入字段,或者在选中某个复选框时将其从DOM中删除。在这种情况下,根本不会发送参数。
答案 1 :(得分:0)
请求.getParameter("用户名")!= null尚未测试的部分代码是否用户是否在HTML表单的输入字段中输入信息?
没有。 HTML表单中的文本输入将始终发送值。如果没有输入任何内容,那么该值将为""
。