Jsp_Servlet_JavaBean_Chapter3,4理论笔记

会话跟踪与MVC设计模式详解
本文详细介绍了Web开发中的会话跟踪技术,包括会话的概念、会话跟踪的重要性及其实现方式如HttpSession、Cookie等。此外,还探讨了MVC设计模式的基本原理及其在Web开发中的应用。
目标:
1、什么是会话
会话是一段时间内,客户端和服务器之间的一系列请求和响应的过程

2、什么是会话跟踪
在会话的过程中,服务器需要确认用户的身份

3、为什么要使用会话跟踪
HTTP协议是断开式的协议,也就是只有客户端请求服务器的时候才建立
连接,一旦响应完毕连接断开。那么服务器需要知道客户端的身份。

4、常用的会话跟踪方式
* HttpSession
* Cookie
* URL重写
* 隐藏表单域

5、HttpSession的使用
* 当客户端第一次访问服务器的时候,服务器会为该客户端分配一块空间,
并且对应该空间有一个唯一的标识号(id),当服务器响应的时候会把这个
id响应到客户端,有客户端的浏览器缓存起来(一旦浏览器关闭,id就没了)
.以后再去访问服务器的时候,客户端就直接把id带到服务器上,服务器
根据这个id找到对应的空间,可以向这块空间中存取数据。以后的过程类似。

* 怎么在程序中取得HttpSession?
HttpSession session = request.getSession();
-->HttpSession session = request.getSession(true)
HttpSession session = request.getSession(true|false);

* 怎么向Session中存取数据?
session.setAttribute(key, value):value是Object
Object getAttribute(key):取出数据之后要进行强制类型转换

* 会话在什么情况下失效?
默认情况下,Session在30分钟内失效,也就是说如果一个客户端
在30分钟内都没有去访问服务器,服务器就认为该客户端不再访问,
就将这个客户端对应的HttpSession销毁。当客户端再次访问的时候,
服务器再为这个客户端重新分配HttpSession.

可以用过设置setMaxInActiveInterval(seconds):设置session的过期
时间,单位是秒

在web.xml中进行配置:单位是分钟
<session-config>
<session-timeout>20</session-timeout>
</session-config>

session.invalidate():销毁session和其中的数据

* 注意:Session是保存在服务器上的。

6、集合框架
Collection(接口)
--> List(接口): add(), get(), size(), iterator()
--> ArrayList
--> LinkedList: addFirst(), addLast(), removeFirst(), removeLast()
ArrayList LinkedList
优点 查找效率高 添加或者删除元素方便
缺点 添加或者删除元素麻烦 查找元素麻烦

--> Set(接口): add(), get(), size(), iterator()
--> HashSet, TreeSet

Map: put(key, value), get(key), keySet(), Set<Map.Entry<K,V>> entrySet()
-->HashMap
-->TreeMap


注意:List中的元素可以重复,有顺序,而Set中的数据不可以重复,没有顺序
重点掌握有哪些常用的方法,循环遍历的方式,了解ArrayList和LinkedList的优缺点

7、DecimalFormat的使用
SimpleDateFormat:对日期进行格式化
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = sdf.format(date);

8、书店--显示所有书籍的信息,查看某一本书的详细信息
将书籍放入购物车,查看购物车中的所有书籍

9、对HttpSession的总结
* HttpSession是保存在服务器上的
* 第一次请求。。。
* 后续请求。。。
* HttpSession的过期:
默认情况下30分钟过期。

可以通过使用setMaxInActiveInterval(seconds)方法使会话过期。注意单位是秒

可以在web.xml中进行配置
<session-config>
<session-timeout>30</session-timeout>
</session-config>

如果时间设置为负数,则会话永远不会过期

10、Map对象的创建:Map map = new HashMap();
如何放值:put(key, value);
得到值:get(key):注意返回值后要强制类型转换

11、MVC设计模式
什么是设计模式:设计模式是对前人的解决问题的经验的总结,它只是一种思想。

MVC设计模式:
--> M:modle --> 模型 --> 代表数据状态和业务逻辑
--> V:view --> 视图 --> 提供跟客户交互的页面
--> C:control --> 控制器 --> 是模型和视图间的中介,调用模型,根据模型返回的结果选择相应的视图给可客户端响应

Sun公司提出了两套模型:Model I, Model II, Model II 是对MVC设计模式的一种实现
Model I : Jsp + JavaBean
Model II : Jsp(视图) + Servlet(控制器) + JavaBean(模型)
ModelII体系结构与MVC设计模式的关系?
ModelII体系结构就是MVC? 错误,应该是ModelII体系结构是对MVC设计模式的一种具体的实现。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值