Authentication 如何在Java/JSP中隔离身份验证和用户注册
在RegServlet类中,我有一个覆盖Authentication 如何在Java/JSP中隔离身份验证和用户注册,authentication,servlets,login,Authentication,Servlets,Login,在RegServlet类中,我有一个覆盖doStuff()方法的doGet()方法doStuff()方法从HTML注册表单获取用户输入,然后连接到数据库,然后将用户输入存储到数据库中 下面是我的RegServlet类中的doStuff()方法: public void doStuff(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException, Instantiati
doStuff()
方法的doGet()
方法doStuff()
方法从HTML注册表单获取用户输入,然后连接到数据库,然后将用户输入存储到数据库中
下面是我的RegServlet类中的doStuff()
方法:
public void doStuff(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException, InstantiationException, IllegalAccessException, SQLException {
String userName = request.getParameter("userName");
...
String email = request.getParameter("email");
if(!userName.isEmpty()&&!passWord.isEmpty()) {
request.setAttribute("userName", userName);
...
request.setAttribute("email", email);
//connect to DB
toDB.createConnection();
//insert information to DB
toDB.insertNewUser(userName, passWord, lastName, firstName, age, sex, email);
RequestDispatcher view = request.getRequestDispatcher("login.jsp");
view.forward(request, response);
} else {
RequestDispatcher view = request.getRequestDispatcher("index.jsp");
view.forward(request, response);
}
如果在正确输入所有内容后单击register按钮,它将引导我进入login.jsp页面。我现在尝试编写登录机制代码,以便用户(拥有数据库中存储的用户名和密码)登录、搜索和添加/删除课程
我有一段艰难的时间,因为我不知道我应该如何去做这件事
如何隔离用户注册和身份验证?我应该为会话管理创建另一个类,还是在这个RegServlet类中创建另一个方法?实现您自己的HTTPServletFilter,用于检查用户是否经过身份验证:
public void doFilter(ServletRequest req, ServletResponse res, FilterChain filterChain) throws IOException, ServletException {
if ("a user is authenticated") {
filterChain.doFilter(req, res);
} else {
// authenticate a user
}
}
该链接显示HTTPServletFilter的基本功能:
实现您自己的HTTPServletFilter,用于检查用户是否经过身份验证:
public void doFilter(ServletRequest req, ServletResponse res, FilterChain filterChain) throws IOException, ServletException {
if ("a user is authenticated") {
filterChain.doFilter(req, res);
} else {
// authenticate a user
}
}
该链接显示HTTPServletFilter的基本功能:
谢谢你,迈克尔。那么这是否应该在与
doStuff()方法相同的类中实现呢?或者其他课程?请看我在答案中添加的链接。HTTPServletFilter是不同于HTTPServlet的组件doStuff()
在HTTPServlet中,但是doFilter
在HTTPServletFilterThanks中,Michael。那么这是否应该在与doStuff()方法相同的类中实现呢?或者其他课程?请看我在答案中添加的链接。HTTPServletFilter是不同于HTTPServlet的组件doStuff()
在HTTPServlet中,但doFilter
在HTTPServletFilter中