为了账号安全,请及时绑定邮箱和手机立即绑定

会话技术及jsp概述

标签:
Java

一、会话技术

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


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
全栈工程师
手记
粉丝
133
获赞与收藏
772

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消