JSP

jsp 中的三种 Java 脚本

  1. <%…%>:Java代码片段,可以放N跳Java代码!方法内能写什么,他就能放什么.
  2. <%=…%>:Java表达式,用于输出(常用),用于输出一个表达式(或变量)的结果。
    response.getWriter.print(…);这里能放什么,它就能放什么。
  3. <%!..%>:声明,用来创建类的成员变量和成员方法。类体中可以放什么,他就可以放什么。
    Class MyClass{
    }

JSP 原理

jsp 其实就是一种特殊的 Servlrt

Cookie

  1. Cookie
  • Cookie 是 Http 协议制定的。先由服务器保存 cookie 到浏览器,下次浏览器请求服务器时把上次请求得到的 Cookie 再归还给服务器。
  • 由服务器创建保存到客户端浏览器的 Cookie 是一个键值对。
  1. JavaWeb 中使用 Cookie
  • 使用 response.addCookie() 方法向浏览器保存 cookie
  • 使用 request.getCookie() 方法获取浏览器归还的 cookie
  1. Cookie 详解
  • cookie 的 maxAge:Cookie 可保存的最长时间,以秒为单位。例如:cookie.setMaxAge(60) 表示 Cookie 会被浏览器保存到硬盘。

maxAge > 0:
maxAge = 0:
maxAge < 0:Cookie 只会在浏览器内存中保存0

  1. Cookie 的 path
  • Cookie 的 path 并不是设置这个 Cookie 在客户端的保存路径!!
  • Cookie 的 path 由服务器创建 Cookie 时设置
  • 当浏览器访问服务器的某个路径时,需要归还哪些 Cookie 给服务器呢?这由 Cookie 的path 决定。
  • 浏览器访问服务器的路径,如果包含某个 Cookie 的路径,那么就会归还这个 Cookie

例如:
aCookie.path=/day11; bCookie.path=/day11/jsps; cCookie.path=/day11/jsps/cookie;
访问:/day11/index.jsp时,归还:aCookie
访问:/day11/jsps/a.jsp时,归还aCookie和bCookie

  • Cookie path 的默认值:当前访问路径的父路径。
  1. Cookie 的域

HttpSession(*****)

  1. HttpSession 概述
  • HttpSession 是由 JavaWeb 提供的,用来会话跟踪的类。session 是服务器端对象,保存在服务器!!!
  • HttpSession 是 Servlet 三大域对象之一(resquest、session、application(ServletContext)),所以它也有 setAttribute() 等。
  • HttpSession 底层依赖 Cookie,或 URL 重写!
  1. HttpSession 的作用
  • 会话范围:会话范围是某个用户从首次访问服务器开始,到该用户关闭浏览器结束!

会话:一个用户对浏览器的多次连贯性请求!所谓连贯性请求,就是该用户多次请求中间没有关闭浏览器!

  • 服务器会为每个客户端创建一个 session 对象,session 就好比客户在服务器端的账户,它们被服务器保存到一个 Map 中,这个 Map 被称之为 session 缓存!

Servlet 中得到 session 对象:HttpSession session = request.getSession();
JSP 中得到 session 对象:session 是 JSP 的内置对象,不用创建可以直接使用!

  • session 域相关方法:

void setAttribute(String name, Object value)
Object getAttribute(String name)
void removeAttribute(String name)

JSP 三大指令

  1. page
  2. include --> 静态包含
  3. taglib --> 导入标签库

JSP 动作标签

这些 JSP 动作标签与 html 提供的标签有着本质的区别。

  • 动作标签是由 tomcat 来解释执行的,它与 Java 代码一样,都是在服务器端执行。

  • html 由浏览器执行

  • <jsp:forward>:转发!它与RequestDispatcher 的 forward 方法是一样的,一个是在 Servlet 中使用,一个实在 JSP 中使用。

  • <jsp:include>:包含!它与RequestDispatcher 的 include 方法是一样的,一个是在 Servlet 中使用,一个实在 JSP 中使用。
    在这里插入图片描述

  • <%@include> 和 <jsp:inclue> 的区别?
    第一个是真正的合并,第二个相当于一个调用。

  • <jsp:param>:它用来作为 forward 和 include 的子标签,用来给转发或包含页面传递参数!

JavaBean

JavaBean 的规范

  1. 必须要有一个默认构造器
  2. 提供 get/set 方法,如果只有 get 方法,那么这个属性就是只读属性
  3. 属性:有 get/set 方法的成员,还可以没有成员,只有 get/set 方法。属性名称由 get/set 方法来决定,而不是由成员名称。

JSP 中与 javaBean 相关的标签
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值