虽然我了解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代码(在&lt; %%&gt;内)是否可以独立于html生存?或者它们是耦合的(java代码必须存在于html页面中)。
他们可能是基本问题,任何人都可以帮助我理解它们吗?
答案 0 :(得分:1)
1)它是动态的,如果它包含任何JSP元素,如代码片段,JSP标签等。如果它只包含HTML,那么它是非常静态的,尽管如果它作为JSP处理,那么常量响应是动态计算的每次通话(安全缓存)。
2)是的,就像那样。实际上,JSP的静态文本进入了Java类中的out.write()语句;整个JSP被转换为Java类。
3)有趣的问题。这都是解释的问题。如果您将其命名为.jsp或让您的Web容器以其他方式(依赖)将其作为JSP处理,那么您可以将其称为JSP。 4)这个问题不太清楚。在静态文本输出到此时之后执行片段。答案 1 :(得分:1)
HttpServlet
接口的Java类可以通过servlet容器直接映射到URL。 Java代码可以位于JSP 但正如你在评论中所说,你真的应该在这里提问之前阅读相关文档。