봄 부팅 (열세) : 봄 부트 팁

 

 

일부 봄 부팅 팁, 약간의 지식

초기화 데이터

우리는 테스트는 종종, 어떻게 처리 할 일부 데이터를 가져올 수있는 시간을 초기화해야하는거야? 하나는 JPA를 사용하는 두 가지 옵션이있을 것, 다른 하나는 봄 JDBC이다. 상세히 설명 각 두 방법의 차이.

JPA를 사용하여

사용으로 spring boot jpa설정하는 경우 spring.jpa.hibernate.ddl-auto속성으로 설정  create 또는  create-drop봄 부팅이 시작 기본, 그것은이 있는지 클래스 경로 (일반적으로 프로젝트 자원 디렉토리를) 검색 할 때 import.sql당신이 실행할 수있는 기회가 있다면, import.sql스크립트를.

사용 봄 JDBC

사용 봄 JDBC 구성 파일에 다음과 같은 구성을 추가해야

봄 : 
    데이터 소스 : 
      스키마 : 데이터베이스 / data.sql 
      SQL -script 인코딩 : UTF-8 
    JPA는 : 
      최대 절전 모드 : 
        DDL -auto을 : 없음

 

  • 스키마 스크립트 경로 설정
  • SQL 스크립트 - 인코딩 : 스크립트의 인코딩을 설정

스크립트를 실행할 때 봄 부트 프로젝트가 자동으로 시작됩니다.

네 개의 값 설명 DDL-자동

  1. 작성 : 다음 테이블의 마지막 세대를 삭제하고, 각 시간은 모델 유형에 따라 새 테이블을 다시 생성로드 최대 절전 모드, 두 사람은 그러한 변화가 실행해야하지 않으며,이 데이터베이스 테이블의 데이터 손실이 발생하더라도 것은 중요하다 이유.
  2. 드롭 생성 : 최대 절전 모드에 따라 각 모델 클래스 테이블을로드,하지만 폐쇄 테이블이 자동으로 sessionFactory에 삭제됩니다.
  3. 갱신 : 가장 일반적으로 사용되는 속성, 먼저 부하가 자동으로 테이블 (전제는 좋은 데이터베이스를 설정하는 것입니다)의 모델 클래스 구조에 따라 설정 최대 절전 모드, 자동 모델 클래스를 기반으로 테이블 구조가 나중에 최대 절전 모드를로드 업데이트하지만, 심지어 테이블 구조가 변경되면 이전 행을 삭제하지 않는 테이블의 행은 여전히 ​​존재한다. 서버에 배포 할 때, 테이블 구조가 즉시 설정되지 않습니다, 그것은 첫 번째 응용 프로그램을 위하기 전에 실행 한 후 기다리는 것입니다.
  4. 확인 : 최대 절전 모드가로드 때마다, 데이터베이스 테이블 구조를 만들 확인하고 데이터베이스의 유일한 테이블을 비교, 그것은 새로운 테이블을 생성하지 않고, 새 값을 삽입합니다.
    5 없음 : 아무것도하지 않습니다.

다른 점

JPA는 자동으로 테이블을 만들 때 첫 번째 방법은 초기화 데이터 양식을 작성하기위한 import.sql 만 책임, 시작합니다. 테이블을 만들 때 두 번째 방법은 시작되지 않습니다, 당신은 초기화 스크립트의 테이블, 재 초기화 스크립트 단계가 있는지 여부를 결정해야합니다.

생산에서,이 두 모델은주의 추천합니다!

HTML 태그는 Thymeleaf을 확인 설정되어 있지 않습니다

기본 구성은, 내용에 대한 Thymeleaf는 매우 엄격한, 예를 들어 .HTML <meta charset="UTF-8" />, 작은 폐쇄 상징 경우 /, 에러가 잘못된 페이지로 이동합니다. 예를 들어, 당신은 또한이 라이브러리 Vue.js을 사용할 수 있습니다, 다음이 <div v-cloak></div>이 html 코드는 오류가 발생 Thymeleaf 요구 사항을 충족하지 않는 것으로 간주됩니다.

이 문제를 해결할 수 Thymeleaf 템플릿을 설정하여, 다음은 특정 구성은 다음과 같습니다

spring.thymeleaf.cache = 거짓 
spring.thymeleaf.mode = LEGACYHTML5

 

LEGACYHTML5는 메이븐 의존성, 전체에 다음 사항을 추가하는 프로젝트 빌드 도구에서 사용 가능한 추가 라이브러리 NekoHTML와 일치해야합니다

<의존성> 
    <의 groupId> net.sourceforge.nekohtml </의 groupId> 
    <artifactId를> nekohtml </ artifactId를> 
    <version>은 1.9.22 </ 버전> 
</ 의존성>

 

제의 콘텐츠는 부팅 2.x에서 봄으로 업그레이드되었습니다

샘플 코드 -github

샘플 코드 - 코드 클라우드

참조 :

:이 문서에서 제공 https://www.cnblogs.com/ityouknow/p/7089170.html

일부 봄 부팅 팁, 약간의 지식

초기화 데이터

우리는 테스트는 종종, 어떻게 처리 할 일부 데이터를 가져올 수있는 시간을 초기화해야하는거야? 하나는 JPA를 사용하는 두 가지 옵션이있을 것, 다른 하나는 봄 JDBC이다. 상세히 설명 각 두 방법의 차이.

JPA를 사용하여

사용으로 spring boot jpa설정하는 경우 spring.jpa.hibernate.ddl-auto속성으로 설정  create 또는  create-drop봄 부팅이 시작 기본, 그것은이 있는지 클래스 경로 (일반적으로 프로젝트 자원 디렉토리를) 검색 할 때 import.sql당신이 실행할 수있는 기회가 있다면, import.sql스크립트를.

사용 봄 JDBC

사용 봄 JDBC 구성 파일에 다음과 같은 구성을 추가해야

봄 : 
    데이터 소스 : 
      스키마 : 데이터베이스 / data.sql 
      SQL -script 인코딩 : UTF-8 
    JPA는 : 
      최대 절전 모드 : 
        DDL -auto을 : 없음

 

  • 스키마 스크립트 경로 설정
  • SQL 스크립트 - 인코딩 : 스크립트의 인코딩을 설정

스크립트를 실행할 때 봄 부트 프로젝트가 자동으로 시작됩니다.

네 개의 값 설명 DDL-자동

  1. 작성 : 다음 테이블의 마지막 세대를 삭제하고, 각 시간은 모델 유형에 따라 새 테이블을 다시 생성로드 최대 절전 모드, 두 사람은 그러한 변화가 실행해야하지 않으며,이 데이터베이스 테이블의 데이터 손실이 발생하더라도 것은 중요하다 이유.
  2. 드롭 생성 : 최대 절전 모드에 따라 각 모델 클래스 테이블을로드,하지만 폐쇄 테이블이 자동으로 sessionFactory에 삭제됩니다.
  3. 갱신 : 가장 일반적으로 사용되는 속성, 먼저 부하가 자동으로 테이블 (전제는 좋은 데이터베이스를 설정하는 것입니다)의 모델 클래스 구조에 따라 설정 최대 절전 모드, 자동 모델 클래스를 기반으로 테이블 구조가 나중에 최대 절전 모드를로드 업데이트하지만, 심지어 테이블 구조가 변경되면 이전 행을 삭제하지 않는 테이블의 행은 여전히 ​​존재한다. 서버에 배포 할 때, 테이블 구조가 즉시 설정되지 않습니다, 그것은 첫 번째 응용 프로그램을 위하기 전에 실행 한 후 기다리는 것입니다.
  4. 확인 : 최대 절전 모드가로드 때마다, 데이터베이스 테이블 구조를 만들 확인하고 데이터베이스의 유일한 테이블을 비교, 그것은 새로운 테이블을 생성하지 않고, 새 값을 삽입합니다.
    5 없음 : 아무것도하지 않습니다.

다른 점

JPA는 자동으로 테이블을 만들 때 첫 번째 방법은 초기화 데이터 양식을 작성하기위한 import.sql 만 책임, 시작합니다. 테이블을 만들 때 두 번째 방법은 시작되지 않습니다, 당신은 초기화 스크립트의 테이블, 재 초기화 스크립트 단계가 있는지 여부를 결정해야합니다.

생산에서,이 두 모델은주의 추천합니다!

HTML 태그는 Thymeleaf을 확인 설정되어 있지 않습니다

기본 구성은, 내용에 대한 Thymeleaf는 매우 엄격한, 예를 들어 .HTML <meta charset="UTF-8" />, 작은 폐쇄 상징 경우 /, 에러가 잘못된 페이지로 이동합니다. 예를 들어, 당신은 또한이 라이브러리 Vue.js을 사용할 수 있습니다, 다음이 <div v-cloak></div>이 html 코드는 오류가 발생 Thymeleaf 요구 사항을 충족하지 않는 것으로 간주됩니다.

이 문제를 해결할 수 Thymeleaf 템플릿을 설정하여, 다음은 특정 구성은 다음과 같습니다

spring.thymeleaf.cache = 거짓 
spring.thymeleaf.mode = LEGACYHTML5

 

LEGACYHTML5는 메이븐 의존성, 전체에 다음 사항을 추가하는 프로젝트 빌드 도구에서 사용 가능한 추가 라이브러리 NekoHTML와 일치해야합니다

<의존성> 
    <의 groupId> net.sourceforge.nekohtml </의 groupId> 
    <artifactId를> nekohtml </ artifactId를> 
    <version>은 1.9.22 </ 버전> 
</ 의존성>

 

제의 콘텐츠는 부팅 2.x에서 봄으로 업그레이드되었습니다

샘플 코드 -github

샘플 코드 - 코드 클라우드

참조 :

:이 문서에서 제공 https://www.cnblogs.com/ityouknow/p/7089170.html

추천

출처www.cnblogs.com/JonaLin/p/11411596.html