jsp(2)
来源:互联网 发布:js判断上传文件的类型 编辑:程序博客网 时间:2024/04/30 18:42
JavaBean简介
JavaBeans就是符合某种特定的规范的java类,使用Javabeans的好处是解决代码重复编写,
减少代码冗余,功能区分明确,提高了代码的维护性
JSP动作元素
JSP动作元素,动作元素为请求处理阶段提供信息。动作元素遵循XML元素的语法,有一个包含元素名
的开始标签,可以有属性、可选的内容、与开始标签匹配的结束标签。
jsp动作标签
<jsp:useBeans>
作用:在jsp页面中实例化或者在指定范围内使用javabean:
<jsp:useBean id = "标识符" class = "java类名" scope = “作用范围”/>
<jsp:setProperty>
作用:给已经实例化的JavaBean对象的属性赋值,一共有四种形式
<jsp:getProperty>
作用:获取指定JavaBean对象的属性值
Javabean的四个作用域范围
说明:使用useBeans的scope属性可以用来指定javabean的作用范围
page 仅在当前页面有效
request 可以通过HttpRequest.getAttribute()方法取得javaBean对象
session 可以通过HttpSession.getAttribute()方法取得JavaBean对象
application 可以通过application.getAttribute()方法取得javabean对象
JSP状态管理
http协议的无状态性
无状态是指,当浏览器发送请求给服务器的时候,服务器响应客户端请求。
但是当同一个浏览器再次发送请求给服务器的时候,服务器并不知道它就是
刚才那个浏览器
简单的说,就是服务器不会去记得你,所以就是无状态协议
保存用户状态的两大机制
Session、Cookie
Cookie是Web服务器保存在客户端的一系列文本
Cookie的作用
对特定对象的追踪
保存用户网页浏览记录与习惯
简化登录
安全风险:非常容易泄露用户的信息
JSP中Cookie的使用
创建: Cookie newCookie = new Cookie(String key,Object value);
写入: response.addCookie(newCookie);
读取: Cookie[] cookies = request.getCookies();
常用方法
void setMaxAge(int expiry) 设置cookie的有效期,秒为单位
void setValue(String value) 在cookie创建后,对cookie进行赋值
String getName() 获取cookie的名称
String getValue() 获取cookie的值
int getMaxAge() 获取cookie的有效时间,秒为单位
Session与Cookie的对比
session在服务器端保存用户信息
cookie在客户端保存用户信息
session中保存的是Object类型
cookie中保存的是String类型
session会随会话的结束而将其存储的数据销毁
cookie可以长期保存在客户端
session常用于保存重要的信息
cookie保存不重要的用户信息
指令与动作
include指令
语法:<%@include file="URL"%>
forward动作
<jsp:forward page="URL"/>
等同于
request.getRequestDispatcher("/url").forward(request,response);
param动作
<jsp:param name="参数名" value="参数值">
常常与<jsp:forward>一起使用,作为其的子标签
JavaBeans就是符合某种特定的规范的java类,使用Javabeans的好处是解决代码重复编写,
减少代码冗余,功能区分明确,提高了代码的维护性
JSP动作元素
JSP动作元素,动作元素为请求处理阶段提供信息。动作元素遵循XML元素的语法,有一个包含元素名
的开始标签,可以有属性、可选的内容、与开始标签匹配的结束标签。
jsp动作标签
<jsp:useBeans>
作用:在jsp页面中实例化或者在指定范围内使用javabean:
<jsp:useBean id = "标识符" class = "java类名" scope = “作用范围”/>
<jsp:setProperty>
作用:给已经实例化的JavaBean对象的属性赋值,一共有四种形式
<jsp:getProperty>
作用:获取指定JavaBean对象的属性值
Javabean的四个作用域范围
说明:使用useBeans的scope属性可以用来指定javabean的作用范围
page 仅在当前页面有效
request 可以通过HttpRequest.getAttribute()方法取得javaBean对象
session 可以通过HttpSession.getAttribute()方法取得JavaBean对象
application 可以通过application.getAttribute()方法取得javabean对象
JSP状态管理
http协议的无状态性
无状态是指,当浏览器发送请求给服务器的时候,服务器响应客户端请求。
但是当同一个浏览器再次发送请求给服务器的时候,服务器并不知道它就是
刚才那个浏览器
简单的说,就是服务器不会去记得你,所以就是无状态协议
保存用户状态的两大机制
Session、Cookie
Cookie是Web服务器保存在客户端的一系列文本
Cookie的作用
对特定对象的追踪
保存用户网页浏览记录与习惯
简化登录
安全风险:非常容易泄露用户的信息
JSP中Cookie的使用
创建: Cookie newCookie = new Cookie(String key,Object value);
写入: response.addCookie(newCookie);
读取: Cookie[] cookies = request.getCookies();
常用方法
void setMaxAge(int expiry) 设置cookie的有效期,秒为单位
void setValue(String value) 在cookie创建后,对cookie进行赋值
String getName() 获取cookie的名称
String getValue() 获取cookie的值
int getMaxAge() 获取cookie的有效时间,秒为单位
案例:
<% request.setCharacterEncoding("utf-8"); String[] isUseCookies = request.getParameterValues("isUseCookie"); if(isUseCookies!=null&&isUseCookies.length>0){ //这样做可以解决cookie中不能保存中文的问题 String username = URLEncoder.encode(request.getParameter("username"),"utf-8"); String password = URLEncoder.encode(request.getParameter("password"),"utf-8"); Cookie usernameCookie = new Cookie("username",username); Cookie passwordCookie = new Cookie("password",password); usernameCookie.setMaxAge(864000); passwordCookie.setMaxAge(864000); response.addCookie(usernameCookie); response.addCookie(passwordCookie); }else{ Cookie[] cookies = request.getCookies(); if(cookies != null &&cookies.length > 0){ for(Cookie c : cookie){ if(c.getName().equals("username")||c.getName().equals("password")){ c.setMaxAge(0); response.addCookie(c); } } } } %>
Session与Cookie的对比
session在服务器端保存用户信息
cookie在客户端保存用户信息
session中保存的是Object类型
cookie中保存的是String类型
session会随会话的结束而将其存储的数据销毁
cookie可以长期保存在客户端
session常用于保存重要的信息
cookie保存不重要的用户信息
指令与动作
include指令
语法:<%@include file="URL"%>
forward动作
<jsp:forward page="URL"/>
等同于
request.getRequestDispatcher("/url").forward(request,response);
param动作
<jsp:param name="参数名" value="参数值">
常常与<jsp:forward>一起使用,作为其的子标签
0 0
- jsp 2 jsp语法
- JSP&Servlet jsp(2)
- JSP 2
- JSP -2
- jsp(2)
- JSP-2
- JSP/Servlet-----2、JSP基本原理
- jsp学习笔记2:jsp语法
- jsp基础知识2(jsp指令)
- jsp课程(2)-- JSP指令
- jsp作业(2)--jsp指令
- [JSP]JSP内置对象(2)
- JSP教程【2】JSP基本语法
- JSP学习笔记(2)-JSP语法
- Jsp语法(2)、Jsp指令
- jsp例外处理(2)
- JSP 语法(2)
- Base-Jsp-2-JavaBeans
- 【js】Ajax提交form表单(ajaxSubmit使用讲解 )
- 函数调用中堆栈
- OC中创建字符串的几种方法及Xcode7.3中其存储内存地址的异同
- Xcode各版本官方下载
- android as2.0 播放器源码 支持 4.2+ 系统
- jsp(2)
- ajaxFileUpload 异步上传文件简单使用
- js与Android交互之js调用Android中的方法
- 广度优先算法最短路径问题 Dijkstra算法
- iOS开发之---static关键词详解
- Windows Server 2008远程桌面端口更改方法
- java 堆 栈 方法区的简单分析
- 你所不知道的继承(一)
- U-Mail反垃圾邮件网关过滤Locky勒索邮件