Session入门实例
1 <%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>
2 <html xmlns="http://www.w3.org/1999/xhtml">
3
4 <head>
5 <title>选择物品购买</title>
6 </head>
7
8 <body>
9 <form method="post" action="processBuy.jsp">
10 书籍:<input type="checkbox" name="item" value="book"/><br/>
11 电脑:<input type="checkbox" name="item" value="computer"/><br/>
12 汽车:<input type="checkbox" name="item" value="car"/><br/>
13 <input type="submit" value="购买">
14 </form>
15 </body>
16 </html>
1 <%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>
2 <%@ page import="java.util.*" %>
3 <%
4 //取出session范围的itemMap属性,Map<String, Integer> itemMap为对象,getAttribute("itemMap")为属性
5 Map<String, Integer> itemMap = (Map<String, Integer>)session.getAttribute("itemMap");
6 //如果对象为空,则初始化对象
7 if (itemMap == null) {
8 /*
9 public class HashMap<K,V>
10 extends AbstractMap<K,V>
11 implements Map<K,V>, Cloneable, Serializable
12 */
13 itemMap = new HashMap<String, Integer>();
14 itemMap.put("书籍", 0);
15 itemMap.put("汽车", 0);
16 itemMap.put("电脑", 0);
17 }
18 //获取上一个页面的请求参数
19 String[] buys = request.getParameterValues("item");
20 //遍历数组的各元素
21 for (String item : buys) {
22 //如果item为book,表示选择书籍购买
23 if (item.equals("book")) {
24 int num1 = itemMap.get("书籍");
25 itemMap.put("书籍", num1+1);
26 }
27 else if (item.equals("computer")) {
28 int num2 = itemMap.get("电脑");
29 itemMap.put("电脑", num2+1);
30 }
31 else if (item.equals("car")) {
32 int num3 = itemMap.get("书籍");
33 itemMap.put("汽车", num3+1);
34 }
35 }
36 //将itemMap对象放到设置成session范围的itemMap属性
37 session.setAttribute("itemMap", itemMap);
38 %>
39
40 <html xmlns="http://www.w3.org/1999/xhtml">
41 <head>
42 <title>new document</title>
43 </head>
44 <body>
45 您所购买的物品:<br/>
46 书籍:<%=itemMap.get("书籍")%>本<br/>
47 电脑:<%=itemMap.get("电脑")%>台<br/>
48 汽车:<%=itemMap.get("汽车")%>辆<br/>
49
50 <p><a href="shop.jsp">再次购买</a></p>
51 </body>
52 </html>
演示:
36 //将itemMap对象放到设置成session范围的itemMap属性
37 session.setAttribute("itemMap", itemMap);
4 //取出session范围的itemMap属性,Map<String, Integer> itemMap为对象,getAttribute("itemMap")为属性
5 Map<String, Integer> itemMap = (Map<String, Integer>)session.getAttribute("itemMap");
Session入门实例的更多相关文章
- PHP之session相关实例教程与经典代码
·php 中cookie和session的用法比较 ·phpmyadmin报错:Cannot start session without errors问题 ·php中cookie与session应用学 ...
- Apache Mina入门实例
一.mina是啥 ApacheMINA是一个网络应用程序框架,用来帮助用户简单地开发高性能和高可扩展性的网络应用程序.它提供了一个通过Java NIO在不同的传输例如TCP/IP和UDP/IP上抽象的 ...
- mybatis 详解(二)------入门实例(基于XML)
通过上一小节,mybatis 和 jdbc 的区别:http://www.cnblogs.com/ysocean/p/7271600.html,我们对 mybatis有了一个大致的了解,下面我们通过一 ...
- mybatis 详解(三)------入门实例(基于注解)
1.创建MySQL数据库:mybatisDemo和表:user 详情参考:mybatis 详解(二)------入门实例(基于XML) 一致 2.建立一个Java工程,并导入相应的jar包,具体目录如 ...
- ActiveMQ专题1: 入门实例
序 好久没有写博客了,最近真的是可以说是忙成狗了.项目的事和自己的终身大事忙得焦头烂额,好在是一切都是越来越好了...... 趁着项目今天唯一的一点喘息时间,加上项目开始接触到的mq,开始写一篇amq ...
- 1. mybatis 的入门实例
mybatis 的入门实例 1.创建一个普通的Java项目 1.加入jar包(所有mybatis 和mysql) 2.加入配置文件 src 目录下 (1) db.properties mysql.us ...
- mybatis学习一:基于xml与注解配置入门实例与问题
注:本case参考自:http://www.cnblogs.com/ysocean/p/7277545.html 一:Mybatis的介绍: MyBatis 本是apache的一个开源项目iBatis ...
- React 入门实例教程(转载)
本人转载自: React 入门实例教程
- struts入门实例
入门实例 1 .下载struts-2.3.16.3-all .不摆了.看哈就会下载了. 2 . 解压 后 找到 apps 文件夹. 3. 打开后将 struts2-blank.war ...
- Vue.js2.0从入门到放弃---入门实例
最近,vue.js越来越火.在这样的大浪潮下,我也开始进入vue的学习行列中,在网上也搜了很多教程,按着教程来做,也总会出现这样那样的问题(坑啊,由于网上那些教程都是Vue.js 1.x版本的,现在用 ...
随机推荐
- 编码技巧 --- 使用dynamic简化反射
引言 dynamic 是 Framework 4.0 就出现特性,它的出现让 C# 具有了弱语言类型的特性.编译器在编译的时候不再对类型进行检查,默认 dynamic 对象支持开发者想要的任何特性. ...
- 如何将 dubbo filter 拦截器原理运用到日志拦截器中?
业务背景 我们希望可以在使用日志拦截器时,定义属于自己的拦截器方法. 实现的方式有很多种,我们分别来看一下. 拓展阅读 java 注解结合 spring aop 实现自动输出日志 java 注解结合 ...
- Maven资源导出问题所需配置
<!--在build中配置resources,来防止我们资源导出失败的问题--> <build> <resources> <resource> < ...
- AVR汇编(一):搭建交叉编译环境
AVR汇编(一):搭建交叉编译环境 几年间,陆陆续续接触了很多热门的单片机,如STC.STM8S.STM32.ESP32等.但一直都是抱着急功近利的心态去学习他们,基本上都是基于库函数和第三方组件进行 ...
- 学好Elasticsearch系列-索引的批量操作
本文已收录至 Github,推荐阅读 Java 随想录 微信公众号:Java 随想录 先看后赞,养成习惯. 点赞收藏,人生辉煌. 目录 基于 mget 的批量查询 基于 bulk 的批量增删改 增加 ...
- 【opencv】传统目标检测:Haar检测器实现人脸检测
传统目标分类器主要包括Viola Jones Detector.HOG Detector.DPM Detector,本文主要介绍VJ检测器,在VJ检测器基础上发展出了Haar检测器,Haar检测器也是 ...
- C++函数参数匹配规则
C++ 函数参数匹配 1 单个参数匹配 void f(); //f1 void f(int); //f2 void f(int, int); //f3 void f(double, double=3. ...
- xfs文件系统核心架构介绍
版权声明:本文为CSDN博主「瞧见风」的原创文章,遵循CC 4.0 BY-SA版权协议原文链接:https://blog.csdn.net/scaleqiao/article/details/5209 ...
- ATtiny88初体验(四):看门狗
ATtiny88初体验(四):看门狗 ATtiny88单片机的看门狗使用内部独立的128KHz时钟源,拥有3种工作模式: Interrupt模式:超时产生中断: System Reset模式:超时产生 ...
- (2023.8.28)Hi铁布衫-CM Ver 0.001 - Cracked-writeup
Hi铁布衫-CM Ver 0.001 WriteUp 本文作者:XDbgPYG(小吧唧) 发布时间:2023年8月28日 内容概要:Hi铁布衫-CM Ver 0.001 WriteUp 收集信息 有一 ...