私は github のようなコードを持っています:
my.jsp(一般的なjsp-私のすべてのjspSは、ほぼこのパターンに従います):
<%@ include file="include/top.jsp" %>
<title>THE TITLE</title>
<%@ page language="Java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ include file="include/head.jsp" %>
<%@ include file="include/no_menu.jsp" %>
CONTENT
<%@ include file="include/bottom.jsp" %>
どこ :
top.jsp:
<%@ page session="false"%>
<%@ include file="tag_libs.jsp"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
head.jsp:
<link href="${pageContext.request.contextPath}/css/twoColFixLtHdr.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="container"><!-- closes in bottom -->
<div class="header"><!-- closes in menu -->
<p>
<a href="home"> <img src="${pageContext.request.contextPath}/images/logo7.jpg"
alt="Ted 2012 Logo" name="Ted 2012 Logo" id="Ted_2012_Logo"
style="background: display:block; padding: 5px 20px; margin-left: 150px; border-style: solid" /></a>
</p>
<hr />
no_menu.jsp:
</div>
<div class="content">
bottom.jsp:
</div>
<div class="footer">
<p>
blah
</p>
</div>
</div>
</body>
</html>
ご覧のとおり、または私のWordを使用することもできますが、タグのバランスは適切に保たれています。私の質問は-なぜ含めることができないのですか
<%@ page language="Java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
_top.jsp
ファイルのディレクティブ?信じられない。 <%@ page session="false"%>
も同様に無視されることを心配する必要がありますか?
ありがとう
含まれている各JSPファイルに@page
ディレクティブを配置する必要はありません。厳密に言うと、これらはJSPではなく、JSPに含まれるテキストファイルです。 @include
は、含まれているページからメインのJSPにテキストを切り取って貼り付けるのと同じです。 Cの#include
ディレクティブに似ています。
<%@ page language="Java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
をメインのJSPファイル(つまり、他のファイルを含むファイル)のvery first行として配置し、他の場所には配置しないようにしてください。
それが役に立てば幸い。