使用JSTL进行简单的用户登录

时间:2014-07-31 09:26:15

标签: xml jsp servlets

我试图根据我在网上找到的教程创建一些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);
%>
  1. 由于我使用符号@WebSevlet,我是否需要在web.xml中创建servlet映射?我听说因为我们使用的是Servlet 3.0,所以我们不再需要web.xml文件了(我也尝试过使用web.xml,但它也不起作用)。
  2. 由于我在示例包中的login.java,我应该在表单操作中包含/ example / logina还是/ logina只要它与servlet urlPatterns匹配就可以了?
  3. 如果我的login.jsp在users文件夹下,servlet的urlPatterns怎么样?会是/ users / logina吗?

1 个答案:

答案 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");

一样