2018-09-10JSP内容和标签的查看权限+9个内置对象
动态页面Jsp技术:
Jsp脚本:
<%Java代码%>:内部的Java代码翻译到Service方法的内部!
<%=java变量或表达式%>:会被翻译成service方法内部out.print(),用于页面上输出!
<%!Java代码%>:会被翻译成servlet的成员的内容!
Jsp注释:不同的注释可见范围是不同!
html注释:<!--注释内容-->:可见范围 Jsp源码,翻译后的Servlet,页面 显示html源码(Fn+F12)!
Java注释://单行注释 /*多行注释*/:可见范围 Jsp源码 翻译后的Servlet!
Jsp注释:<%--注释内容--%>:可见范围Jsp源码可见!
//推荐使用Jsp注释!
Jsp运行原理:
Jsp本质就是Servlet!
Jsp在第一次被访问时会被Web容器翻译成Servlet然后再执行(第一次访问会产生.java和.class文件,放入TomCat下的Work文件夹,但是原本的Jsp还是放在WebApps中)!
Jsp的指令是指导Jsp翻译和运行的命令,Jsp包括三大指令:
page指令:属性最多的指令,根据不同的属性,指导整个页面特性
(实际开发中page指令默认)!
格式:<%@ page 属性名1= "属性值1" 属性名2= "属性值2" ...%>
常用属性如下:
language:Jsp脚本中可以嵌入的语言种类(默认设置好)!
pageEncoding:当前Jsp文件的本身编码,内部可以包含contentType
contentType:response.setContentType(text/html;charset=UTF-8)
Session:是否Jsp在翻译时自动创建Session(默认设置为session="true")!
import:导入Java的包(可以写多个<%@ page %>来设置import导包)!
errorPage:当当前页面出错后跳转到哪个页面!
isErrorPage:当前页面是一个处理错误的页面!
include指令:页面包含(静态包含)指令,可以将一个Jsp页面包含到另一个Jsp页面中
格式:<%@ include file="被包含的文件地址"%>
taglib指令:在jsp页面中引入标签库(JSTL标签库,Struts2标签库)!
格式:<%@ taglib uri="标签库地址" prefix="前缀"%>
Jsp的9个内置/隐式对象:
Jsp被翻译成Servlet之后,Service方法中有9个对象定义并初始化完毕,我们在Jsp脚本中可以直接使用这9个对象:
名称 |
类型 |
描述 |
out |
javax.servlet.jsp.JspWriter |
用于页面输出 |
request |
javax.servlet.http.HttpServletRequest |
得到用户请求信息, |
response |
javax.servlet.http.HttpServletResponse |
服务器向客户端的回应信息 |
config |
javax.servlet.ServletConfig |
服务器配置,可以取得初始化参数 |
session |
javax.servlet.http.HttpSession |
用来保存用户的信息 |
application |
javax.servlet.ServletContext |
所有用户的共享信息 |
page |
java.lang.Object |
指当前页面转换后的Servlet类的实例(在普通类中的this) |
pageContext |
javax.servlet.jsp.PageContext |
JSP的页面容器 |
exception |
java.lang.Throwable |
表示JSP页面所发生的异常,在错误页中才起作用 |
只有声明isErrorPage的页面才有Exception对象!
posted on 2018-09-13 11:09 Postgre叮当牛i 阅读(108) 评论(0) 编辑 收藏 举报