用框架用多了,回过头来写最简单的jsp/servlet,页面请求时的action和web.xml里的配置都忘了,查了下资料,调试成功了,记录一下,发现其实很简单。
jsp页面表单如下:
这里action="StudentServlet" ,是相对路径,不能有"/",一开始我加了"/",总是调试部成功,唉。。。,多简单的一个问题啊。加了"/"就变成绝对路径了,这时请求应该写成:action="/工程名称/StudentServlet"。
以下是web.xml配置:
这里<url-pattern>中有"/",并不代表页面action那里也要有"/",因为你在请求的时候,实际地址里已经带了"/"即"http://localhost:8080/项目名称/"。
jsp页面表单如下:
<form action="StudentServlet" method="post">
<table>
<tr>
<td>用户名:</td>
<td><input type="text" name="username" /></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" name="password" /></td>
</tr>
<tr>
<td>密码确认:</td>
<td><input type="password" name="repassword" /></td>
</tr>
<tr>
<td colspan="2">
<input type="submit" name="submit" value="submit"/>
</td>
</tr>
</table>
</form>
这里action="StudentServlet" ,是相对路径,不能有"/",一开始我加了"/",总是调试部成功,唉。。。,多简单的一个问题啊。加了"/"就变成绝对路径了,这时请求应该写成:action="/工程名称/StudentServlet"。
以下是web.xml配置:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>s2sh</display-name>
<servlet>
<servlet-name>StudentServlet</servlet-name>
<servlet-class>
com.match.servlet.StudentServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>StudentServlet</servlet-name>
<url-pattern>/StudentServlet</url-pattern>
</servlet-mapping>
</web-app>
这里<url-pattern>中有"/",并不代表页面action那里也要有"/",因为你在请求的时候,实际地址里已经带了"/"即"http://localhost:8080/项目名称/"。