날아라쩡글이의 블로그입니다.

spring boot에서 jsp사용하기 본문

중앙 HTA (2106기) story/spring java framwork story

spring boot에서 jsp사용하기

날아라쩡글이 2022. 1. 19. 10:41
반응형
  1. spring boot 에서 spring starter project를 선택한다. 
  2. new에서 war로 선택한다.
  3. 적절한 package의 명을 작성한다. 
  4. 총 5가지의 의존성을 선택한다 (타임리프트 작성시 타임리프트로 검색후 추가 )
    1. spring web
    2. lombok
    3. spring DevTools
    4. myBatis Framwork
    5. Oracle Driver
    6. 나중에 추가가 가능하니까 finish
  5. web app가생성이 되면 serveltInitializer가 추가가된다. 
    1. war로 packaging를 하면 Tomcat의 web.xml의 역할로 작동한다. 
    2. webApp에 WEB-INF폴더를 생성한다. 
      1. resources 폴더를 생성한다. 
      2. 이제부터 여기에 Css와 JS파일, 외부 라이브러리 이미지를 폴더를 만들고 위치한다.
    3. jsp와 views 폴더를 생성한다. 
      1. views 파일에는 product폴더, cart폴더, orders폴더, notice폴더등 jsp폴더를 두고 사용한다. 
    4. home.jsp인 JSP를 생성한다. 
    5. Controller를 web패키지를 만들고 설정한다. 
    6. homeController를 생성하면 @Controller 어노테이션을 설정하고 내부이동이 가능하게 설정한다. 
    7. return은 "home"으로만 설정하면 profix="/WEB-INF/views" viewname="home" suffix=".jsp"로 알아서 설정하여 이동을 하게 된다. 
    8. application.properies에 이부분을 설정한다. 
      1. #jsp page를 설정한다.
        spring.mvc.view.prefix=/WEB-INF/views
        spring.mvc.view.suffix=.jsp
      2. #static resource(CSS,js,images)의 경로를 설정한다. 
        spring.mvc.static-path-pattern=/resources/**
        spring.web.resources static-location=/resources/
        1. ** = 하위디렉토리가 더 존재해도된다. 
        2. location = 이 경로에서 찾아서 응답으로 보내줘라 = spring boot
    9. spring boot는 jsp를 지원하지 않는다. pom.xml으로 dependency를 2가지 변경한다. 
      1. tomcat-embed-josper와 jstl을 추가하고
      2. spring web의 내장객체인 stater-tomcat을 주석처리한다. 
    10. 이미지는 이제 경로는 "/resources/images/cat.png"처럼 넣어주면된다. 
    11. data는 homecontroller에서 model로 전달해준다. 
    12. jstl은 자동으로 추가가 안되기 때문에 
      1. common파일을 생성한다. 
      2. tag.jsp를 만든다. 
      3. <%@taglib prefix="c"  -core>
        <prefix=fmt  -fmt>
        <prefix=fn - functions>
        <prefix=spring -spring framwork.tags>
        <prefix=form -spring framwork.form>
        <page는 trimdire을 ture로 생성한다.>
      4. 태그를 생성한다. 
      5. 필요한 곳에 import한다. include file로 import하고 사용하면 완성된다. 
반응형
Comments