JSP中的内置对象
<j s p:f o r w a r d>
<jsp:forward>是把一个请求转发到另一个JSP或Servlet
或者其他的静态资源(HTML)
特点:
被forward转发的资源必须与发出请求的页面处于相同的上下文环境中,每当遇到此标签时,容器就
会停止执行当前的JSP,转而执行被转发的资源
<j s p:p a r a m>
l当使用<jsp:include>和<jsp:forward>标签引入或将请求转发给的资源是一个能动态执行的程序时,例如Servlet和JSP页面,那么,还可以使用<jsp:param>标签向这个程序传递参数信息。
l语法1:
param name<jsp:include page="relativeURL | <%=expression%>">
<jsp:param name="parameterName" value="parameterValue|<%= expression %>" /> </jsp:include>
l语法2:
<jsp:forward page="relativeURL | <%=expression%>">
<jsp:param name="parameterName" value="parameterValue|<%= expression %>" /> </jsp:include>
l<jsp:param>标签的name属性用于指定参数名,value属性用于指定参数值。在<jsp:include>和<jsp:forward>标签中可以使用多个<jsp:param>标签来传递多个参数。
l<jsp:param>必须同<jsp:include>和<jsp:forward>一起使用。
J S P中的九种内置对象
1.r e q u e s t j s p的内置对象 写法固定(r e q u e s t)
//* 类型是 HttpServletRequest request 根servlet中的类型是一样
//获取上下文路径
String ContextPath();
System.out.println(path);
2.R e s p o n s e
l设置应答头信息
最有用的一个头信息:refresh 刷新
response.setHeader(“头信息内容”,“头信息参数”)
response.setHeader(“refresh”,“1”)
response.setHeader(“refresh”,”2;URL=页面名称“)
l重定向
response.sendRedirect(跳转路径)
<%
//* response jsp的内置对象固定的写法(response)
/
/* 类型是 HttpServletResponse response
//设置应答头信息
//每个一秒刷新当前页面一次
// * refresh 表示刷新,固定写法
// * 1 表示刷新的时间,以秒为单位
response.setHeader("refresh","1");
%>
当前的系统时间:<%=new Date() %>
这是在一个JSP文件里;
<%
//5秒后转到request.jsp页面
/
/5;url=request.jsp 格式:秒数;url=路径
response.setHeader("refresh","5;url=request.jsp");
%>
3.s e s s i o n
Session对象主要用于保存用户的各种信息,直到它的生命周期超时或被人释放掉为止
// * session jsp的内置对象固定写法(session)
// * 类型是 javax.servlet.http.HttpSession
// * jsp的标准指令中session 属性表示在jsp页面中是否可以使用jsp的内置对象session
//* true 表示可以使用默认值
//* false表示不可以使用
//* 当该值是false时,页面不能使用jsp内置对象session 但仍然可以从request对象中获取HttpSession Session();
//* 从request中获取的session 和 jsp内置对象中的session是同一个对象
HttpSession Session();
System.out.println("session "+session);
System.out.println("session1 "+session1);
这两个输出的是一个对像,输出的是一样的;
4.A p p l i c a t i o n对象
l与session类似,也是用来保存信息的,实现在不同页面间参数的共享和传递;但application是所有用户共享的,任何用户都可以访问,而sesion对象则是每个用户私有的
l Application属于servletContext
l Application是在整个服务器中只有一个实例对象
在实际应用中往往使用getServletContext()方法代替application
<%=getServletContext().getRealPath(“/”)%>
.getRealPath获得工作目录。
//* application jsp的内置对象写法固定(application)
//* javax.servlet.servletContext类型
ServletContext ServletContext();
System.out.println("application "+application);
System.out.println("sc "+sc);这两个输出的是一个;
//
// <context-param>
// <param-name>nba</param-name>
// <param-value>火箭</param-value>
//</context-param>
/
/ <context-param>
// <param-name>cba</param-name>
// <param-value>上海</param-value>
//</context-param>
String InitParameter("nba");
System.out.println("nba "+nba);
String
RealPath("/jspobject/application.jsp");
System.out.println("realPath "+realPath);
5.o u t对象
l在JSP页面中应使用out隐式对象来向客户端发送文本形式的实体内容。
l out对象是通过调用pageContext对象的getOut方法返回的,其作用和用法与Writer方法返回的PrintWriter对象非常相似。
l JSP页面中的out隐式对象的类型为JspWriter,JspWriter相当于一种带缓存功能的PrintWriter,设置JSP页面的page指令的buffer属性可以调整它的缓存大
小,甚至关闭它的缓存。
l JSP页面中的out隐式对象相当于插入到Writer方法返回的PrintWriter对象前面的缓冲包装类对象。
l只有向out对象中写入了内容,且满足如下任何一个条件时,out对象才去调用Writer方法,并通过该方法返回的PrintWriter对象将
out对象的缓冲区中的内容真正写入到Servlet引擎提供的缓冲区中:
ü设置page指令的buffer属性关闭了out对象的缓存功能
ü写入到out对象中的内容充满了out对象的缓冲区
ü整个JSP页面结束
//* out jsp的内置对象写法固定(out)
//* javax.servlet.jsp.JspWriter 类型
//* servlet中的字符输出流是 PrintWriter
//jsp页面
//页面的信息写入---> JspWriter --->PrintWriter----->servler引擎(执行输出)
// FileInputStream fis=new FileInputStream("D://"); ------->PrintWriter
// BufferedInputStream buf=new BufferedInputStream(fis); --->JspWriter
// buf---写入信息
// jsp内置对象
JspWriter Out();
System.out.println("out1 "+out1);
System.out.println("out "+out);
6.C o n f i g对象
l Config对象一般用来取得服务器的初始化配置参数但若使用此对象应在l中配置
<%--
<servlet>
<servlet-name>jspconfig</servlet-name>
<!-- 配置jsp当成servlet配置 -->
<jsp-file>/jspobject/config.jsp</jsp-file>
<init-param>
<param-name>it</param-name>
<param-value>java</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>jspconfig</servlet-name>
<url-pattern>/config</url-pattern>
</servlet-mapping>
--%>
<%
// config jsp的内置对象固定写法(config)
// 类型 javax.servlet.ServletConfig 类型
ServletConfig ServletConfig();
System.out.println("config "+config);
System.out.println(" "+scf);
String InitParameter("it");
System.out.println("it "+it);
7.p a g e C o n t e x t对象
l pageContext对象封装了当前JSP页面的运行信息,它提供了返回JSP页面的其他隐式对象的方法。
l PageContext类中定义了一个setAttribute方法来将对象存储进pageContext 对象内部的一个HashMap对象中,同时也定义了一个getAttribute方法来检索存储在该HashMap对象中的对象。
l PageContext类除了可以存储和检索自身中的属性对象外,还定义了可以存储和检索其他域范围内的属性对象的方法。
l getException方法返回exception隐式对象
l getPage方法返回page隐式对象
l getRequest方法返回request隐式对象
l getResponse方法返回response隐式对象
l getServletConfig方法返回config隐式对象
l getServletContext方法返回application隐式对象
l getSession方法返回session隐式对象
l getOut方法返回out隐式对象
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论