Я не уверен, как Struts и базы данных связаны с этим, но в основном, <jsp:include>
- лучшее, что вы можете получить в JSP.
Базовый стартовый пример /WEB-INF/template.jsp
<!DOCTYPE html>
<html lang="en">
<head>
<title>${title}</title>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>
<body>
<div id="header">
header
</div>
<div id="menu">
menu
</div>
<div id="content">
<jsp:include page="/WEB-INF/${view}.jsp" />
</div>
<div id="footer">
footer
</div>
</body>
</html>
И контроллер Сервлет :
@WebServlet(urlPatterns={"/pages/*"})
public class Controller extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String view = request.getPathInfo().substring(1);
String title = titles.get(view); // Imagine that it's a map or something.
request.setAttribute("view", view);
request.setAttribute("title", title);
request.getRequestDispatcher("/WEB-INF/template.jsp").forward(request, response);
}
}
вызвать его
http://localhost:8080/contextname/pages/foo
и предоставьте файл /WEB-INF/foo.jsp
, который должен представлять содержимое. Э.Г.
/WEB-INF/foo.jsp
<h1>This is Foo!</h1>
<p>Lorem ipsum</p>