개발 일지/JSP, Sevlet

MySite 코드 한 줄 한 줄 해석 1. read.jsp

박빙수_ 2024. 1. 24. 18:54

1. 'goBack' 함수

<script>
    function goBack() {
        window.history.back();
    }
</script>

사용자가 이전 페이지로 돌아갈 수 있게 해주는 코드. window 객체 내에 있는 history 객체의 back 메서드를 호출. 즉, 사용자가 가장 최근에 방문했던 페이지로부터 이전 페이지로 돌아가게 됩니다.

 

2. 

<c:import url="/WEB-INF/views/includes/header.jsp"></c:import>
<c:import url="/WEB-INF/views/includes/navigation.jsp"></c:import>

페이지의 헤더 부분 재사용 및 네이게이션 바 포함시키는 부분

 

3. 

<div id="content">
            <div id="board" class="board-form">
                <table class="tbl-ex">

페이지의 주요 내용을 담고 있는 div 요소,

게시판 형태의 데이터를 보여주기 위한 HTML 테이블

 

4. 동적 태그 삽입, 줄 나누기

<tr>
 <td class="label">제목</td>
 <td>${boardVo.title }</td>
</tr>
<tr>
 <td class="label">내용</td>
 <td>
  <div class="view-content">
  ${fn:replace(boardVo.content, newLine, "<br>")}
  </div>
 </td>
</tr>

${boardVo.title}${boardVo.content}: JSP Expression Language (EL)을 사용하여 서버에서 전달된 boardVo 객체의 title과 content 속성 값을 동적으로 페이지에 삽입합니다.

${fn:replace(boardVo.content, newLine, "<br>")}: JSP EL의 함수를 사용하여 boardVo.content에서 개행 문자를 HTML의 <br> 태그로 교체합니다. 이렇게 하여 멀티라인 텍스트를 웹 페이지에 적절히 표시합니다.

 

5. 'goBack' 실행

<a href="#" onclick="goBack()">글목록</a>

링크 클릭시 JavaScript 함수 goBack()이 호출되어 이전 페이지로 돌아가게 됩니다.

 

6. 

<c:if test="${authUser.no == boardVo.userNo }">
 <a href="/mysite/board?a=modifyform&no=${boardVo.no }">글수정</a>
</c:if>

JSP의 조건문을 사용하여, 현재 로그인한 사용자(authUser)가 게시글을 작성한 사용자(boardVo.userNo)인지 확인합니다. 이 조건이 참일 경우에만 '글수정' 링크가 표시됩니다.

 

7.

<c:import url="/WEB-INF/views/includes/footer.jsp"></c:import>

페이지의 푸터 부분을 포함시키는 코드입니다.