编程那点事编程那点事

专注编程入门及提高
探究程序员职业规划之道!

Servlet 响应数据

我们对上一个例子进行修改,将响应的结果告诉前端的用户,通常是通过req.setAttribute(“消息名称”, “消息内容”);,然后页面使用${消息名称}就能取到值。

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/login")
public class LoginServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        this.doPost(req, resp);
    }
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        // 获得用户名
        String userName = req.getParameter("userName");
        // 获得密码
        String userPassword = req.getParameter("userPassword");
        if (userName.equals("admin") && userPassword.equals("123456")) {
            // 把结果保存到请求中
            req.setAttribute("message", "验证通过");
        } else {
            // 把结果保存到请求中
            req.setAttribute("message", "验证失败");
        }
        // 转向
        req.getRequestDispatcher("index.jsp").forward(req, resp);
    }
}
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>index</title>
</head>
<body>
${message}
<form action="/login" method="post">
    用户名:<input type="text" name="userName" /><br>
    密码:<input type="password" name="userPassword" /><br>
    <input type="submit" value="提交" />
</form>
</body>
</html>

我输入的是用户名是admin,密码是123456,测试结果如下:

未经允许不得转载: 技术文章 » Java编程 » Servlet 响应数据

相关推荐