JSP 是否为网页提供动态行为?
Does JSP provide the dynamic behaviour to a web-page?
虽然知道JSP(基本了解),但对JSP技术有一些疑惑
考虑以下简单的 jsp:
<html>
<head>
<title> This is demo</title>
</head>
<body>
<h1> The current time is <%=new java.util.Date()%> </h1>
</body>
</html>
对此,我有一些疑惑(一直藏在心里):
1) 这个jsp的基本文字是一样的,是不是动态页面因为里面有JAVA代码?
2)当用户访问这个jsp页面时,容器是否先执行java代码并替换页面内部java代码的输出?
3) 是什么让这个页面成为 jsp 页面? html 和 java 代码的混合是否使其成为 jsp?
4) java 代码(在 <% %> 内)可以独立于 html 存在吗?或者它们是耦合的(java 代码必须出现在 html 页面中)。
可能是一些基础问题,谁能帮我理解一下?
1) 如果它包含任何 JSP 元素,如代码片段、JSP 标签等,它就是动态的。如果它只包含 HTML,那么它是相当静态的,尽管如果它作为 JSP 处理,然后在每次调用时动态计算常量响应(安全缓存)。
2) 是的,很像。实际上 JSP 的静态文本进入 Java class 中的 out.write() 语句;整个 JSP 被转译为 Java class.
3) 有趣的问题。这都是解释的问题。如果您将其命名为 .jsp 或让您的 Web 容器以其他方式(视情况而定)将其处理为 JSP,那么您可以将其称为 JSP。
4)这个问题不是很清楚。到目前为止,在输出静态文本后执行片段。
- 是的,它是动态的,因为它是在 运行 时间计算的(甚至是部分计算的)- 这里的 java 小脚本是动态部分
- 不完全是。 JSP 不是模板引擎。 JSP 页面完全转换为 java 源代码,然后由 servlet 容器编译为 class 文件。然后那些 classes 在 运行 时间被执行。
- 扩展名 .JSP 使其成为 JSP 文件。然后它必须遵循 JSP 语法才能被 servlet 容器正确处理。
- 反题。 Java 代码通常位于 java 源文件中。 servlet 容器可以将实现
HttpServlet
接口的 Java class 直接映射到 URL。 Java 代码 可以 位于 JSP 中的小脚本中
但正如您在评论中所说,在此处提问之前,您真的应该阅读相关文档。
虽然知道JSP(基本了解),但对JSP技术有一些疑惑
考虑以下简单的 jsp:
<html>
<head>
<title> This is demo</title>
</head>
<body>
<h1> The current time is <%=new java.util.Date()%> </h1>
</body>
</html>
对此,我有一些疑惑(一直藏在心里):
1) 这个jsp的基本文字是一样的,是不是动态页面因为里面有JAVA代码?
2)当用户访问这个jsp页面时,容器是否先执行java代码并替换页面内部java代码的输出?
3) 是什么让这个页面成为 jsp 页面? html 和 java 代码的混合是否使其成为 jsp?
4) java 代码(在 <% %> 内)可以独立于 html 存在吗?或者它们是耦合的(java 代码必须出现在 html 页面中)。
可能是一些基础问题,谁能帮我理解一下?
1) 如果它包含任何 JSP 元素,如代码片段、JSP 标签等,它就是动态的。如果它只包含 HTML,那么它是相当静态的,尽管如果它作为 JSP 处理,然后在每次调用时动态计算常量响应(安全缓存)。
2) 是的,很像。实际上 JSP 的静态文本进入 Java class 中的 out.write() 语句;整个 JSP 被转译为 Java class.
3) 有趣的问题。这都是解释的问题。如果您将其命名为 .jsp 或让您的 Web 容器以其他方式(视情况而定)将其处理为 JSP,那么您可以将其称为 JSP。
4)这个问题不是很清楚。到目前为止,在输出静态文本后执行片段。
- 是的,它是动态的,因为它是在 运行 时间计算的(甚至是部分计算的)- 这里的 java 小脚本是动态部分
- 不完全是。 JSP 不是模板引擎。 JSP 页面完全转换为 java 源代码,然后由 servlet 容器编译为 class 文件。然后那些 classes 在 运行 时间被执行。
- 扩展名 .JSP 使其成为 JSP 文件。然后它必须遵循 JSP 语法才能被 servlet 容器正确处理。
- 反题。 Java 代码通常位于 java 源文件中。 servlet 容器可以将实现
HttpServlet
接口的 Java class 直接映射到 URL。 Java 代码 可以 位于 JSP 中的小脚本中
但正如您在评论中所说,在此处提问之前,您真的应该阅读相关文档。