JSP 주의

한라봉봉·2023년 11월 29일

1. Servlet 등록시 경로는 jsp 포워드시 반영되므로 주의.

따라서 아래의 경우 getRequestDispatcher("/view/board/list.jsp") 를 getRequestDispatcher("list.jsp") 로 변경해도 동작한다.

package servlet;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet("/view/board/hello.do")
public class helloservlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException{
        request.setAttribute("message", "hello좀해보자 제발");
        request.getRequestDispatcher("/view/board/list.jsp").forward(request, response);
    }
}

2. <%= request.getContextPath() %> 표현식 대신 EL사용하여application 컨택스트 루트(market_war_exploded) 반환

jsp 뷰쪽에 항상 붙여주는 쪽이 안전하다

hello.jsp

<a href="${pageContext.request.contextPath}/view/board/hello.do">바로가기</a>
profile
백엔드 개발공부 로그를 기록합니다

0개의 댓글