Servlet基础(how2j

1.getParmeter()方法 获取参数

import java.io.IOException;
 
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
  
public class LoginServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        //获取的name和password的值
        String name = request.getParameter("name");
        String password = request.getParameter("password");
  
  		//此处输出打印在控制台上
        System.out.println("name:" + name);
        System.out.println("password:" + password);
    }
}

2.利用PrintWriter对象在网页返回响应

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginServlet extends HttpServlet {
  
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
  
        String name = request.getParameter("name");
        String password = request.getParameter("password");
  
        String html = null;
  
        if ("admin".equals(name) && "123".equals(password))
            html = "<div style='color:green'>success</div>";
        else
            html = "<div style='color:red'>fail</div>";
  		
  		//利用response获取PrintWriter对象
        PrintWriter pw = response.getWriter();
        //打印响应值
        pw.println(html);
  
    }
  
}

3.调用流程

4.返回中文问题

//request 返回中文
request.setCharacterEncoding("UTF-8");

//response 返回中文 方式一
response.setContentType("text/html");
response.setCharacterEncoding("UTF-8");

//方式二
response.setContentType("text/html;character=UTF-8");

5.Servlet生命周期

生命周期

6.跳转

//request 请求转发
request.getRequestDispatcher("success.html").forward() 由下一个Servlet完成响应体
request.getRequestDispatcher("success.html").include() 由两个Servlet共同完成响应体
请求转发是服务器端行为

//response 重定向
response.sendRedirect("fail.html") 
重定向是浏览器端行为

请求转发和重定向的区别:
1.请求转发是一个请求一次响应,而重定向是两次请求两次响应
2.请求转发地址不变,而重定向会显示一个新的地址
3.请求转发只能转发本项目的Servlet,而重定向不知能重定向到本项目的Servlet还可以定向到其他项目
原创文章 34 获赞 8 访问量 1176

猜你喜欢

转载自blog.csdn.net/qq_46225886/article/details/105276981
今日推荐