JSP 基础(1)

目录

1. 什么是JSP ?

2. JSP用法

3. JSP标记指令

4. JSP动作标记

5. 注释

6. jsp内置对象

6.1 out对象

6.2 request对象

6.3 response对象

6.4 session对象

6.5 application对象


1. 什么是JSP ?

JSP(Java Server Pages), Servlet 不擅长编写以显示效果为主的web页面。

JSP 实际就是HTML文档 + Java脚本,

2. JSP用法

(1)声明: <%! ... %>用于声明JSP所需的变量、方法与类

(2)表达式:

<%= ... %>

(3)脚本小程序: <% ... %>

3. JSP标记指令

<%@ .. %>

指令名: page include taglib(标签库指令) import

(1)page指令:用于设置整个也免得相关属性和功能

如:<%@ page errorPage="error.jsp" %>

(2)include指令:用于设置JSP页面中静态包含一个文件;所谓静态包含,是指JSP页面和被包含的文件先合并为一个新的JSP页面,然后JSP引擎将这个新的JSP页面转译为Java文件

如:<%@ include file="relativeURL" %>

<%@ include file="error.jsp" %>

路径说明:

若路径以“/"开头,则改路径为参照JSP应用的上下文路径;直接以文件名或目录名开头,表示正在使用的JSP当前路径

中间可以带参数:<%@ page errorPage="error.jsp" %>

(3)taglib指令

4. JSP动作标记

  1. 动作元素(7个):param、include 、forward 、plugin、useBean、getProperty、getProperty?

(1) param动作

<jsp:param name="username" value="ttt"/>

(2) include动作:用于告知JSP页面动态加载一个文件,即在JSP页面运行时才将文件引入。所谓动态包含,是指JSP引擎把页面转化为Java文件时,告诉Java解释器,被包含的文件在JSP运行时才被包含进来。

 <jsp:include page="scripts/login.jsp">
 ​
    <jsp:param name="username" value="abd" />//可带参数
 ​
 </jsp:include>

(3)forwar: 用于跳转指定的页面

 <jsp:forward pag="/server/login.jsp"
        <jsp:param name="username" value="abd" />
 </jsp:forward>       

(4)plugin:用于指示JSP页面加载Java Plugin,并使用该插件来下载Java Applet 或Bean

5. 注释

(1)HTML注释

 <!-- 注释1 -->

(2) JSP注释

 <%-- 注释 --%>

JSP注释在JSP引擎编译时会自动忽略,不会发给客户端

(3)Java注释

 1、//
 2./* */
    

6. jsp内置对象

6.1 out对象

输出流对象,用于客户端输出流操作,可将有关信息发送到客户端的浏览器。

是javax.servlet.jsp.JspWriter的实例

 out.print("")-->输出数据
     void flush()-->输出缓冲区的数据
     。。。

6.2 request对象

request对象为请求对象,其中封装了客户端请求的所有信息,如请求的来源、标头、Cookies以及与请求相关的参数值等。

request对象是 javax.servlet.http.HttpServletRequest类的实例。

每当客户端请求一个jsp页面时,jsp引擎就会创建一个新的request对象来代表这个请求。

6.3 response对象

response对象为响应对象,用于对客户端的请求进行动态响应,可向客户端发送数据,如Cookies、时间戳、HTTP标头信息、HTTP状态码等。在实际应用中,response对象主要用于将JSP数据处理后的结果传回到客户端。

response是 javax.servlet.http.HttpServletResponse类的实例。

当服务器创建request对象时,会同时创建用于响应客户端的response对象。

response.setHeader("refresh","1")-->发送一个值为“1”的refresh标头,让页面每隔1s便自动刷新一次。

response.sendRedirect("login.jsp");-->重定向

form表单中的action表示表单提交位置

6.4 session对象

session对象为会话对象,该对象封装了当前用户会话的有关信息。

session对象是 javax.servlet.http.HttpSession类的实例

当用户首次访问服务器上的一个jsp页面时,jsp引擎就会产生一个session对象,同时为该session对象分配一个String类型的ID,并将ID号发送到客户端,存放在用户的Cookie中。(独享)

当用户再次访问连接该服务器的其他页面,或从该服务器连接到其他服务器再返回到服务器时,jsp引擎将继续使用此前所创建的同一个session对象。

待用户关闭浏览器(即终止与服务端的对话)后,服务器端才将该用户的session对象销毁掉

seesion.iisNew()-->判断是否为新用户

6.5 application对象

应用对象,负责提web应用程序在服务器运行期间的某些全局性信息。

与session不同,application针对web应用程序中的所有用户,并为所有用户共享。

application对象是 javax.servlet.ServletContext类的实例

当web服务器启动了一个web应用程序时,就为其产生一个application对象。当关闭web服务器或停止web应用程序时,该application对象才会被销毁掉。

各个web应用程序的application对象是互不相同的。

6.6  exception对象

6.7  page对象

6.8 config对象

配置对象,用于获取Servlet或者jsp引擎的初始化参数

6.9 pageContext对象

页面上下文对象,访问页面的相关信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值