Spring Boot 통합 spring-boot-devtools 개발 시 열 배치 방식
프로젝트 개발 과정 에서 페이지 데 이 터 를 변경 하거나 데이터 구 조 를 수정 하 는 경우 가 많다 는 것 을 잘 알 고 있 습 니 다.변경 효 과 를 표시 하기 위해 서 는 응용 프로그램 을 다시 시작 하여 변경 효 과 를 봐 야 합 니 다.사실은 새로운 Class 파일 을 재 컴 파일 하여 생 성 한 것 입 니 다.이 파일 에는 코드 등 과 대응 하 는 각종 정보 가 기록 되 어 있 고 Class 파일 은 가상 컴퓨터 의 ClassLoader 에 의 해 불 러 옵 니 다.
열 배 치 는 바로 이 특징 을 이용 하여 클 라 스 파일 이 바 뀌 면 새로운 클 라 스 로 더 를 만들어 이 파일 을 불 러 오 는 과정 을 거 쳐 결 과 를 눈앞 에 보 여 주 는 것 을 감청 합 니 다.
클래스 로드 메커니즘
자바 의 클래스 는 컴 파일 러 를 통 해 코드 를 바이트 코드 를 저장 하 는 Class 파일 로 컴 파일 할 수 있 습 니 다.이 Class 파일 은 각종 정 보 를 저장 하고 가상 컴퓨터 에 불 러 와 서 실행 해 야 합 니 다.클래스 로드 메커니즘(자바 가상 머 신 을 깊이 이해 하기)가상 머 신 은 설명 류 의 데 이 터 를 Class 파일 에서 메모리 로 불 러 오고 데 이 터 를 검증,변환 분석 과 초기 화 하여 가상 머 신 이 직접 사용 할 수 있 는 자바 형식 을 형성한다.
Spring Boot 열 배치 실현
Spring Boot 는 열 배 치 를 실현 하 는 데 다음 과 같은 방식 이 있 습 니 다.
이 방식 은 Maven 플러그 인 형식 으로 불 러 오기 때문에 시작 할 때 Maven 명령
mvn spring-boot:run
을 통 해 시작 하 는 것 을 사용 합 니 다.응용 프로그램 을 통 해 시작 할 때 Maven 플러그 인 체 제 를 돌 았 기 때 문 입 니 다.pom 통합 방식:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
<version>1.2.5.RELEASE</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
spring-boot-devtools이런 방식 은 아무리 응용 프로그램 을 시작 해도 파일 을 수정 한 후에 응용 프로그램 을 다시 시작 할 수 있다.
pom 통합:
<!-- -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional> <!-- true -->
</dependency>
집적 주의
# thymeleaf ( : false, true)
spring.thymeleaf.cache=false
1.devtools 의 디 렉 터 리 를 지정 하거나 디 렉 터 리 를 제거 하여 열 배 치 를 할 수 있 습 니 다.
# restart
spring.devtools.restart.additional-paths=src/main/java
# restart
spring.devtools.restart.exclude=static/**,public/**
아이디어 설정1.아이디어 의 Preferences->Build,Execution,Deployment->Compiler 를 찾 아 Build project 를 자동 으로 선택 합 니 다.
2.아이디어 정상 화면 으로 돌아 가기,Mac 은 단축 키 shift+option+command+/를 사용 합 니 다.window 의 단축 키 는 Shift+Ctrl+Alt+/입 니 다.Registry 를 열 고 선택 하 십시오.
compiler.automake.allow.when.app.runningcompiler.automake.allow.when.app.running
이 설정 을 통 해 서 비 스 를 다시 시작 하지 않 은 상태 에서 html 를 불 러 올 수 있 습 니 다.그러나 자바 파일 을 수정 하면 서 비 스 는 몇 초 후에 자동 으로 재 부팅 됩 니 다.서비스 재 부팅 을 원 하지 않 으 면 application.properties 나 application.yml 에 spring.devtools.reatart.enable=false 를 추가 해 야 합 니 다.
총결산
위 에서 말 한 것 은 소 편 이 소개 한 Spring Boot 통합 spring-boot-devtools 개발 시 열 배 치 를 실현 하 는 데 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.소 편 은 제때에 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
thymeleaf로 HTML 페이지를 동적으로 만듭니다 (spring + gradle)지난번에는 에서 화면에 HTML을 표시했습니다. 이번에는 화면을 동적으로 움직여보고 싶기 때문에 입력한 문자를 화면에 표시시키고 싶습니다. 초보자의 비망록이므로 이상한 점 등 있으면 지적 받을 수 있으면 기쁩니다! ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.