include 指令
用于将一个JSP 或 HTML文件 引入到另一个JSP中.
格式:
<%@ include file="引入的路径" %>
include 动作
用于将一个 JSP 或 HTML文件 引入到另一个JSP中.
格式:
<jsp:include page="引入的路径" flush="true"/>
include 指令 与 include动作得到区别
include指令: 在JSP程序的转换时期, 将被引入的JSP文件嵌入到include指令的位置, 然后统一编译执行 (最终生成了一个.java文件)
include动作: 在JSP程序的转换时期, 被引入的文件不会嵌入到include动作的位置, 而是等客户端请求时, 再临时将被引入的文件以额外的servlet的方式加载到响应中, (最终生成的是多个.java文件)
JSP的内置对象 (隐含对象)
内置对象指的是: JSP引擎在转换JSP文件时, 帮我们的代码在执行之前 创建的一些 供我们使用的对象,
内置对象具备大量的JSP中的常用功能 , 使用JSP内置对象可以大大的简化我们的开发流程.
JSP的九大内置对象
request:
类型: HttpServletRequest
作用: 请求对象, 包含了请求相关的信息和参数.
response:
类型: HttpServletResponse
作用: 响应对象, 包含了一些用于响应的功能.
out:
类型: JSPWriter
作用: 是打印流, 用于向响应体中输出数据。
session:
类型: HttpSession
作用: 会话对象, 用于状态管理以及 会话跟踪。
application:
类型: ServletContext
作用: Servlet的上下文,一个应用内存中同时只有一个上下文对象. 用于多个Servlet/JSP之间通信 ,
------
config:
类型: ServletConfig
作用: Servlet的配置对象, 用于配置一些初始的键值对信息.
pageContext:
类型: PageContext
作用: 页面的上下文 , 每一个JSP都拥有一个上下文对象, 用于多段代码之间进行通信.
exception:
类型: Throwable
作用: 当页面的page指令中 isErrorPage属性值为true时, 才会存在此对象, 用于收集错误信息!
通常此对象值为null , 只有其他页面指定errorPage=当前页面时, 且其他页面发生BUG后,跳转到此页面时,对象才不为null
page:
类型: Object
作用: 指当前JSP页面自身 , 在JSP引擎生成的代码中 , page对象的赋值代码为:
Object page = this;
JSP的四大域对象
九大隐含对象中, 包含了四个较为特殊的隐含对象, 这四个对象我们称其为域对象,
它们都具备存储数据 / 删除数据 / 获取数据 的方法:
存储数据:
setAttribute(String key ,Object value);
获取数据:
Object value = getAttribute(String key);
删除数据:
removeAttribute(String key);
这四个域对象 , '域' 指的是作用域 ! 分别是:
pageContext : 页面的上下文 作用域: 一个JSP页面
request : 请求对象 作用域: 一次请求 (请求可以被转发 , 一次请求可能包含多个JSP页面)
session : 会话对象 作用域: 一次会话 (一次会话可能包含多次请求)
application : servlet上下文对象 作用域: 一次服务(服务器的启动到关闭) (一次服务可能包含多次会话)
JSP useBean动作
作用: 向四大域对象中, 存储bean对象.
格式:
<jsp:useBean
id="存储时的key"
scope="page/request/session/application"
class="要存储的对象类型">
</jsp:useBean>
JSP useBean + setProperty动作
作用: 向四大域对象中, 存储bean对象. 且设置属性值
格式:
<jsp:useBean
id="存储时的key"
scope="page/request/session/application"
class="要存储的对象类型">
</jsp:useBean>
<jsp:setProperty name="存储时的key" property="属性名" value="属性值"/>
//setProperty动作可以出现多次
案例:
<jsp:useBean id="p" scope="page" class="cn.xdl.bean.Person"></jsp:useBean>
<jsp:setProperty name="p" property="name" value="刘健健"/>
<jsp:setProperty name="p" property="age" value="18"/>
JSP useBean+ setProperty动作 快速获取表单提交的内容
格式:
<jsp:useBean
id="存储时的key"
scope="page/request/session/application"
class="要存储的对象类型">
</jsp:useBean>
<jsp:setProperty name="存储时的key" property="属性名"/>
注意:
如果setProperty动作中 , property的值即是对象的属性名, 又是我们用户请求的参数的名称的话, 会自动将参数获取到并赋值给对象
JSP getProperty动作
作用:
从四大域对象中 取出某个对象的属性, 并显示到网页中
语法格式:
<jsp:getProperty name="对象的key" property="属性名">
案例:
<jsp:useBean id="per" scope="session" class="cn.xdl.bean.Person"></jsp:useBean>
<jsp:setProperty property="name" name="per" value="刘健"/>
<jsp:setProperty property="age" name="per" value="28"/>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<jsp:getProperty property="name" name="per"/>
本博客所有文章除特别声明外,均采用 CC BY-SA 3.0协议 。转载请注明出处!