- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章--JSP内置对象
使用session实现访问控制 在控制页面获取用户请求的登录信息进行验证 登录处理页面的代码片断 % if (rs.next()) { //如果是已注册用户 session.setAttribute(LOGINED_USER, loginedUser); response.sendRedirect(index.jsp); } else { response.sendRedirect(login.html); } % 在session中存放用户登录信息 使用session实现访问控制 在新闻发布系统新闻发布页面增加登录验证 % User user = (User) session.getAttribute(LOGINED_USER); if (user == null) { response.sendRedirect(login.jsp); } % 如果session中不存在该用户的登录信息,转入登录页面 使用session实现访问控制 访问控制效果验证,步骤如下: 直接在IE地址栏中输入URL,访问系统首页面 通过登录页面进入系统首页面 重新开启一个IE窗口,直接访问系统首页面 演示示例:使用session实现访问控制 include指令 除了首页面,其它页面中同样需要加入登录验证, 有没有办法避免冗余代码的出现? 可以将一些共性的内容写入一个单独的文件中,然后通过include指令引用该文件,从而降低代码的冗余问题,也便于修改共性内容 include指令 创建登录验证文件 loginControl.jsp 在后台首页面中使用include指令引用登录验证文件 %@ page import=org.jbit.bean.User% % User user = (User) session.getAttribute(LOGINED_USER); if (user == null) { response.sendRedirect(login.html); } % %@ include file=loginControl.jsp % Cookie与session的比较 session是在服务器端保存用户信息,Cookie是在客户端保存用户信息 session中保存的是对象,Cookie保存的是字符串 session随会话结束而关闭,Cookie可以长期保存在客户端 Cookie通常用于保存不重要的用户信息,重要的信息使用session保存 JSP内置对象application application类似于系统的“全局变量”,用于实现用户之间的数据共享 application对象的常用方法: void setAttribute(String key, Object value):以键/值的方式,将一个对象的值存放到application中 Object getAttribute(String key):根据键去获取application中存放对象的值 application.setAttribute(LOGINED_USER, new ArrayList()); if (application.getAttribute(LOGINED_USER) != null) { List loginedUsers = (List) application.getAttribute(LOGINED_USER); } application对象 application是JSP内置对象 实现服务内数据的共享 在服务内值存在一个对象实例 application对象的常用方法 类型 方法名称 说 明 void setAttribute(String key,Object value) 以key/value的形式保存对象值 Object getAttribute(String key) 通过key获取对象值 String getRealPath(String path) 返回相对路径的真实路径 JSP内置对象的范围 对象的范围 范围决定了JSP是否可以进行对象访问 范围的分类 名称 说 明 page范围 在一个页面范围内有效,通过pageContext对象访问该范围内的对象 request范围 在一个服务器请求范围内有效,与客户端请求绑定一起 session范围 在一次会话范围内容有效,在会话期间与session绑定的对象皆属于该范围 application范围 在一个应用服务器范围内有效,当应用服务启动后即创建该对象,并向所有用户所共享 总结 你学到了吗? 什么是JSP内置对象? request对象的用法? Reponse对象的用法? 如何实现页面跳转? 会话跟踪技术的实现? 上机练习 1、注册页面请
文档评论(0)