一、会话技术

  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中的初使化参数

会话技术及jsp概述的更多相关文章

  1. JavaWeb-10(会话技术之session&JSP)

    JavaWeb-会话技术之session&JSP 会话管理之Session技术 一.Session 在WEB开发中,server能够为每一个用户浏览器创建一个会话对象(session对象),注 ...

  2. JSP入门&会话技术

    一.JSP    1.jsp技术        jsp是sun提供动态web资源开发技术.为了解决在Servlet中拼写html内容css.js内容十分不方便的问题,sun提供了这样一门技术.如果说S ...

  3. 会话技术: Cookie Session JSP

    ##  Cookie A..概念:客户端会话技术,将数据保存到客户端 B.使用步骤: 1.创建Cookie对象,绑定数据 new Cookie(String  name, String value) ...

  4. JavaEE之动态页面技术(JSP/EL/JSTL)

    动态页面技术(JSP/EL/JSTL) JSP技术 jsp脚本和注释 jsp脚本: 1)<%java代码%> ----- 内部的java代码翻译到service方法的内部 2)<%= ...

  5. 会话技术——Cookies和Session详解

    会话技术 (一) 概述.用途以及分类 (1) 基本概述 概述:会话是浏览器和服务器之间的多次请求和响应 也就是说,从浏览器访问服务器开始,到访问服务器结束,浏览器关闭为止的这段时间内容产生的多次请求和 ...

  6. 会话技术( Cookie ,Session)

    会话技术:    会话:浏览器访问服务器端,发送多次请求,接受多次响应.直到有一方断开连接.会话结束.        解决问题:可以使用会话技术,在一次会话的多次请求之间共享数据.           ...

  7. Java实战之04JavaWeb-03会话技术

    一.会话技术简介 1.什么是会话,为什么需要会话技术? 会话:从打开一个浏览器,访问某个网站,到关闭这个浏览器的这个过程称为一次会话.http协议是状态的. 2.会话技术的分类 客户端存储技术:Coo ...

  8. 会话技术cookie和session详解

    什么是会话 会话可简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话. 会话技术解决了什么问题 每个用户与服务器进行交互的过程中,各自会有一 ...

  9. web基础之会话技术

    一.会话技术之Cookie Cookie技术是将数据存储到客户端 1.怎样去向客户端写出一个cookie 1)创建Cookie对象 Cookie cookie = new Cookie(name,va ...

随机推荐

  1. Postman + newman + jenkins 的API自动化测试应用

    一.环境配置 Postman postman 的具体使用可以参考另外一篇文章:postman 做接口测试之学习笔记 Newman 第一步,安装nodejs. 第二步,在nodejs命令行安装newma ...

  2. testng入门教程16数据驱动(把数据写在xml)

    testng入门教程16数据驱动(把数据写在xml) testng入门教程16数据驱动(把数据写在xml)把数据写在xml文件里面,在xml文件右键选择runas---testng执行 下面是case ...

  3. C语言头文件、库文件的查找路径

    在 程序设计中,文件包含是很有用的.一个大的程序可以分为多个模块,由多个程序员分别编程.有些公用的符号常量或宏定义等可单独组成一个文件,在其它文件的开头用包含命令包含该文件即可使用.这样,可避免在每个 ...

  4. matlab 怎么建立结构体数组?

    https://zhidao.baidu.com/question/537198107.html 怎么定义一个结构体数组,使数组的每个元素是一个结构体变量.像这样:a=(1,2)a(1)=struct ...

  5. sql server2012重复执行创建表视图sql及带行号的视图

    1.可重复操作(创建表,视图)的sql语句判断 IF EXISTS ( SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[re ...

  6. uva11354 LCA+最小生成树+dp

    源自大白书 题意 有n座城市通过m条双向道路相连,每条道路都有一个危险系数.你的任务是回答若干个询问,每个询问包含一个起点s和一个终点t,要求找到一条从s到t的路,使得途径所有的边的大最大危险系数最小 ...

  7. CAScrollLayer

    CAScrollLayer 对于一个未转换的图层,它的bounds和它的frame是一样的,frame属性是由bounds属性自动计算而出的,所以更改任意一个值都会更新其他值. 但是如果你只想显示一个 ...

  8. python3 集合的常用方法

    方法 意义 S.add(e) 在集合中添加一个新的元素e:如果元素已经存在,则不添加 S.remove(e) 从集合中删除一个元素,如果元素不存在于集合中,则会产生一个KeyError错误 S.dis ...

  9. Spring,Struts2,MyBatis,Activiti,Maven,H2,Tomcat集成(二)——Struts2集成

    1. pom.xml文件添struts2依赖jar包: <!-- 与Struts2集成必须使用 --> <dependency> <groupId>org.spri ...

  10. NIO_2

    导语 缓冲器的设计的是新IO模型中最基础的一部分.因为新IO模型中要求所有的IO操作都需要进行缓冲.在新的IO模型中,不再向输出流写入数据和从数据流中读取数据了,而是要从缓冲区中读写数据.缓冲区可是是 ...