javaweb开发案例
1.实验3
(1)当运行Servlet时,碰到“空指针异常”错误怎么处理?
答:应提示用户操作有误,或设置对象值为空字符串或一个默认值,或是不执行某操作,直接跳转到其他处理中。
(2)谈谈你对JSP中Session的理解。
答:session对象实现了HttpSession接口,用于保存每个用户的状态。session对象保存在容器里,sessionId通过Cookie在服务器和客户端之间往返发送。如果客户端不支持Cookie,就自动转换为使用URL重写。
一般情况下,客户端首次访问Web应用时,容器为其创建session对象,session对象具有一个唯一的ID。在容器对首次访问的响应中,容器将这个唯一的ID通过Cookie方式发送到客户端浏览器。浏览器在后续的每次访问时会把Cookie发送到服务器,容器从Cookie中获得sessionId,根据sessionId在容器中找到该用户的session。因此,一个用户的多次HTTP请求对应的是同一个session对象。
session的超时:一方面,由于容器要保存和管理session对象,这会占用系统资源;另一方面,为了安全的原因,如果用户没有正常退出系统,用户应该经过一段时间后能够自动退出系统。因此,session是会超时的,当session超时后,session对象和session对象上的属性就被容器销毁了。
2.实验4
(1)简述基于Cookie的登录系统的实现原理。
(2)比较当选择“保存”或“不保存”时提交,然后关闭浏览器,然后重新打开浏览器输入http://localhost:8080/work.jsp,结果有什么不同?为什么?
答:
(1)第一次访问网站的时候,浏览器发出请求,服务器响应请求后,会将cookie放入到响应请求中(通过Set-Cookie字段),在浏览器第二次发请求的时候,会把cookie带过去,服务端会辨别用户身份,当然服务器也可以修改cookie内容。
(2)当选择保存,关闭浏览器,再重新打开浏览器时,输入localhost:8080/work.jsp可直接进入work.jsp页面;而选择不保存时,直接输入localhost:8080/work.jsp会报500内部服务器错误,之后重定向到登录页面。
当选择保存时,服务器生成cookie返回给浏览器,浏览器存储该cookie,在有效期内,使用同一浏览器登录同一网站,可直接访问;而不保存cookie时,服务器虽生成cookie且响应给了浏览器,但该cookie只在该次会话中有效,关闭浏览器,cookie被清除,下次再使用同一浏览器登录该网站,由于浏览器未找到该网站的cookie信息,故直接访问work.jsp页面报错。
(1)具体实验内容
3.实验5
1)实验内容
javaweb开发案例的更多相关文章
- JavaWeb开发——软件国际化(文本元素国际化)
前几天围绕着JDBC编程进行了系统的学习.现在我们对Java程序数据库操作已经是轻车熟路了.也学会了使用各种框架来帮助我们简化编程. 今天是学习计划的第七天,虽然学习热情没有前几天高涨了.但是,写博客 ...
- javaWeb开发小工具---MailUtils及其单元测试
本次介绍的是,在javaWeb开发中,我们不免会遇到发送邮件的需求,比如:用户注册账号,需要激活登录,以及服务器定期向会员发送礼品信息等.所以参考有关资料,写了这个MailUtils工具类. 1.Ma ...
- JavaWeb学习总结-01 JavaWeb开发入门
一 基本概念 1 Web开发的相关知识 Web,表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资源分为: 静态web资源(如html 页面): ...
- JavaWeb---总结(一)JavaWeb开发入门
一.基本概念 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资源分为: 静态web资源( ...
- JavaWeb学习总结(一)——JavaWeb开发入门
http://www.cnblogs.com/xdp-gacl/p/3729033.html 只为成功找方法,不为失败找借口! JavaWeb学习总结(一)--JavaWeb开发入门 一.基本概念 1 ...
- 使用Jquery+EasyUI 进行框架项目开发案例讲解之五 模块(菜单)管理源码分享
http://www.cnblogs.com/huyong/p/3454012.html 使用Jquery+EasyUI 进行框架项目开发案例讲解之五 模块(菜单)管理源码分享 在上四篇文章 ...
- 使用Jquery+EasyUI 进行框架项目开发案例讲解之四 组织机构管理源码分享
http://www.cnblogs.com/huyong/p/3404647.html 在上三篇文章 <使用Jquery+EasyUI进行框架项目开发案例讲解之一---员工管理源码分享> ...
- 使用Jquery+EasyUI 进行框架项目开发案例讲解之三---角色管理源码分享
使用Jquery+EasyUI 进行框架项目开发案例讲解之三 角色管理源码分享 在上两篇文章 <使用Jquery+EasyUI进行框架项目开发案例讲解之一---员工管理源码分享> ...
- 使用Jquery+EasyUI 进行框架项目开发案例讲解之二---用户管理源码分享
使用Jquery+EasyUI 进行框架项目开发案例讲解之二 用户管理源码分享 在上一篇文章<使用Jquery+EasyUI进行框架项目开发案例讲解之一---员工管理源码分享>我们分享 ...
随机推荐
- 1kb 的 placeholder.js 增加 img 标签使用方式
预览 官方网站示例. 项目 github 地址 使用 引入 placeholder.js 到你的前段代码中: <script src="placeholder.js"> ...
- 8 个有用的 HTML5 标签
作为一个 web 前端开发者,在制作页面的时候你会从一大堆不同的标签中选择合适的标签来完成相应的功能.有些 HTML5 标签广为流传,例如 <article> <header> ...
- 移动端——touch事件
1.touchstart 当手指触碰屏幕时候触发 dom.addEventListener('touchstart',function(e){}); startX=e.touches[0].clien ...
- java中如何打印规定图案? 举例说明
9.4 print out the following pattern(打印图案). * *** ***** ******* ***** *** * 提示: 1)本题上面的图案和下面的图案是一样的.所 ...
- golang对接阿里云私有Bucket上传图片、授权访问图片
golang对接阿里云私有Bucket上传图片.授权访问图片 1.为什么要设置私有bucket 公共读写:互联网上任何用户都可以对该 Bucket 内的文件进行访问,并且向该 Bucket 写入数据. ...
- ubuntu下Docker配置阿里云镜像加速
1.确认正确安装好docker,登录阿里云,打开如下界面 https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors 2.复制下面那段代码, ...
- python---两个栈实现一个队列
class Solution: """两个栈实现一个队列""" def __init__(self): # 接收栈 self.accept_ ...
- Python Pandas库 初步使用
用pandas+numpy读取UCI iris数据集中鸢尾花的萼片.花瓣长度数据,进行数据清理,去重,排序,并求出和.累积和.均值.标准差.方差.最大值.最小值
- clickhouse智能提示编辑器
对于经常写sql的人来说智能提示是非常重要的,这个非常影响写sql的效率和心情. 这里说的智能提示不仅仅是关键字(select等)的智能提示,还得要做到表字段的智能提示. 例如: 下面是mysql的智 ...
- HCIE笔记-第五节-IP地址+VLSM
192.168.1.111 -- 点分十进制 -- IPV4地址表示格式 计算机 只能识别 01010101 二进制 4组十进制数 规则:二进制0/1 在不同位表达的含义是不一致的,0永远代表不取值, ...