今天刚接触web,在用jsp和servlet做一个简单的登陆的时候在Form表单action属性和method属性的一些问题;
我遇到的是Form表单提交到servelet处理时遇到的问题:
(1)<form name="login" action="①?" method=“②?”>
//表单内容
username:<input type = "text" name = "username"> <br>
password:<input type = "password" name = "pwd"> <br>
<input type = "submit">
</form>
(2)相应的处理用户请求的servlet类为HelloServlet.java;
(3)配置web.xml文件:
<servlet>
<servlet-name>③servlet</servlet-name>
<servlet-class>/HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>③servlet</servlet-name>
<url-pattern>/①welcome</url-pattern>
</servlet-mapping>
然后在login.jsp中应该是:
<form action="①welcome" method="②?">
这种话login.jsp的url是http://localhost:8080/jsp/login.jsp
而HelloServlet.java的url是http://localhost:8080/jsp/welcome
在HelloServlet中能够取值
String name = "";
String pwd = "";
name = req.getParameter("username");
pwd = req.getParameter("pwd");
注:web.xml中③相应的两个servlet-name要一致;①中的url-pattern要与form表单中的action属性值一致 ;③ method方法默认是get方法,可是这样的方法会将值暴露在浏览器上,所以一般使用的是post方法,隐藏值内容;