会话技术及jsp概述

  一、会话技术

  1、概念:在一次会话中共享数据,在web中指,浏览器和服务器的一次通信。包含多次请求,和多次响应。

  可以在一次会话的多次请求中共享数据。

  2、客户端会话技术:Cookie

  将数据保存在客户端 服务器压力不大 但数据不安全;Cookie默认存储在浏览器的内存中

  //发送cookie:

  Cookie c = new Cookie(msg,hehe);

  response.addCookie(c);

  //接受cookie:

  Cookie[] cs = request.getCookies();

  if(cs != null){

  for(Cookie c : cs){

  String name = c.getName();

  if(msg.equals(name)){

  String value = c.getValue();

  }

  }

  }

  //设置Cookie的存活时间,可以使其持久化

  setMaxAge(int second):

  正数:存在硬盘上

  负数:默认值-1 存在浏览器内存中

  0:删除cookie

  //使用cookie传递中文

  Cookie uc = new Cookie(username, URLEncoder.encode(username, utf-8));//编码

  username = URLDecoder.decode(c.getValue(), utf-8);//解码

  3、服务端会话技术:Session

  将数据保存在服务端 数据安全 服务器压力大;session依赖于cookie存在

  //1.获取session

  HttpSession session = request.getSession();

  //2.存储数据

  session.setAttribute(msg, hehe);

  //3.获取数据

  Object msg = session.getAttribute(msg);

  //销毁session

  session.invalidate()

  //销毁 session 超时30分钟就会自动销毁

  session-config

  session-timeout30/session-timeout

  /session-config

  二、jsp —— java servlet page

  1、概念:是一种既可以写HTML语言也可以写Java代码的页面,JSP的本质是一个Servlet

  语法:

  %! int num=1000; % 生成的Java代码在成员位置

  % System.out.println(hello); % 生成的代码在service()方法中

  %= hello world % out.print(hello word);

  %-- jsp专用注释 --% 注释

  2、三大指令:配置JSP页面的属性或者导入一些额外的内容

  %@ 指令名称 属性名=属性值 %

  1)page指令

  language:java

  import:导入软件包

  pageEncoding:utf-8

  autoFlush:自动刷新

  buffer:缓冲区大小

  errorPage:指定错误页面

  isErrorPage:是否是错误页面 可以使用内置对象exception

  2)taglib指令

  导入额外的内容

  %@ taglib uri=http://java.sun.com/jsp/jstl/core prefix=c %

  prefix:指定标签前缀,这个东西可以随意起名

  uri:指定第三方标签库的uri(唯一标识)

  3)include指令

  静态包含%@include file=页面% 包含后,只会存在一个.class文件

  3、六个动作标签

  1)jsp:useBean id=对象名 class=包名.类名 scope=作用范围(request/page/application/session)/

  jsp:setProperty name=javaBean对象 property=javaBean对象属性名 param=username/

  jsp:getProperty name=javaBean对象 property=javaBean对象属性名 /

  2)jsp: include page=included.jsp flush=true / 动态包含 多个.class字节码文件

  3) jsp:forward page=/index.jsp

  jsp:param name=msg value=hehe/

  /jsp:forward

  4、九个内置对象

  1)out 输出对象 向客户端输出数据,字节流.如out.print(hello);

  2)request 请求对象 接收客户端的http请求

  3)response 响应对象 a:addCookie(Cookie cookie); b:sendRedirect(/wel.jsp)

  4)session 会话对象 getAttribute(String name)

  5)application 应用程序对象 它是ServletContext类的实例

  6)page 页面对象 代表jsp这个实体本身,即当前页面有效.相当于java中的this

  7)exception 例外对象 代表运行时的异常

  8)pageContext 页面上下文对象 pageContext对象提供了对JSP页面内所有的对象及名字空间的访问

  9)config 配置对象 jsp对应的servlet的配置,可以得到web.xml中的初使化参数

猜你喜欢

转载自www.cnblogs.com/qfjavabd/p/10097422.html