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对象,为会话对象,封装当前用户会话中的有关信息。 网页数据传递是单向传递的,session能够将数据进行多个数据互相传递,使用的是同一个东西 实例1: 利用session对象String getId() 方法获取当前session对象…...
BM96 主持人调度(二)(贪心算法)
一开始写的时候忘了给start、end数组赋值了 import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** 计算成功举办活动需要多少名主持人* 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数的国产免费开源防火墙--雷池社区版初步体验
前言 近期准备搭建一个博客网站,用来存储工作室同学们的学习笔记。服务器准备直接放在公网上,方便大家随时随地的上传和浏览,为了防止网站被人日穿成为肉鸡,一些防御措施还是要部署的。 首先明确自己的需求: 零成本…...
自动驾驶涉及相关的技术
自动驾驶涉及多种技术,包括传感器、数据处理、决策制定和执行控制等方面。以下是一些关键技术的详细说明: 传感器技术: 激光雷达(LiDAR):激光雷达通过发射激光束并测量其反射时间来获取周围环境的高精度三维…...
简单高效的GO发票识别+发票查验接口
在这个瞬息万变的商业世界里,商业欺诈如影随形,虚假发票成为企业难以忽视的风险。而发票作为每笔交易的重要凭证,对其进行入账前的真伪查验显得尤为重要。但面对海量的发票查验与发票录入工作,人工手动查验的方式,速度…...
c++和python基本数据类型比较
以下是 C 和 Python 中一些基本数据类型的比较: 1. 整数类型: C: C 中的整数类型包括 int, short, long, long long 等,它们的大小和范围取决于编译器和操作系统。 Python: Python 中只有一个整数类型 int࿰…...
运维工具如此割裂,九招帮你统一纳管
背景 在运维工具这个江湖中,出现了众多独行侠客,各怀绝技,各自为战。这些开源监控软件如同武林中的各派门派:SkyWalking 以精湛的追踪功夫独步武林;Prometheus 以灵活的告警机制纵横江湖;ELK 则如同黯然销…...
基于springboot的大创管理系统源码数据库
基于springboot的大创管理系统源码数据库 摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了大创管理系统的开发全过程。通过分析大创管理系统管理的不足,创建了一个计算机管理大创管理系统的方案。…...
解密辛普森悖论:如何在数据分析中保持清醒头脑
解密辛普森悖论:如何在数据分析中保持清醒头脑 之前也参加fine Bi的 培训,学到了辛普森悖论,今天为大家介绍一下 文章目录 解密辛普森悖论:如何在数据分析中保持清醒头脑前言我们来举一个例子数据分析解释管理应用的启示 前言 什…...
Vue前端框架
1.vue基本使用1 1.vue环境搭建 一般创建vue项目是在cmd命令中用:vue ui 命令,采用ui图形界面的方式直观创建项目。 2.vue基本使用方式:vue组件 3.文本插值 4.属性绑定 5.事件绑定 6.双向绑定 7.条件渲染 2.vue基本使用2 1.axios 安装axios命令…...
【随笔】Git 基础篇 -- 远程仓库 git clone(二十五)
💌 所属专栏:【Git】 😀 作 者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大…...
在js中如果a的值是空是不是if(表达式的值是false)?
在JavaScript中,一个变量的“空”值可以有多种含义,具体取决于该变量的类型和内容。对于if语句中的条件表达式,其值会被隐式地转换为布尔值。以下是JavaScript中常见的“空”值以及它们在布尔上下文中的行为: null:在…...
数据生成 | Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成
数据生成 | Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成 目录 数据生成 | Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成生成效果基本描述模型描述程序设计参考资料 生成效果 基本描述 1.Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成…...
HarmonyOS开发:【NFC配置流程】
一、简介 碰一碰是HarmonyOS具备的多终端业务协同技术。其依托NFC短距通信协议,通过碰一碰的交互方式,将手机和全场景设备连接起来。然后通过手机端的原子化服务能力,快速完成配网、远程控制的能力,解决了应用与设备之间接续慢、…...
解决JQuery和其他库的冲突
文章目录 1.使用 noConflict() 方法:2.使用 IIFE(立即调用函数表达式):3.加载顺序:4.使用命名空间:5.使用 jQuery Migrate 插件: 1.使用 noConflict() 方法: 这是最常见和简单的解决…...
【Linux】在 Linux 上模拟网络故障
文章目录 模拟网络丢包模拟网络延迟、抖动模拟网络包重复模拟网络带宽受限模拟网络错误模拟网络乱序配合 cgroup 进行进程级带宽限制重置网络清空所有规则 模拟网络丢包 # 在eth0网络接口上替换排队规则,应用netem规则来模拟30%的数据包丢失 tc qdisc replace dev …...
腾讯云流量怎么计算的?轻量服务器流量价格表
腾讯云轻量应用服务器套餐带流量包,就是有月流量限制的意思,超出轻量套餐的流量需要另外支付流量费,轻量服务器地域不同超额流量费用也不同,北京上海广州等中国内地地域流量价格是0.8元每GB,中国香港地域流量价格是1元…...
解决Maven Clean过程因内存溢出导致的“Process terminated”问题
正文: 在今天的开发过程中,我遇到了一个意料之外的问题,当我尝试使用 Maven 进行项目清理(maven clean)时,命令行反馈了一个错误信息:“Process terminated”。经过一番排查,发现问…...
十分钟掌握在 PyTorch 中构建一个深度神经网络,基本组件、步骤和代码实现,从导入模块和定义网络结构到训练和评估网络性能。
🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 深度神经网络(Deep Neural Networks, DNNs),也被称为人工神经网络(Artificial Neural Networks,ANNs),已成为当今机器学习任务中最流行、最成功的方法之一。这些网络能够表示数据中的复杂关系,并在图像分类、自然…...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...
Spring AI与Spring Modulith核心技术解析
Spring AI核心架构解析 Spring AI(https://spring.io/projects/spring-ai)作为Spring生态中的AI集成框架,其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似,但特别为多语…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
用机器学习破解新能源领域的“弃风”难题
音乐发烧友深有体会,玩音乐的本质就是玩电网。火电声音偏暖,水电偏冷,风电偏空旷。至于太阳能发的电,则略显朦胧和单薄。 不知你是否有感觉,近两年家里的音响声音越来越冷,听起来越来越单薄? —…...
Java求职者面试指南:计算机基础与源码原理深度解析
Java求职者面试指南:计算机基础与源码原理深度解析 第一轮提问:基础概念问题 1. 请解释什么是进程和线程的区别? 面试官:进程是程序的一次执行过程,是系统进行资源分配和调度的基本单位;而线程是进程中的…...
消防一体化安全管控平台:构建消防“一张图”和APP统一管理
在城市的某个角落,一场突如其来的火灾打破了平静。熊熊烈火迅速蔓延,滚滚浓烟弥漫开来,周围群众的生命财产安全受到严重威胁。就在这千钧一发之际,消防救援队伍迅速行动,而豪越科技消防一体化安全管控平台构建的消防“…...
一些实用的chrome扩展0x01
简介 浏览器扩展程序有助于自动化任务、查找隐藏的漏洞、隐藏自身痕迹。以下列出了一些必备扩展程序,无论是测试应用程序、搜寻漏洞还是收集情报,它们都能提升工作流程。 FoxyProxy 代理管理工具,此扩展简化了使用代理(如 Burp…...
Spring AOP代理对象生成原理
代理对象生成的关键类是【AnnotationAwareAspectJAutoProxyCreator】,这个类继承了【BeanPostProcessor】是一个后置处理器 在bean对象生命周期中初始化时执行【org.springframework.beans.factory.config.BeanPostProcessor#postProcessAfterInitialization】方法时…...
Linux-进程间的通信
1、IPC: Inter Process Communication(进程间通信): 由于每个进程在操作系统中有独立的地址空间,它们不能像线程那样直接访问彼此的内存,所以必须通过某种方式进行通信。 常见的 IPC 方式包括&#…...
边缘计算网关提升水产养殖尾水处理的远程运维效率
一、项目背景 随着水产养殖行业的快速发展,养殖尾水的处理成为了一个亟待解决的环保问题。传统的尾水处理方式不仅效率低下,而且难以实现精准监控和管理。为了提升尾水处理的效果和效率,同时降低人力成本,某大型水产养殖企业决定…...
