Contents

jsp include

1. λ””λ ‰ν‹°λΈŒλ°©μ‹

<%@ include file="~~"%>
  • 정적 include 방식, μΈν΄λ£¨λ“œ λ˜λŠ” λ‚΄μš©μ΄ λ‹¨μˆœν•˜κ²Œ ν…μŠ€νŠΈλ‘œ ν¬ν•¨λ˜μ–΄ 컴파일이 λœλ‹€. (λ³΅μ‚¬λœλ‹€λŠ” λŠλ‚Œ)
  • μ£Όμ˜ν• μ μ€ 비둝 ν¬ν•¨λ˜λŠ” νŽ˜μ΄μ§€λΌ ν•˜λ”λΌλ„ ν•œκΈ€μ„ μ œλŒ€λ‘œ μ²˜λ¦¬ν•˜κΈ° μœ„ν•΄μ„œλŠ” ν¬ν•¨λ˜μ–΄μ§€λŠ” jsp파일 상단에 인코딩 λͺ…μ‹œλ₯Ό ν•΄μ€˜μ•Ό ν•œλ‹€.
  • ν¬ν•¨λ˜μ–΄μ§€λŠ” jsp λ‚΄μš©μ΄ 변경이 될 경우 ν•΄λ‹Ή jspλ₯Ό μ‚¬μš©ν•˜λŠ” jspλ₯Ό κ°•μ œλ‘œ λ³€κ²½(touch) ν•΄μ€˜μ„œ λ‹€μ‹œ 컴파일이 되게 ν•΄μ•Όν•˜λŠ” λΆˆνŽΈν•¨μ΄ μžˆλ‹€.
  • 정적 방식이기 λ•Œλ¬Έμ— μ˜ˆλ‘œλ“€μ–΄ μ „μ—­λ³€μˆ˜λ₯Ό μΈν΄λ£¨λ“œ λ˜λŠ” jspμ—μ„œ μ§€μ •ν•˜κ²Œ 되면 μƒμœ„jspμ—μ„œ μ‚¬μš©μ΄ κ°€λŠ₯ν•˜κ²Œ λœλ‹€.

2. μ•‘μ…˜νƒœκ·Έ 방식

<jsp:include page="~~"/>
  • 동적 include 방식, ν¬ν•¨ν•˜λŠ” λ¬Έμ„œμ™€ 상관없이 λ™μ μœΌλ‘œ 컴파일 λœλ‹€. (μ™„μ „νžˆ λ³„λ„λ‘œ λ™μž‘ν•˜κΈ° λ•Œλ¬Έμ— λ³€μˆ˜λ₯Ό λ™μ‹œμ— μ‚¬μš©ν•˜λ €λ©΄ λ”°λ‘œ νŒŒλΌλ―Έν„°λ‘œ λ„˜κ²¨μ€˜μ•Ό ν•œλ‹€.)
  • flush μ˜΅μ…˜μ€ μš”μ²­νλ¦„μ΄ λ„˜μ–΄κ°€λ©΄μ„œ ν˜„μž¬κΉŒμ§€ νŽ˜μ΄μ§€μ˜ κ²°κ³Όλ₯Ό 좜λ ₯ν•  것인지 말것인지λ₯Ό κ²°μ •ν•˜λŠ”κ²ƒμ΄λ‹€. 일반적으둜 false둜 μ„€μ •ν•œλ‹€.
  • <jsp:param>λ₯Ό μ΄μš©ν•˜μ—¬ νŒŒλΌλ―Έν„°λ₯Ό μ „μ†‘ν• μˆ˜ μžˆλ‹€.
<jsp:include page="..." flush="false">
  <jsp:param name="name" value="이름" />
  <jsp:param name="pageName" value="νŽ˜μ΄μ§€μ΄λ¦„"/>
</jsp:include>

3. JSTL 방식

<c:import url="~~" />
  • JSTL(JSP Standard Tag Library) νƒœκ·Έμ€‘μ˜ ν•˜λ‚˜
  • 컴파일 되고 λ™μž‘ν•˜λŠ” 방식은 μ•‘μ…˜νƒœκ·Έ<jsp:include page="~~"/>와 κ°™μŒ
  • ν˜„μž¬ μ»¨ν…Œμ΄λ„ˆ μ•ˆμ— μžˆλŠ” μžμ›μ™Έμ— λ‹€λ₯Έ μ™ΈλΆ€ μžμ›λ„ 포함이 κ°€λŠ₯ν•˜λ‹€.
<c:import url="http://www.google.com/"/>
  • μ•„λž˜μ™€ 같이 보닀 더 λ‹€μ–‘ν•œ μ˜΅μ…˜μ΄ μ œκ³΅λœλ‹€
<c:import! url="μ½μ–΄μ˜¬ URL"
     var="μ½μ–΄μ˜¬ 데이터λ₯Ό μ €μž₯ν•  λ³€μˆ˜λͺ…"
     scope="λ³€μˆ˜μ˜ 곡유 λ²”μœ„"
     varReader="λ¦¬μ†ŒμŠ€μ˜ λ‚΄μš©μ„ Reader 객체둜 μ½μ–΄μ˜¬ λ•Œ μ‚¬μš©"
     charEncoding="μ½μ–΄μ˜¨ λ°μ΄ν„°μ˜ 캐릭터셋 지정" />

Buy me a coffeeBuy me a coffee