一、JSP(JAVA Sever page)
从用户看待–网页
从程序猿看待–java类继承了servlet
jsp和html的区别:
html:大多数显示静态内容。
jsp:里面可以写java代码,动态改变东西可以展示在页面内。
我们在web文件内新建JSP文件(初始):
1 | <%@ page language="java" contentType="text/html; charset=UTF-8" |
二、 page指令(第一行)
分析第一行的<%%>代码
1 | <%@ page language="java" contentType="text/html; charset=UTF-8" |
- language:表明jsp页面用什么书写(java)
1
language="java"
- contentType:表明什么类型的文件,用什么编码(response里面文字编码就用的这个)
1
contentType="text/html; charset=UTF-8"
- pageEncoding:jsp内容编码(body里面的内容)
1
pageEncoding="UTF-8"
- extends:用于指定jsp翻译成java文件后,继承的父类是谁,一般不用改。
- import:导包使用的,一般不用手写。
1
<%@ import.java.util %>
- *session *:
1
session="true/false"
用于控制在这个jsp页面里面,能够直接使用session对象。
如果是true:那么会有getSession()的调用,
如果是false:那么就不会有该方法调用,也就是没有session对象了。在页面上自然也就不能使用session了。 - errorPage:指的是错误的页面,值需要给错误的页面路径
- isErrorPage:上面的errorPage 用于指定错误的时候跑到哪一个页面去。 那么这个isErroPage , 就是声明某一个页面到底是不是错误的页面。
三、include指令(包含其他的jsp内容)
包含另外一个jsp的内容(也包括标签元素的内容)进来。
1 | <%@ include file="other02.jsp" %> |
四、taglib指令
1 | <%@ taglib prefix="" uri=""%> |
perfix: 标签库路径
uri: 标签库路径
五、JSP动作标签(只介绍三个)
1 | <jsp:include page=""></jsp:include> |
jsp:include(包含)
包含指定的页面,这里是动态包含而是把它的运行结果拿过来。
1 | //include动作标签(运行结果): |
jsp:forward(跳转)##
1 | //jsp动作标签 |
jsp:param(添加参数)
意思是: 在包含某个页面的时候,或者在跳转某个页面的时候,加入这个参数。
1 |
|
六、JSP内置对象(JSP页面直接使用)
九个JSP内置对象整体概述
第一部分:四个作用域
- pageContext 【PageContext】
- request 【HttpServletRequest】
- *session * 【HttpSession】
- application 【ServletContext】
第二部分:两个对比
- out 【JspWriter】
- response 【HttpServletResponse】
如果同时拥有response和out的输出,那么会把out整合到response里面。先输出response的,后是out的。
第三部分:不常用
-** exception** 【Throwable】
- page 【Object】 就是这个jsp翻译成的java类的实例对象
- config 【ServletConfig】
四个作用域:
pageContext 【PageContext】
request 【HttpServletRequest】
session 【HttpSession】
application 【ServletContext】
这些对象可以存值(setAttribute),但是他们的取值范围(getAttribute)有限定.
1 | 存储<br> |
四个作用域的大小
- pageContext 【PageContext】
仅限于当前的页面。
还可以获取到其他八个内置对象。
- request 【HttpServletRequest】
仅限于一次请求,只要服务器对该请求做出了响应。 这个域中存的值就没有了。
- session 【HttpSession】
限于一次会话(多次请求与响应)当中。
- application 【ServletContext】
整个工程都可以访问,服务器关闭后就不能访问了。