JavaWeb——JSP语法

本文深入讲解了JSP(JavaServer Pages)技术,涵盖了JSP的基本概念、运行原理、指令标识的使用,如page、include和taglib,以及JSP脚本、注释和常用动作标识的详细介绍。

什么是JSP

JSP简介

JSP(Java Server Pages)是基于Java语言的动态网页技术,它以“.jsp”为拓展名。在一个jsp页面中,可以包括指令标识,HTML代码,JavaScript代码,嵌入的Java代码,注释和JSP动作标识等内容,但这些并不是一个JSP页面所必需的。

JSP运行原理

当JSP文件被部署到Web服务器中后,并不能直接回应给浏览器,它的运行需要经历四个关键阶段
如下图
在这里插入图片描述
当浏览器向Web应用服务器请求一个JSP页面时,Web应用服务器将其转换为一个Servlet文件(即一个.java文件),然后将这个Java文件编译成一个字节码文件(即.class文件),最后Web应用服务器加载转换后的Servlet实例,处理客户端的请求,并返回HTML格式的响应回应给客户端浏览器

使用JSP指令标识

指令标识主要用于设定整个JSP页面范围内都有效的相关信息,这些标识会被服务器解释执行,但不会产生任何内容输出到网页中。
JSP包含了page,incline和taglib3个之类标识。它们语法结构相同,定义方法如下:
<%@ 指令名 属性1="属性值1" 属性2="属性值2" ……%>

页面指令page

page指令提供了共13个属性。下面对常用的进行介绍。

属性作用
languag指定当前页面中使用的语言
contentType设置JSP页面的MIME类型和字符编码
pageEncoding设置JSP页面的编码格式
import导入JSP页面的类包
buffer设置out对象使用的缓冲区大小,默认大小是8KB
autoFlush指定缓冲区已满时,自动将缓冲区中的内容输出到客户端
isErrorPage将当前JSP页面设置成错误处理页面,用于处理另外一个JSP页面的错误
errorPage指定当前页面出现异常时,所调用的另一个页面(即错误处理页面)
session指定当前JSP页面是否支持session,默认为true
isELIgnored指定是否禁用EL表达式
isThreadSafe指定JSP页面是否是线程安全的

文件包含指令include

语法格式如下:
"<%@ inculde file="path" %>
该指令只有file一个属性,用于指定要包含文件的路径,可以是相对路径,也可以是绝对路径。

引用标签库指令taglib

用于声明一个标签的引用。语法格式如下:
"<%@ taglib prefix="tagPrefix" uri="tagURI" %>
taglib:声明指令为taglib指令。
prefix:用于指定标签库的前缀。
uri:用于指定标签库文件的位置。

使用JSP脚本

代码片段的语法格式如下:
"<% Java代码或是脚本代码 %>
JSP表达式的语法格式如下:
"<%= 表达式 %>
声明标识的语法格式如下:
"<%! 声明变量或方法的代码 %>
由于使用声明标识的变量是全局的,所以在多个用户并发的时候会产生线程安全的问题,此种方式应用很少。

注释的魅力

注释代码
HTML注释<!-- 注释内容 -->
JSP隐藏注释<%-- 注释内容 --%>
代码片段中的注释单行 //注释内容 多行:/*注释内容*/

HTML并不是安全的注释方式,可以通过查看网页源代码的方式查看到所编写的注释内容。

常用的JSP动作标识

包含动作标识<jsp:include>

用于包含其他界面,可以是动态也可以是静态。
语法格式如下:
<jsp:include page="url" flush="false|true" />
或:

<jsp:include page="url" flush="false|true" >
	子动作标识<jsp:param>
</jsp:include>

请求转发的动作标识<jsp:forward>

用于将当前请求转发到其他的Web资源(HTML界面,JSP界面,Servlet等).
语法格式如下:
<jsp:forward page="url" />
或:

<jsp:forward page="url" >
 子动作标识<jsp:param>
</jsp:forward>

子动作标识<jsp:param>

可以作为其他标识的子标识,用于为其他标识传递参数。
语法格式如下:
<jsp:param name="参数名" value="参数值" />

JSPJavaServer Pages)是一种服务器端的动态网页开发技术,它可以将 Java 代码嵌入 HTML 页面中,从而实现动态网页的生成。 JSP 的基本原理是将 JSP 页面翻译成 Servlet,在服务器端执行 Servlet 代码,再将执行结果返回给客户端。因此,我们在使用 JSP 开发网页时,需要先了解 Servlet 的相关知识。 JSP语法基本上就是 HTML 标签加上 Java 代码。以下是一些基本的 JSP 标签: 1. <% ... %>:嵌入 Java 代码,可以用于定义变量、写循环、判断语句等。 2. <%= ... %>:输出 Java 代码的执行结果。 3. <%-- ... --%>:注释,不会被翻译成 Servlet。 4. <jsp:include ... />:包含其他 JSP 页面HTML 页面。 5. <jsp:forward ... />:将请求转发到其他资源(JSP 页面、Servlet 或 HTML 页面)。 6. <jsp:useBean ... />:创建 JavaBean 对象。 7. <jsp:setProperty ... />:为 JavaBean 对象设置属性。 8. <jsp:getProperty ... />:取得 JavaBean 对象的属性值。 在 JSP 页面中,我们还可以使用 EL 表达式 JSTL 标签库来简化代码编写,提高开发效率。 EL(Expression Language)表达式是一种简化的表达式语言,可以用于取值、赋值、计算等操作。例如,${name} 表示取得名为 name 的变量的值。 JSTL(JavaServer Pages Standard Tag Library)是一套标签库,提供了循环、条件判断、格式化、国际化等常用功能的标签。例如,<c:forEach> 标签可以用于循环遍历集合,<c:if> 标签可以用于条件判断。 除了以上标签库,JSP 还支持自定义标签库。我们可以通过编写标签处理器来扩展 JSP 的功能。 JSP 的优点是可以将 Java 代码嵌入 HTML 页面中,使得网页的开发更加灵活方便。但是,由于 JSP 页面需要翻译成 Servlet,因此会增加服务器的负担响应时间。此外,JSP 页面中夹杂着 Java 代码,也不利于代码的维护调试。因此,在开发大型网站时,建议使用 MVC 设计模式,将业务逻辑视图分离,使得代码更加清晰易于维护。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值