JSP、2通りのinclude

Javaの話。
JSPで他のファイルをincludeする場合、以下の2通りがある。

  • <%@ include file=”include.jsp”%>
  • <jsp:include page=”include.jsp” flush=”true” />

違いは何かというと、前者は単純にそのJSPをincludeするだけ。つまり、includeされるJSP(ここではinclude.jsp)の内容をコピペしたのと結果は同じ。
それに対して、後者はinclude.jspはinclude元のJSP(ここではmain.jspと呼ぶ)とは別々にコンパイルされて、個別のサーブレットとして動作する。つまり、main.jspをコンパイルして出来たサーブレットが、include.jspをコンパイルして出来たサーブレットを呼び出す。その為、変数の名前空間とかも別。
どの画面にも共通のメニューとかフッターとかは前者でOKだと思う。元々単独のJSPとして存在してたのをどこか別のページに埋め込む事になったとかの時は後者の方法が結構使えるのかなぁと思った。
@ITの記事が参考になる

カテゴリー: Java

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です