Servlet处理Http请求

Http请求

  • 新建动态web项目
  • 部署项目
  • 浏览器浏览
  • 服务器获取请求参数
  • 实现HTML到Servlet的两种映射方式
  • Servlet中文问题
  • Servlet跳转

一、新建动态web项目

1、新建动态web
2、新建一个Servlet
3、添加Servlet架包
4、新建一个用于登录的HTML文件,该文件必须置于web目录下,Tomcat默认WEB-INF目录下的文件不可访问
4、在WEB-INF目录下配置web.xml,实现HTML文件到Servlet的映射

 HelloServlet
 HelloServlet
 
 
 HelloServlet
 /hello
 

二、部署项目

1、选中整个项目方式

①、配置Tomcat服务器

②、单击项目,以服务器方式运行

③、跳转到页面后显示404(因为此时URL为:localhost:/项目名称/,如:http://localhost/j2ee/),要手动添加请求页面在访问

2、只选中请求页面方式

①、单击对应的请求页面(一般是HTML文件),以服务器方式运行

②、可见跳转到浏览器之后,自动显示请求页面:http://localhost/j2ee/login.html

三、浏览器请求

1、请求的URL为:localhost:/项目名称/请求页面
2、若出现页面不可正常显示,排查:

①、查看服务器端口

②、web.xml中地址映射是否正确

③、是否有具体要跳转的页面

3、注意请求方法

四、服务器获取请求参数

1、根据Http请求方式获取请求参数
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 String name=req.getParameter("name");
 String password=req.getParameter("password");
 System.out.println(name);
 System.out.println(password);
 }
2、注意传参与form表单的name属性值相同
账号:
密码:

3、案例

LonginServlet.java

import java.io.IOException;
import java.io.PrintWriter;
​
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
​
@WebServlet({ "/LoginServlet", "/login" })
public class LoginServlet extends HttpServlet {
 @Override
 protected void doPost(HttpServletRequest req, HttpServletResponse resp) 
 throws ServletException, IOException {
  
 req.setCharacterEncoding("utf-8");//告诉服务器已utf-8解码
 resp.setCharacterEncoding("UTF-8");//以utf-8编码方式响应
  
 String name=req.getParameter("name");
 String password=req.getParameter("password");
 System.out.println(name);
 System.out.println(password);
​
 String html;
 if(name.equals("AlexanderBai")&&password.equals("123456")) {
 req.getRequestDispatcher("success.html").forward(req, resp);
 }else {
 resp.sendRedirect("fail.html");
 }
 }
}

longin.html





登录页面


   
账号: 密码:

success.html

login success

fail.html

login fail

4、过程路径

你可能感兴趣的:(Servlet处理Http请求)