JSP 元素标签
⚡ 智能摘要
JSP元素标签结构允许开发人员嵌入JSP元素。 Java 通过声明、脚本片段、表达式和注释标签直接将内容添加到页面中,从而在单个服务器渲染的文件中实现变量创建、逻辑执行、动态输出和可读文档。

JSP 标签
在本教程中,我们将学习 JSP 的基本标签以及如何在 JSP 中添加注释。除此之外,我们还将创建一个 JSP 并在服务器上运行该 JSP。
JSP 声明
- 声明标签是 Java 用于声明变量、方法和类的代码。如果我们在声明标记内声明变量或方法,则意味着声明是在 servlet 类内部但在服务方法之外进行的。
- 我们可以在声明标签内声明一个静态成员、一个实例变量(可以声明一个数字或字符串)和方法。
声明标签的语法:
<%! Dec var %>
这里 Dec var 是声明标签内的方法或变量。
计费示例:
在此示例中,我们将使用声明标签
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Guru Declaration Tag</title> </head> <body> <%! int count =10; %> <% out.println("The Number is " +count); %> </body> </html>
代码解释:
Code 线10: 这里我们使用声明标签将变量计数初始化为 10。
执行上述代码时,您将获得以下输出:
输出:
在声明标签中声明的变量被打印作为输出。
JSP 脚本
- Scriptlet 标签允许写入 Java 代码放入 JSP 文件中。
- JSP 容器在从 jsp 生成 servlet 时移动 _jspservice() 方法中的语句。
- 对于客户端的每个请求,都会调用 JSP 的服务方法,因此 Scriptlet 中的代码会针对每个请求执行。
- Scriptlet 包含每次调用 JSP 时执行的 Java 代码。
Scriptlet标签的语法:
<% java code %>
这里 <%%> 标签是 scriplets 标签,我们可以在其中放置 java 代码。
计费示例:
在这个例子中,我们采用包含 Java 代码的 Scriptlet 标签。
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Guru Scriplet</title> </head> <body> <% int num1=10; int num2=40; int num3 = num1+num2; out.println("Scriplet Number is " +num3); %> </body> </html>
代码说明:
Code 第 10-14 行: 在 Scriptlet 标签中,我们采用两个变量 num1 和 num2。第三个变量 num3 被采用,其相加为 num1 和 num2。输出为 num3。
执行代码时,您将获得以下输出:
输出:
Scriptlet Number 的输出是 50,它是 num1 和 num2 的加法。
JSP 表达式
- 表达式标签评估其中的表达式。
- 它访问存储在存储应用程序中的数据。
- 它允许创建像算术和逻辑这样的表达式。
- 它生成无脚本的 JSP 页面。
语法:
<%= expression %>
这里的表达式是算术表达式或者逻辑表达式。
计费示例:
在此示例中,我们使用表达式标签
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Guru Expression</title> </head> <body> <% out.println("The expression number is "); %> <% int num1=10; int num2=10; int num3 = 20; %> <%= num1*num2+num3 %> </body> </html>
代码说明:
Code 线12: 这里我们使用表达式标签,通过将两个数字(即 num1 和 num 2)相乘,然后添加第三个数字(即 num3)来使用表达式。
执行上述代码时,您将获得以下输出:
输出:
表达式数字为 120,其中我们将两个数字 num1 和 num2 相乘,然后将该数字与第三个数字相加。
JSP 注释
当 JSP 容器想要忽略某些文本和语句时,就会使用注释。
当我们想要隐藏某些内容时,我们可以将其添加到评论部分。
语法:
<% -- JSP Comments %>
这些标签用于在 JSP 中进行注释,并被 JSP 容器忽略。
这是浏览器忽略的 HTML 注释
计费示例:
在此示例中,我们使用 JSP 注释
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Guru Comments</title> </head> <body> <%-- Guru Comments section --%> <% out.println("This is comments example"); %> </body> </html>
代码说明:
Code 线10: 这里我们在代码中添加了 JSP 注释来解释代码的内容。它被 JSP 容器忽略了
执行上述代码时,您将获得以下输出:
输出:
我们得到了在 println 方法中打印的输出。注释被容器忽略
创建简单的 JSP 页面
- JSP 页面包含以下 HTML 主体: Java 将其编码
- 我们正在创建一个简单的 JSP 页面,其中包含声明、脚本、表达式和注释标签。
计费示例:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Guru JSP Example</title> </head> <body> <%-- This is a JSP example with scriplets, comments , expressions --%> <% out.println("This is guru JSP Example"); %> <% out.println("The number is "); %> <%! int num12 = 12; int num32 = 12; %> <%= num12*num32 %> Today's date: <%= (new java.util.Date()).toLocaleString()%> </body> </html>
代码说明:
Code 线1: 这里我们使用了 language、contentType 和 pageEncoding 等指令。语言是 Java 内容类型为 text/html,标准字符集为 ISO 8859。页面编码为标准字符集。
Code 线11: 这里我们使用 JSP 注释来向 JSP 添加注释
Code 线14: 这里我们声明变量 num12 和 num32,并用 12 初始化。
Code 线15: 这里我们使用一个表达式将两个数字 num12 和 num32 相乘。
Code 线16: 这里我们使用日期对象获取今天的日期。
执行上述代码时,将获得以下输出
输出:
我们在这里打印,
- 这是大师级 JSP 示例。
- 该数字为num12*num32(12*12)。
- 今天的日期是当前日期
如何运行简单的 JSP 页面
- JSP 可以在 Web 服务器或应用程序服务器上运行。
- 这里我们将使用一个 Web 服务器,并且我们可以将它部署到包含 war 应用程序的服务器上。
- 我们可以在应用程序(war)中创建 JSP。
这是一个具有以下目录结构的应用程序,并且必须构建该应用程序。
此应用程序必须被构建,构建成功后将出现以下消息:
应用程序构建完成后,必须在服务器上运行该应用程序。
要在 Web 服务器上运行 JSP,请右键单击 IDE 的项目 (蚀 在本例中使用)有很多选项。选择在服务器上运行的选项。如下图所示;
从图中可以解释以下几点:
- 有两个选项,要么选择服务器,要么手动将服务器添加到此应用程序。在本例中,我们已经将 JBoss 服务器添加到应用程序,因此我们选择现有服务器。
- 一旦我们选择了服务器,服务器选项就会显示在点 2 中,表示我们要选择哪个服务器。此应用程序上可以配置多个服务器。我们可以从所有这些选项中选择一个服务器
- 选择该选项后,单击完成按钮,应用程序将在该服务器上运行。
在下面的截图中,你可以注意到我们的 JSP 程序被执行了,并且测试应用程序被部署在 JBoss 服务器 红色框内标记。
JSP 的目录结构
在目录结构中,有一个根文件夹,其中包含文件夹WEB-INF,其中包含所有配置文件和库文件。
JSP 文件位于 WEB-INF 文件夹之外
JSP的目录结构
计费示例:
在此示例中,测试应用程序的文件夹结构如下:











