当前位置: 首页 > news >正文

JSP内置对象session

1.session对象,为会话对象,封装当前用户会话中的有关信息。

网页数据传递是单向传递的,session能够将数据进行多个数据互相传递,使用的是同一个东西

实例1: 利用session对象String  getId() 方法获取当前session对象的ID号。 利用session对象boolean isNew() 方法获判断是否为新的session对象。

2.如果id不一样,使用response响应

3.多个页面中数据响应

4.共享有效时间需要人为干预,注销session重新

1.物理关闭:关闭浏览器

2.session对象是否调用invalidate()方法使session无效。

3.session.setMaxInactiveInterval()是否达到设置的最长“有效”时间。

4.applicati对象:多个账户共享

1.setAttribute(“name”,“value”);添加

2.getAttribute("name")获取添加数据

3.removeAttribute("name")移除

总结代码

1.

<%@page import="java.util.Date"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%-- <h3>这是一个out对象</h3><%out.print("这是out对象打印的内容1");out.println("这是out对象打印的内容2"\n);写在百分号之间%><br\> --%><%-- <jsp:forward page="duixiang.jsp">             <jsp:param value="中文" name="name"/></jsp:forward>--%><%-- <%request.setAttribute("name", "张三");   //传递数据,最大优点不会乱码%><jsp:forward page="duixiang.jsp"/> --%><!--  <form  action="duixiang.jsp"  name="form1"  method="post"  >post传输数据安全性更高用户名:<input type = "text" name ="user"><br/>密码:<input type = "password" name ="psw"><br/><input type ="submit" value="提交"></form>--><!--<a href="duixiang.jsp">超链接</a>不会传递参数, --><%--<form  action=""   >  <!--提交当前页面  --><input type = "text" ><br/><input type ="submit" value="下载" name="btn"></form><%String s1 = request.getParameter("btn");if(s1!=null){response.setContentType("application/msword; charset=UTF-8");} %> --%><%-- 日期 <%Date time = new Date();out.print(time.toLocaleString());/* 转换方法 */response.setHeader("refresh", "1");/* 隔着一秒刷新 */%>--%><!--  <form  action="duixiang.jsp"  name="form1"  method="post"  >用户名:<input type = "text" name ="usr"><br/>密码:<input type = "password" name ="pw"><br/><input type ="submit" value="登录"></form>--><h3>第一页</h3><%-- <jsp:forward page="duixiang.jsp"><jsp:param value="18" name="age"/></jsp:forward> --%><%String s = session.getId();out.print("第一个页面ID是:"+s);String ip = response.encodeRedirectUrl("duixiang.jsp");//为网址加密,新页面不用新建id直接将主页面的id给新页面session.setAttribute("name1", "商品1");session.setAttribute("name2", "商品2");%><a href="<%=ip %>">跳转第二页</a>
</body>
</html><!-- 
1.out对象:在浏览器中输出内容
基本语法:out.print  
2.request对象:专门用来接受和发送数据
1.获取数据,传输数据:String s = request.getParameter("name");获取数据request.setCharacterEncoding("UTF-8");request.getServletPath();查看当前地址request.setAttribute()防止乱码session对象:会话对象,封装当前用户会话中的有关信息1.getId():获取会话对象的id2.response.encodeREdirectUrl("show.jsp"):对网址加密,添加当前页面id3.setAttribute("name" ,"vlaue");把数据储存在session对象中4.getAttribute("name")5.注销session人为干预(1) 客户是否关闭浏览器。(2) session对象是否调用invalidate()方法使session无效。(3) 利用session对象的session.setMaxInactiveInterval(5)方法设置session的最大“有效时间”。6.applicati对象:多个账户共享1.setAttribute(“name”,“value”);添加2.getAttribute("name")获取添加数据3.removeAttribute("name")移除-->

2.

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h3>第二页</h3>
<%/* String s=request.getParameter("name");        request.setCharacterEncoding("UTF-8");request.getServletPath(); String s1 = request.getParameter("age");String path = request.getServletPath();String ip = request.getRemoteAddr();out.print(s1+":"+path+":"+ip);out.print(request.getAttribute("name")); *//* request.setCharacterEncoding("UTF-8");//form表单修改乱码,只需要在接收端修改String s1 = request.getParameter("user");String s2 = request.getParameter("psw");out.print(s1+":"+s2); *//* request.setCharacterEncoding("UTF-8");//form表单修改乱码,只需要在接收端修改String s1 = request.getParameter("usr");String s2 = request.getParameter("pw");if(s1!=null&&s2!=null&&!s1.equals("")&&!s2.equals("")){out.print("登录成功,欢迎"+s1);}else{response.sendRedirect("neizhiduixiang.jsp");//网页重定向} */String s = session.getId();out.print("第二个页面ID是:"+s);Object s1 = session.getAttribute("name1");Object s2 = session.getAttribute("name2");out.print(s1+":"+s2);%> <a href="duixiang1.jsp">跳转第三页</a></body>
</html>

3.

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h3>第三页</h3><%String s = session.getId();out.print("第三个页面ID是:"+s);Object s1 = session.getAttribute("name1");Object s2 = session.getAttribute("name2");out.print(s1+":"+s2);session.removeAttribute("name2");/*移除*/session.setAttribute("name3", "商品3");/*添加*//* 此时显示的使用户信息 */%><a href ="duixiang2.jsp">跳转第四个页面</a>
</body>
</html>

4.

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<h3>第四个页面</h3>
<body><%Object s1 = session.getAttribute("name1");Object s2 = session.getAttribute("name2");Object s3= session.getAttribute("name3");out.print(s1+":"+s2+":"+s3);%></body>
</html>

相关文章:

JSP内置对象session

1.session对象&#xff0c;为会话对象&#xff0c;封装当前用户会话中的有关信息。 网页数据传递是单向传递的&#xff0c;session能够将数据进行多个数据互相传递&#xff0c;使用的是同一个东西 实例1&#xff1a; 利用session对象String getId() 方法获取当前session对象…...

BM96 主持人调度(二)(贪心算法)

一开始写的时候忘了给start、end数组赋值了 import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定&#xff0c;请勿修改&#xff0c;直接返回方法规定的值即可** 计算成功举办活动需要多少名主持人* param n int整型 有n个活动* param start…...

【TB作品】MSP430单片机读取大气压强传感器BMP180

文章目录 实物main所有代码 实物 main #include <msp430.h> #include "stdio.h" #include "OLED.h"#include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h>// P2.2 oled scl // P2.3 oled sda// p…...

Github第一Star数的国产免费开源防火墙--雷池社区版初步体验

前言 近期准备搭建一个博客网站&#xff0c;用来存储工作室同学们的学习笔记。服务器准备直接放在公网上&#xff0c;方便大家随时随地的上传和浏览&#xff0c;为了防止网站被人日穿成为肉鸡&#xff0c;一些防御措施还是要部署的。 首先明确自己的需求&#xff1a; 零成本…...

自动驾驶涉及相关的技术

自动驾驶涉及多种技术&#xff0c;包括传感器、数据处理、决策制定和执行控制等方面。以下是一些关键技术的详细说明&#xff1a; 传感器技术&#xff1a; 激光雷达&#xff08;LiDAR&#xff09;&#xff1a;激光雷达通过发射激光束并测量其反射时间来获取周围环境的高精度三维…...

简单高效的GO发票识别+发票查验接口

在这个瞬息万变的商业世界里&#xff0c;商业欺诈如影随形&#xff0c;虚假发票成为企业难以忽视的风险。而发票作为每笔交易的重要凭证&#xff0c;对其进行入账前的真伪查验显得尤为重要。但面对海量的发票查验与发票录入工作&#xff0c;人工手动查验的方式&#xff0c;速度…...

c++和python基本数据类型比较

以下是 C 和 Python 中一些基本数据类型的比较&#xff1a; 1. 整数类型&#xff1a; C&#xff1a; C 中的整数类型包括 int, short, long, long long 等&#xff0c;它们的大小和范围取决于编译器和操作系统。 Python&#xff1a; Python 中只有一个整数类型 int&#xff0…...

运维工具如此割裂,九招帮你统一纳管

背景 在运维工具这个江湖中&#xff0c;出现了众多独行侠客&#xff0c;各怀绝技&#xff0c;各自为战。这些开源监控软件如同武林中的各派门派&#xff1a;SkyWalking 以精湛的追踪功夫独步武林&#xff1b;Prometheus 以灵活的告警机制纵横江湖&#xff1b;ELK 则如同黯然销…...

基于springboot的大创管理系统源码数据库

基于springboot的大创管理系统源码数据库 摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了大创管理系统的开发全过程。通过分析大创管理系统管理的不足&#xff0c;创建了一个计算机管理大创管理系统的方案。…...

解密辛普森悖论:如何在数据分析中保持清醒头脑

解密辛普森悖论&#xff1a;如何在数据分析中保持清醒头脑 之前也参加fine Bi的 培训&#xff0c;学到了辛普森悖论&#xff0c;今天为大家介绍一下 文章目录 解密辛普森悖论&#xff1a;如何在数据分析中保持清醒头脑前言我们来举一个例子数据分析解释管理应用的启示 前言 什…...

Vue前端框架

1.vue基本使用1 1.vue环境搭建 一般创建vue项目是在cmd命令中用&#xff1a;vue ui 命令&#xff0c;采用ui图形界面的方式直观创建项目。 2.vue基本使用方式&#xff1a;vue组件 3.文本插值 4.属性绑定 5.事件绑定 6.双向绑定 7.条件渲染 2.vue基本使用2 1.axios 安装axios命令…...

【随笔】Git 基础篇 -- 远程仓库 git clone(二十五)

&#x1f48c; 所属专栏&#xff1a;【Git】 &#x1f600; 作  者&#xff1a;我是夜阑的狗&#x1f436; &#x1f680; 个人简介&#xff1a;一个正在努力学技术的CV工程师&#xff0c;专注基础和实战分享 &#xff0c;欢迎咨询&#xff01; &#x1f496; 欢迎大…...

在js中如果a的值是空是不是if(表达式的值是false)?

在JavaScript中&#xff0c;一个变量的“空”值可以有多种含义&#xff0c;具体取决于该变量的类型和内容。对于if语句中的条件表达式&#xff0c;其值会被隐式地转换为布尔值。以下是JavaScript中常见的“空”值以及它们在布尔上下文中的行为&#xff1a; null&#xff1a;在…...

数据生成 | Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成

数据生成 | Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成 目录 数据生成 | Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成生成效果基本描述模型描述程序设计参考资料 生成效果 基本描述 1.Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成&#xf…...

HarmonyOS开发:【NFC配置流程】

一、简介 碰一碰是HarmonyOS具备的多终端业务协同技术。其依托NFC短距通信协议&#xff0c;通过碰一碰的交互方式&#xff0c;将手机和全场景设备连接起来。然后通过手机端的原子化服务能力&#xff0c;快速完成配网、远程控制的能力&#xff0c;解决了应用与设备之间接续慢、…...

解决JQuery和其他库的冲突

文章目录 1.使用 noConflict() 方法&#xff1a;2.使用 IIFE&#xff08;立即调用函数表达式&#xff09;&#xff1a;3.加载顺序&#xff1a;4.使用命名空间&#xff1a;5.使用 jQuery Migrate 插件&#xff1a; 1.使用 noConflict() 方法&#xff1a; 这是最常见和简单的解决…...

【Linux】在 Linux 上模拟网络故障

文章目录 模拟网络丢包模拟网络延迟、抖动模拟网络包重复模拟网络带宽受限模拟网络错误模拟网络乱序配合 cgroup 进行进程级带宽限制重置网络清空所有规则 模拟网络丢包 # 在eth0网络接口上替换排队规则&#xff0c;应用netem规则来模拟30%的数据包丢失 tc qdisc replace dev …...

腾讯云流量怎么计算的?轻量服务器流量价格表

腾讯云轻量应用服务器套餐带流量包&#xff0c;就是有月流量限制的意思&#xff0c;超出轻量套餐的流量需要另外支付流量费&#xff0c;轻量服务器地域不同超额流量费用也不同&#xff0c;北京上海广州等中国内地地域流量价格是0.8元每GB&#xff0c;中国香港地域流量价格是1元…...

解决Maven Clean过程因内存溢出导致的“Process terminated”问题

正文&#xff1a; 在今天的开发过程中&#xff0c;我遇到了一个意料之外的问题&#xff0c;当我尝试使用 Maven 进行项目清理&#xff08;maven clean&#xff09;时&#xff0c;命令行反馈了一个错误信息&#xff1a;“Process terminated”。经过一番排查&#xff0c;发现问…...

十分钟掌握在 PyTorch 中构建一个深度神经网络,基本组件、步骤和代码实现,从导入模块和定义网络结构到训练和评估网络性能。

🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 深度神经网络(Deep Neural Networks, DNNs),也被称为人工神经网络(Artificial Neural Networks,ANNs),已成为当今机器学习任务中最流行、最成功的方法之一。这些网络能够表示数据中的复杂关系,并在图像分类、自然…...

BUG:vue表单验证校验不报错,必填都有信息,就是不能正常往下进行

vue表单验证未报错却出现异常 框架bug场景解决办法 框架 UI&#xff1a;element-UI 前端&#xff1a;vue2 bug场景 正常表单里面&#xff0c;有的信息要求必填或者加了一些限制&#xff0c;作为校验验证&#xff0c;只有走到校验才会执行其他行为&#xff0c;比如调用保存接…...

MapStruct入门教程详解:轻松掌握Java Bean映射

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鸿蒙》 …...

Springboot 集成websocket

webSocket是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工通信--浏览器和服务器只需要完成一次握手&#xff0c;两者之间就可以创建持久性的连接&#xff0c;并进行双向数据传输。 http协议和websocket协议对比 http是短连接 websocket是长连接 http通信是单向的…...

FPGA和ARM学习那个比较好

FPGA和ARM是两种不同的技术&#xff0c;具有不同的应用领域和学习难度。以下是对两者进行比较的一些建议&#xff1a; 1. 应用领域&#xff1a;FPGA主要用于数字电路设计和硬件加速器开发&#xff0c;可在实时系统、信号处理、嵌入式系统等方面发挥重要作用。ARM则是一种处理器…...

你知道 Java 线程池的原理吗?

Java线程池是用于管理和复用线程的机制&#xff0c;它可以帮助开发者有效地管理线程的生命周期和资源&#xff0c;并提高应用程序的性能和稳定性。 1. 线程池概述 在计算机科学中&#xff0c;线程池是一种可用来执行异步任务的线程队列。它主要包含以下几个组成部分&#xff…...

numpy学习笔记(1),不定期更新

在对numpy进行了几个小时的学习后&#xff0c;做出如下学习笔记 1. numpy类型入门 写完这边笔记后&#xff0c;过了几天补充一些理解&#xff1a; numpy处理的主要内容是数组&#xff0c;一维的&#xff0c;二维的&#xff0c;三维的&#xff0c;多维的。numpy的数组与python原…...

如何使用静态IP代理解决Facebook多账号注册并进行网络推广业务?

在当今的数字时代&#xff0c;社交媒体成为了企业进行网络推广的一个重要途径&#xff0c;其中&#xff0c;Facebook是最受欢迎的社交媒体之一&#xff0c;因为它可以让企业通过创建广告和页面来推广他们的产品或服务。 但是&#xff0c;使用Facebook进行网络推广时&#xff0…...

局部适配器在产品和二次开发中的应用

局部适配器这个说法是本人从产品项目中总结出的一种叫法。原理是在产品项目的某一项业务处理时&#xff0c;嵌入抽象方法和默认实现&#xff0c;以便产品作二次开发时&#xff0c;不用迁分支或重写就适配修改产品工程的局部逻辑。该方法使用原理很简单&#xff0c;但好处明显&a…...

C++之类和对象(上)

目录 1.面向过程和面向对象初步认识 2.类的引入 3.类的定义 4.类的访问限定符及封装 4.1访问限定符 4.2 类的两种定义方式 第一种&#xff1a; 第二种&#xff1a; 4.3封装 5.类的实例化 6.类对象模型 1.面向过程和面向对象初步认识 C语言是面向过程的&#xff0c;…...

Linux 测试磁盘读写速度

1、先熟悉两个特殊的设备&#xff1a; &#xff08;1&#xff09;/dev/null&#xff1a;回收站、无底洞。 &#xff08;2&#xff09;/dev/zero&#xff1a;产生字符。 2、测试磁盘写能力 time dd if/dev/zero of/testw.dbf bs4k count100000 因为/dev//zero是一个伪设备…...