jsp内置对象和路径

简介: jsp内置对象和路径

Jsp内置对象的学习:

内置对象:jsp在转译成其对应的java文件(也就是Servlet)时,会默认在_jspService方法中声明创建几个对象。

特点:我们可以在jsp页面中声明java局部代码块,在代码块中直接使用内置对象。

对象:pageContext:页面上下文对象,此对象封存了另外8个对象。

注意:一个jsp页面一个pageContext对象。pageContext对象每次请求都会重新创建。

作用域:当前jsp页面

request:封存了请求相关数据,由服务器创建

session:解决了同一个不同请求之间的数据共享问题

application:ServletContext对象,解决了不同用户之间的数据共享问题

out:响应数据的对象,交于response对象,out对象底层使用了缓冲区。out对象的效率高于response

response:响应对象,设置编码格式

page:代表当前被执行的jsp转译的java文件的对象

config:ServletConfig对象,使用此对象完成资源的初始化。

exception:jsp页面的异常对象,封存了异常信息。

注意:对象的名字必须是转译好的java文件中声明的对象名。

<%@page language="java"%><%-- 声明转译的语言 --%>
<%@page import="java.util.*,java.lang.*"%><%-- 声明转译时导入的java包文件--%>
<%@page pageEncoding="utf-8"%><%-- 设置jsp的数据保存的编码格式--%>
<%@page contentType="text/html; charset=utf-8"%><%-- 设置数据的响应编码格式--%>
<%@page session="false"%><%-- 设置session的状态,默认为true,也就转译的servlet文件中默认session是开启的,使用false关闭--%>
<%@page isErrorPage="true"%><%-- 默认为false ture表示开启exception异常对象的使用--%>
<%@page errorPage="error.jsp"%><%-- 设置当jsp运行出现异常错误时跳转指定的页面--%>
<%--
  page指令的作用:设置jsp转译的时候的一些配置信息。
 --%>

Jsp路径问题:

问题:在jsp页面中进行资源之间的跳转时,如果书写的是相对路径这样会造成如果当前文件的路径发生变更,从当前路径查找资源的相对路径都要重新进行书写。

解决:将相对路径编程绝对路径

使用:在jsp中路径中的第一个/表示服务器根目录。


示例:<a href="/虚拟项目名/资源路径">访问关键字</a>

 

注意:在Myeclipse中创建的jsp页面会自动生成路径处理代码basePath而basePath的值为当前项目根目录,并且在head标签中使用了<base href="<%=basePath%>">相当于将当前页面的资源全部默认定位为从项目根目录开始查找,我们就不需要写第一个/了

注意:basePath方式和添加/方法只能二选一。

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
System.out.println(basePath);
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
     <base href="<%=basePath%>">
    <title>My JSP 'path.jsp' starting page</title>
  <meta http-equiv="pragma" content="no-cache">
  <meta http-equiv="cache-control" content="no-cache">
  <meta http-equiv="expires" content="0">    
  <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
  <meta http-equiv="description" content="This is my page">
  </head>
  <body>
    我是path.jsp
    <a href="a/a.jsp">a.jsp</a>
  </body>
</html>

资源路径总结:

Jsp 中路径:

1.相对路径:../../资源

2.绝对路径:/虚拟项目名/资源路径(也就是从webapps开始)


简单来说,绝对路径就是不管从外部还是内部访问,都能通过此路径找到文件夹;而相对路径就是相对与自身的,其他位置的文件和路径,只能通过内部访问,外部不能通过此路径访问到文件。

目录
相关文章
|
7月前
|
存储 缓存 Java
JSP九大内置对象及基本使用
JSP九大内置对象及基本使用
153 0
|
Java
17JavaWeb基础 - JSP的九大内置对象/四大作用域
17JavaWeb基础 - JSP的九大内置对象/四大作用域
83 0
|
4月前
|
缓存 Java 应用服务中间件
JSP的内置对象 request和response
这篇文章详细介绍了JSP的内置对象,包括request、response、out、session和application对象的使用方法和特性,以及如何通过这些对象处理HTTP请求和响应、管理会话和输出数据。
|
7月前
|
XML 前端开发 Oracle
16:JSP简介、注释与Scriptlet、Page指令元素、Include操作、内置对象、四种属性-Java Web
16:JSP简介、注释与Scriptlet、Page指令元素、Include操作、内置对象、四种属性-Java Web
79 2
|
Java
欢迎来到Jsp编程课时四——内置对象 中四大作用域。(二)
欢迎来到Jsp编程课时四——内置对象 中四大作用域。(二)
115 0
欢迎来到Jsp编程课时四——内置对象 中四大作用域。(二)
|
Java 存储
欢迎来到Jsp编程课时四——内置对象 中四大作用域。(一)
欢迎来到Jsp编程课时四——内置对象 中四大作用域。(一)
67 0
欢迎来到Jsp编程课时四——内置对象 中四大作用域。(一)
|
Java
2022年欢迎来到Jsp编程第二课:JSP核心九大内置对象
2022年欢迎来到Jsp编程第二课:JSP核心九大内置对象
94 0
|
存储 Java
每日一道面试题之jsp 有哪些内置对象?作用分别是什么?
每日一道面试题之jsp 有哪些内置对象?作用分别是什么?
|
缓存 安全 Java
JSP内置对象总结
JSP内置对象总结
138 0
|
Java
jsp相关概念以及九大内置对象
jsp相关概念以及九大内置对象
94 0