我试图了解jsp:include to和Oracle教程中的内容,我发现:
jsp:include元素在执行JSP页面时被处理。include操作允许您在JSP文件中包含静态或动态资源。包含静态资源和动态资源的结果是完全不同的。如果资源是静态的,则将其内容插入到调用的JSP文件中。如果资源是动态的,则将请求发送到包含的资源,执行包含的页面,然后将结果包含在调用JSP页面的响应中。
因此,我期望这种行为:一个jsp页面(第一个)包含在另一个(第二个) ->中,如果我在服务器上更改第一个页面的内容并刷新第二个页面,我将看到一些更改。但它似乎不起作用。
我有includes.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<jsp:include page="manipulations.jsp" />
</body>
</html>我的manipulations.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<p>I love Java</p>
</body>
</html>项目结构:

首先,我访问includes.jsp(localhost:8080/includes.jsp es.jsp),并看到文本“我爱Java”。然后修改manipulations.jsp文件中的文本(“我爱Java”->“我喜欢JSP")并保存它。然后我刷新includes.jsp,没有看到任何变化(仍然是“我爱Java")。为什么会发生这种情况?我理解这个元素是错的吗?
发布于 2017-08-24 18:32:13
即使使用指令,问题仍然存在吗?
<%@include file="manipulations.jsp"%>试着脸红:
<jsp:include page="manipulations.jsp" flush="true" />如果其中任何一个不起作用,那么我认为问题在于您的缓存设置。如果您每次重启服务器,并且清理/重新构建/刷新,我愿意花很多钱在这个想法上进行内容更新。
https://stackoverflow.com/questions/45868497
复制相似问题