JSP开发技术

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/suoyue_py/article/details/97611088

1.JSP概述

什么是JSP:
JSP全名是 Java Server Pages,它是建立在 Servlet 规范之上的动态网页开发技术。
在JSP文件中,HTML 和 Java 代码共同存在,其中,HTML 代码实现网页的静态内容显示,Java 代码实现网页中动态内容的显示。JSP 文件的扩展名为 .jsp
JSP技术所开发的Web应用程序是基于Java 的,从Java 程序生成 Web 页面,使用上的特征:

  • 跨平台
  • 业务代码相分离
  • 组件重用
  • 预编译

2.JSP基本语法

在 JSP 文件中可以嵌套 JSP 的脚本元素和注释等,这些内容的编写都需要遵循一定的语法规范。
JSP 脚本元素:
JSP脚本元素是指嵌套在 <%%> 之中的一条或多条Java 程序代码。通过 JSP 脚本元素可以将 Java 代码嵌入 HTML 页面中,所有可执行的 Java 代码都可以通过 JSP 脚本来执行。
JSP脚本主要包含 3 种类型:

  • JSP Scriptlets
  • JSP 声明语句
  • JSP 表达式

JSP Scriptlets:
JSP Scriptlets 是一段代码段。用于实现 Java 一些复杂操作和控制。
语法格式为:
<% java 代码(变量、方法、表达式等) %>
在Java Scriptlets 中声明的变量是 JSP 页面的局部变量,调用JSP Scriptlets 时,会为局部变量分配内存空间,调用结束后,释放局部变量占有的内存空间。

JSP 声明语句:
用于声明变量和方法,语法格式为:
<%! 定义的变量或方法等 %>
被声明的 Java 代码将被编译到 Servlet 的 _jspService() 方法之外,即在 JSP 声明的语句中定义的都是成员方法、成员变量、静态方法、静态变量、静态代码块等。在 JSP声明语句中声明的方法在整个 JSP 页面有效,但是在方法内定义的变量只在该方法内有效。当声明的方法被调用时,会为方法内定的变量分配内存,而调用结束后立刻会释放所占的内存。
在一个 JSP 页面中可以有多个 JSP 声明语句,单个声明的 Java 语句可以是不完整的,但多个声明组合后的结果必须是完整的 Java 语句。
<%! 和 %> 是用来定义成员变量属性和方法的, <% 和 %> 主要是用来输出内容的,因此,若涉及到了成员变量的操作,就应该使用 <%! 和 %> ,若涉及到了输出内容,就用 <% 和 %>

JSP表达式:
JSP表达式(expression)用于将程序数据输出到客户端,将要输出的变量或表达式直接封装在以 “<%=” 开头和以 "%>"结尾的标记中,基本语法格式为:
<%= expression %>
JSP 表达式中的变量或表达式的计算结果将转换成一个字符串,然后插入到 JSP 页面输出结果的相应位置处。
注意:

  • “<%=” 和 “%>” 标记之间插入的是表达式,不能插入语句
  • “<%=“是一个完整的符号,”<%” 和 “=” 之间不能有空格
  • JSP 表达式中的变量或表达式后面不能有分号 " ; "

JSP注释:
语法格式: <%-- 注释的信息 --%>
Tomcat 在将 JSP 页面编译成 Servlet 程序时,会将 HTML 注释当成普通文本发送到客户端,而会忽略 JSP 页面中被注释的内容,不会将注释信息发送到客户端。

3.JSP指令

为设置 JSP 页面中一些信息,提供了 JSP 指令。JSP 2.0 中定义了 page、include等指令,每种指令到定义了各自的属性。
page指令:
在 JSP 页面中,对页面的某些特性(例如:页面的编码方式、JSP页面采用的语言等)进行描述可通过page指令来实现。
语法格式为:
<% page 属性名 1 = "属性值 1 " 属性名 2 = “属性值 2” …%>
page用于声明指令名称,属性用来指定 JSP 页面的某些特性。
include指令:
在实际开发中,可通过include指令来实现在 JSP 页面静态包含一个文件,例如 HTML 文件、文本文件等。
语法格式为:
<%@ include file=‘被包含的文件地址’%>
include指令只有一个 file 属性,该属性用来指定插入到 JSP 页面目标位置的文件资源。注意插入文件的路径一般不以 " / "开头,而是使用相对路径。

4.JSP隐式对象

在JSP 页面中,有些对象需要频繁使用,为了简化 Web 应用程序的开发,JSP2.0规范中提供了 9 个隐式(内置)对象,都是JSP 默认创建的,可直接在 JSP 页面中使用。
在这里插入图片描述

5.JSP动作元素

JSP 动作元素用来控制 JSP 的行为,执行一些常用的 JSP 页面动作。通过动作元素可以实现多行 Java 代码才能实现的效果,包含页面文件、实现请求转发等。
<jsp:include>动作元素:
*目的:*为了把其他资源的输出内容插入到当前 JSP 页面的输出内容中
语法格式:
<jsp:include page=“relativeURL” flush=“true|false” />
page属性用于指定被引入资源的相对路径;
flush属性用于指定是否将当前页面的输出内容刷新到客户端,默认情况下,值为false
<jsp:include>包含的原理是将被包含的页面编译处理后将结果包含在页面中。当浏览器第一次请求一个使用<jsp:include>包含其他页面的页面时,Web容器首先会编译被包含的页面,然后将编译处理后的返回结果包含在页面中,之后编译包含页面,最后将两个页面组合的结果回应给浏览器。
<jsp:forward>动作元素:
<jsp:forward>动作元素将当前请求转发到其他 Web 资源(HTML 页面、JSP页面和Servlet等),在执行请求转发之后的当前页面不再执行,而是执行该元素指定的目标页面。
语法格式:
<jsp:forward page=“relativeURL” />
psge属性用于指定请求转发到的资源的相对路径,该路径是相对于当前JSP 页面的URL。

猜你喜欢

转载自blog.csdn.net/suoyue_py/article/details/97611088
今日推荐