JSP의 경로
JSP의 경로
정적파일과 동적파일 동작하는 방법 : https://gmlwjd9405.github.io/2018/10/27/webserver-vs-was.html
따로 관리하는 이유 -> 정적파일을 빨리 실행시키기 위해서
JSP는 어떻게 인식되서 작동되는가???
JSP 파일 자체를 브라우저로 전송하면 인식x, 톰캣 컨테이너에 의해 브라우저로 전송되기 전 실행 단계를 거쳐야 인식o
이 과정을 거치면 브라우저로 전송됨, 전송될때 jsp 파일은 html/css/js로 변환된 파일임
=================
tiles란 개념도 존재하기에 좀 복잡하다.
일단 타일즈 먼저
-
pom.xml 에 tiles 관련 dependency 추가
-
servlet-context.xml 파일에 타일즈 View Resolver 를 추가
-
tiles 관련 설정 xml 추가
-
기본 레이아웃 jsp 추가
<세세하게 다시 정리>
pom.xml
<!-- Tiles 관련 -->
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-jsp</artifactId>
<version>2.2.2</version>
</dependency>
여기서 의문
pom.xml은 뭐지? 프로젝트 실행 흐름에 없는애였다. 그럼 이건.. 메이븐! 메이븐 라이브러리 업데이트
스프링 안에서 그냥, 서버와 관계없이 흘러가는 xml
Maven (빌드툴 ※ 그레들, 엔트)
-
개발된 프로젝트를 동작 할 수 있는 파일로 만들어주는 기능
-
java -> jar // Web(정적파일) -> war(동적파일)
-
원하는 라이브러리를 직접 다운 받지 않고 사용 할 수 있는 기능
(사실 특정 코드 넣으면 알아서 다운 받음)
-
이런 설정들을 pom.xml 에서 해 준다.
-
기본적으로 사용하는 라이브러리들은 C:/[userPc]/.m2 폴더에 저장 된다.
<세세하게 다시 정리>
https://velog.io/@ehdrms2034/%EC%8A%A4%ED%94%84%EB%A7%81-MVC-Spring-MVC-%EA%B5%AC%EC%A1%B0
사용자 -> 요청(url) -> DispatcherServlet -> handlermapping을 통해 해당 요청을 매핑한 컨트롤러가 있는지 찾음 -> controller 도착 (서비스,dao,mapper 등장) -> 요청 처리 후 결과를 출력할 view의 이름을 리턴 -> servlet.xml에서viewResolver를 통해 jsp 찾아냄 -> view -> 사용자 끝, 주의 주의 jsp보다 tiles가 우선이다 tiles 설정 했는지 꼭 확인
-
사용자 -> 요청(url) 을 예로들어 /list.do 라고 해보자
그럼 스프링에서 얘는 이걸 어떻게 인식을 하는가?
web.xml
<!-- action이라는 이름을 가진 DispatcherServlet을 등록 --> <servlet-name>action</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- 서블릿 컨테이너는 *.do라는 경로의 요청이 있어야 DispatcherServlet 객체를 생성 --> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <init-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/config/springmvc/common-*.xml </param-value> </init-param>
- 이제 디스패처에서 핸들러 매핑을 통해 컨트롤러 찾음
/list.do 가 적혀있는 controller가 어디있을까??? 두리번 - 이렇게 내가 알고있는 mvc 패턴을 쭉 다녀온 뒤 ModelAndView을 통해 리턴할 view를 알려줌
- viewResolve
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=aeroviper&logNo=221193958816
common-servlet.xml
// UrlBasedViewResolver , 특별한 맵핑 정보 없이 view 이름을 URL로 사용. View 이름과 실제 view resource와의 이름이 같을 때 사용 가능.
servlet.xml에서 jsp 설정을 해줌
View Resolver를 등록하면 WEB-INF 폴더는 절대 브라우저에서 접근하라 수 없다. 하지만 위와 같이 설정하면 JSP 파일을 View화면으로 사용할 수 있다. 단 컨트롤러의 Redirect 요청이 있을때만 가능하다.
- 이제 디스패처에서 핸들러 매핑을 통해 컨트롤러 찾음
Author And Source
이 문제에 관하여(JSP의 경로), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@yunso/JSP의-경로저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)