1. session

//a页面

    <% request.getSession().setAttribute("key","session");%>
<%=session.getId() %>
<a href="requestPage.jsp">点击</a>
//跳转页面
<%=session.getAttribute("key")%>
<%=session.getId() %>
getSession()      //创建session对象,用requst对象调用,参数:true:自动创建,false:不创建

session.getId()  //获取session的id
session.setMaxInactiveInterval(1*60*60)  //设置session自动销毁时间,以秒为单位,这里是1小时 session.setAttribute("session", "12345678");   //往session域存储数据,object类型 session.getAttribute("session");  //取数据,取出是object类型
session.removeAttribute(“session”);  //删除session域中指定的数据

         2. request

通过该对象获取用户提交的信息 request.getParameter();

该对象包含了当前用户请求的上下文,包括表单信息,传递的参数信息等

还可以通过次对象获取session对象
HttpSession session=request.getSession();

本页面即可获得数据:

<form >
姓名:<input type="text" name="name" length="20">
账号:<input type="text" name="id" length="20">
<input type="submit" value="go"><br>
</form>
<%=request.getParameter("name") %><br>
<%=request.getParameter("id") %><br>
<%! String a,b; %>
<% if (request.getParameter("name")==null){
a=request.getParameter("name");
}
if (request.getParameter("id")==null){
b=request.getParameter("name");
}
%>

  

        String username=request.getParameter("username");
//解决get请求中文乱码问题
username=new String(username.getBytes("iso-8859-1"),"utf-8");

不同页面跳转,使用action,servlet

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; /**
* Servlet implementation class s1
*/
@WebServlet("/s1")
public class s1 extends HttpServlet {
private static final long serialVersionUID = 1L; public s1() {
super();
// TODO Auto-generated constructor stub
} protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("hello");
request.setAttribute("name","Feathers");
request.getRequestDispatcher("requestPage.jsp").forward(request, response);
} protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response);
} }
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<%@page import="java.util.*" %>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="s1">
姓名:<input type="text" name="name" length="20">
账号:<input type="text" name="id" length="20">
<input type="submit" value="go"><br>
</form >
<%=request.getParameter("name") %><br>
<%=request.getParameter("id") %><br>
<%! String a,b; %>
<% if (request.getParameter("name")==null){
a=request.getParameter("name"); }
if (request.getParameter("id")==null){
b=request.getParameter("name");
}
// 向request域中存入一个键值对 %>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
hey@
<%System.out.println((String)request.getAttribute("name")); %>
</body>
</html>

request.getRequestDispatcher():(带数据)

request.getRequestDispatcher("想跳转的servlet名").forward(request, response);
request.getRequestDispatcher("文件路径").forward(request, response);

   3.Response

该对象常常被用来完成页面的跳转、页面的自动刷新、页面的自动跳转、禁用缓存等功能

  页面跳转的方法:
response.sendRedirect("页面的路径");
  页面自动刷新的方法:
response.setHeader("refresh",3);每隔3秒刷新一次
  页面自动跳转的方法:
response.setHeader("refresh","3;URL=commom.jsp?ref=aaa");
  指定3秒后自动跳转到common.jsp页面并传递了值为aaa的参数ref
  禁用缓存的方法:
response.setHeader("Cache=Control","no-cache");
response.serHeader("Pragma","no-cache");
response.setHeader("Expires",0);
禁用缓存后,当我们单击后退时,客户端会自动想服务器请求上一次页面

(此部分来源:https://www.cnblogs.com/zhuxiang1633/p/9604487.html

4.COOKIE

https://www.cnblogs.com/whgk/p/6422391.html

最新文章

  1. 在基于MVC的Web项目中使用Web API和直接连接两种方式混合式接入
  2. 类Collections的静态方法的使用(代码)
  3. Java多线程与并发库高级应用-工具类介绍
  4. EF-CodeFirst-2玩的嗨
  5. 简单几何(线段相交) POJ 2653 Pick-up sticks
  6. ASP.NET MVC3在页面上获取当前控制器名称、Action名称以及路由参数
  7. FireMonkey消息机制
  8. hdu 1754 I Hate It (模板线段树)
  9. 在ubuntu下利用minicom实现串口通信
  10. 用C#写经理评分系统
  11. [Swift]LeetCode32. 最长有效括号 | Longest Valid Parentheses
  12. Confluence 6 workbox 配置查询间隔
  13. 问题: 揭秘Angualr2 书上问卷调查
  14. 图解get方法与filter方法
  15. pytest十二:cmd命令行参数
  16. jsp导出简单的excel
  17. 请教神牛_字符串hash
  18. 20155305乔磊《网络对抗》逆向及Bof基础
  19. JavaScript的parseint()函数
  20. 【哈希表】Ural Championship April 30, 2017 Problem H. Hamburgers

热门文章

  1. 6_16 单词(UVa10129)&lt;欧拉回路&gt;
  2. EF三种数据库操作模型比较
  3. AcWing 840. 模拟散列表
  4. Java进阶学习(5)之设计原则(下)
  5. input的number类型只能输入正数,禁止负数输入
  6. Codeforces Round #622 (Div. 2)
  7. 数据库程序接口——JDBC——功能第一篇——第一个程序
  8. js和jsp中怎么去获取后台 model.addAttribute()存入的list&lt;。。。&gt;对象
  9. Codeforces Gym 102361A Angle Beats CCPC2019秦皇岛A题 题解
  10. 详解Django中Request对象的相关用法