JSP에 대한 봄 부팅 지원

질문 1. 목록

  • JSP 수정 사항을 적용하려면 다시 시작해야

    프로덕션 환경에서는 SpringBoot 재 컴파일 JSP는 큰 성능 손실이 발생할 수 있습니다, 최신 버전, 그래서 공식은 기본적으로이 기능을 해제되었습니다, 문제의 원인을 추적 JspServlet 클래스 매개 변수 초기화를 참조하기가 어렵습니다.

    • 사용 DevTools로 (나는이 방법을 사용)
    • 구성 추가server.servlet.jsp.init-parameters.development=true
  • 모든 종류를 방지하는 방법 (404)

    • 톰캣 + JASPER + JSTL 소개
    • 당신은 웹 애플리케이션 디렉토리를 작성해야합니다

빌드로 2 단계 지침

A.으로 비계

봄 Initializr는 첫 번째 프로젝트를 선택하여 구성 전쟁 구축 유형, 전체 구조는 다음입니다 :

우리가 선택한 전쟁 옵션을 유의하시기 바랍니다

프로그램 구조.

B.의 추가 종속성

<!--配置jsp jstl的支持-->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
</dependency>
<!--对jsp的支持-->
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
    <scope>provided</scope>
</dependency>
<!-- 热部署 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <optional>true</optional>
</dependency>
<!--Provided  start-->
<!--War包部署到外部的Tomcat中已经包含了这些,所以需要添加以下依赖 否则会和内嵌的Tomcat 容器发生冲突 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <scope>provided</scope>
</dependency>

C. 수정 application.properties

#如果按照一般web工程将页面放在src/main/webapp/WEB-INF/jsp/,则配置前缀
spring.mvc.view.prefix=/WEB-INF/
spring.mvc.view.suffix=.jsp
# 配置Tomcat编码
server.tomcat.uri-encoding=UTF-8
server.port=8001
server.servlet.context-path=/boot

D. 새로운 JSP 페이지

  • SRC / 주 아래에 웹 애플리케이션 / WEB-INF / JSP 폴더를 만듭니다.
  • 만들기 폴더 Hello.jsp 라에서 JSP
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
    <head>
        <title>Title</title>
    </head>
    <body>
        Hello,${requestScope.name}
    </body>
</html>

E.는 컨트롤러 만들기

package com.hanpang.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class IndexController {

    @GetMapping({"/","/os01"})
    public String test01(Model model){
        model.addAttribute("name","胖先森");
        return "jsp/hello";
    }

}

F. 시작 프로젝트

  • 시작 모드 1 : IDE에서 시작 Demo02BootApplication하고 프로젝트 주소를 엽니 다.
  • 시작 모드 2 : 시작이 완료되면 배포가 외부 톰캣에, 프로젝트 주소를 엽니 다. 외부 톰캣 배치를 사용하는 경우, 포함 된 컨테이너는 제공된 레벨로 조정할 필요가 있음을 주목해야한다. (충돌 방지)

게시 된 원본 기사 · 원의 찬양 (15) · 보기 10000 +

추천

출처blog.csdn.net/a1405/article/details/100037062