我试图根据我在网上找到的教程创建一些java Servlet文件。现在,我想创建一个简单的登录,但我一直得到HTTP:// 404。
LoginServlet.java
package example;
@WebServlet(name = "logina", urlPatterns = { "/logina" })
public class Login extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throwsServletException, IOException {
String a = request.getParameter("username");
String result;
if("a".equals(a)) {
result = "good";
} else {
result = "bad";
}
request.setAttribute("result", result);
RequestDispatcher rd = request.getRequestDispatcher("login.jsp");
rd.forward(request, response);
}
}
的login.jsp
<form action="/example/logina" method="post">
<input type="text" name="username">
<input type="submit" name="submit" value="submit">
</form>
<%String rq = request.getParameter("result");
out.println(rq);
%>
答案 0 :(得分:0)
由于我使用符号@WebSevlet,我是否需要在web.xml中创建servlet映射?我听说因为我们使用的是Servlet 3.0,所以我们不再需要web.xml文件了(我也尝试过使用web.xml,但它也没有用)。
不,你不需要它是注释的目的
操作中的由于我的login.java在示例包中,我应该包含 表单action / / logina中的/ example / logina只要它就可以了 与servlet urlPatterns匹配?
url
必须与您的servlet urlPatterns
如果我的login.jsp在用户之下,servlet urlPatterns的外观如何 夹?它会是/ users / logina
要理解这一点,您应该像RequestDispatcher rd = request.getRequestDispatcher("users/login.jsp");