大家好,又见面了,我是你们的朋友全栈君。
HttpServletRequset:请求报文
代表:浏览器请求时的请求报文,请求到达服务器服务器将报文解析封装为这个对象
获取:请求到服务器是,服务器直接创建然后传入到servlet方法中,最终传入到doget中
作用:获取请求报文中的所有数据
1、获取请求参数【input表单项提交的数据】
2、获取url地址中的所有数据
3、获取请求转发器转发请求
转发特点:
》通过request对象发起的
》转发后的地址栏地址没有改变
》浏览器只发起了一次请求,最终显示的是转发后的界面
》浏览器不知道转发的发生
》服务器内部有两个资源文件处理了请求
案例:
用户在login.html携带账户密码提交登陆请求,请求交给LoginServlet处理
如果账户密码正确,转发到登录成功界面
建立一个servlet名为LoginServlet
代码语言:javascript复制package com.wangxizhuang.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class LoginServlet
*/
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//获取用户参数
String username = request.getParameter("username");
String password = request.getParameter("password");
System.out.println(username "--" password);//打印参数
if("admin".equals(username)&&"123456".equals(password)) {
request.getRequestDispatcher("1.html").forward(request, response);//转发
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
建立一个登陆界面 Login.html
代码语言:javascript复制<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="LoginServlet" >
账户:<input type="text" name="username"><br>
密码:<input type="text" name="password"><br>
<input type="submit" value="登陆">
</form>
</body>
</html>
建立一个转发后的页面 1.html
代码语言:javascript复制<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
恭喜你登陆成功了!!!!!
</body>
</html>
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/139541.html原文链接:https://javaforall.cn