我的servlet就像这样
@WebServlet(name = "login", urlPatterns = {"/login"})
public class login extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
password = Base64.encode(password.getBytes());
User user = new User();
user.setUsername(username);
user.setPassword(password);
user.getLoggedIN();
}
根据这个servlet,我可以使用“登录”并将GET或POST数据发送到此服务器,这是完全可以的 我的问题是,有没有办法可以使用这个servelt并指导不同的请求。 例子
我不知道这是可能的!
答案 0 :(得分:3)
SignOut
和Login
按钮的名称。
因此,当您点击其中一个时,在Servlet
您可以查看哪个
实际上是通过调用button
来点击request.getParameter()
按钮名称,然后将请求转发给适当的方法.. 所以,在你的servlet
,你可以拥有这种代码: -
if (request.getParameter("LoginButton") != null) {
// Forward to login method
} else if(request.getParameter("SignOutButton") != null) {
//Forward to signout method..
}
Button
的名称作为Query
String
发送...然后您可以从该查询中获取servlet
中的名称
使用request.getParameter()
所以查询字符串如下所示:
http://localhost:8080/yourServlet?action=Login
http://localhost:8080/yourServlet?action=SignOut
答案 1 :(得分:1)
我在类似情况下所做的工作如下:
我知道这是非常基本的,但希望它会有所帮助。
答案 2 :(得分:0)
添加其他模式。检查每种请求类型唯一的请求参数,或者您也可以使用“request.getRequestURI”方法验证它是登录还是路标请求
答案 3 :(得分:-1)
根据我们正在使用的一般情景说明 用于将要处理的数据(例如,从HTML表单)提交到所识别的资源。数据包含在请求正文中。这可能会导致创建新资源或更新现有资源或两者。
因此,在UI中,您将插入数据和您也可以看到的特定数据 在数据库中。 在您的代码中
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
password = Base64.encode(password.getBytes());
User user = new User();
user.setUsername(username);
user.setPassword(password);
user.getLoggedIN();
仅获取您正在设置的数据。 或者你可以使用
if(user!=null){
//在这里,您可以将您的请求转发到某处。 }