JSP
JSP全名为Java Server Pages,中文名叫java服务器页面...其根本是一个简化的Servlet设计,是一种动态网页技术标准。JSP技术它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段和JSP标记从而形成JSP文件,后缀名为(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
JSP -- 翻译Servlet文件 -- 编译.class文件 -- 执行
在tomcat/work/翻译Servlet的文件
<%! %> 成员方法、成员变量
<%= %> 输出内容
<% %> 局部变量,语句
* HTML的注释 <!-- --> JSP文件的阶段存在,在翻译成java文件也存在, 在页面存在
* JAVA的注释 JSP文件的阶段存在,在翻译成java文件也存在, 在页面不存在
<% /**/多行 /** *文档 */ %>
* JSP的注释 <%-- JSP的注释 --%> 之后存在JSP文件的阶段
* 在web.xml中进行配置。
<error-page> <error-code>404</error-code> <location>/404.jsp</location> </error-page> <error-page> <error-code>500</error-code> <location>/500.jsp</location> </error-page>
<%@ page %>指令作用于整个JSP页面,同样包括静态的包含文件。但是<% @ page %>指令不能作用于动态的包含文件,比如 <jsp:include>
你可以在一个页面中用上多个<% @ page %>指令,但是其中的属性只能用一次,不过也有个例外,那就是import属性。因为import属性和Java中的import语句差不多(参照Java Language),所以你就能多用此属性几次了.
无论你把<% @ page %>指令放在JSP的文件的哪个地方,它的作用范围都是整个JSP页面。不过,为了JSP程序的可读性,以及好的编程习惯,最好还是把它放在JSP文件的顶部.
* language :JSP文件允许嵌入的语言。只支持一种JAVA语言。(不需要改变) * extends :JSP翻译翻译Servlet文件,servlet继承的类。(不需要改变) * session :默认值是true,可以直接使用session。设置false,不能直接使用。 * import :引入java的jar包(使用多次) * buffer :设置缓冲区的大小 默认8kb * aotoFlush :设置默认刷新缓冲区(不要修改) * errorPage :指定错误页面 * isErrorPage :设置值,可以是exception对象,设置true,使用exception,设置不能使用exception对象 * contentType :服务器端输出所有内容采用编码。 * pageEncoding :JSP翻译成Servlet文件时采用的编码。 * isELIgnored :是否忽略EL表达式(false,不忽略,true,忽略)
* 重点:
session
import
contentType
pageEncoding
isELIgnored
<% @ taglib %>指令声明此JSP文件使用了自定义的标签,同时引用标签库,也指定了他们的标签的前缀。
你必须在使用自定义标签之前使用<% @ taglib %>指令,而且你可以在一个页面中多次使用,但是前缀只能使用一次
* taglib :引入标签库文件
* 语法:<%taglib %>
* uri:引入标签库文件的名称
* prefix :标签库的别名
<jsp:include>元素允许你包含动态文件和静态,这两种包含文件的结果是不同的。如果文件仅是静态文件,那么这种包含仅仅是把包含文件的内容加到jsp文件中去,而如果这个文件动态的,那么这个被包含文件也会被Jsp编译器执行。
* include:包含页面(页面布局)
* 语法:<%@ include file="要包含文件的地址(静态包含)" %>
* <%@ include file="/include/head.jsp" %>
jsp内置对象,是指可以不加声明和创建就可以在JSP页面脚本(Java程序片和Java表达式)中使用的成员变量。
原文:https://www.cnblogs.com/taozizainali/p/10982893.html