SpringBootでアプリケーションyml基本構成の詳細

5329 ワード

既存のアプリケーションをproperties削除.次にmaven-X clean installをダブルクリックするか、Maven Projectでcleanとinstall(1)ポートサービス構成をダブルクリックします.
#  ,      
server:
  port: 8080
  servlet:
    context-path: /hotel

ここでcontext-path:/hotelは構成しなくてもよい構成であればアクセスパスはhttp://ip:port/hotel/構成されていません.アクセスパスはhttp://ip:port/
(2)データベース構成
spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&useSSL=false
    username: root
    password: root
  jpa:
    hibernate:
      ddl-auto: update
    show-sql: true
  redis:
    database: 0
    host: localhost
    port: 6379
    password:
    jedis:
      pool:
        max-active: 8
        max-wait: -1
        max-idle: 8
        min-idle: 0
    timeout: 0

(3)複数の異なるprofileを構成し、異なる環境(例えば開発、テスト、生産環境)で異なる構成変数を使用することを実現する.
#    profile dev,                 profile,  :
#       :java -jar my-spring-boot.jar --spring.profiles.active=test
#       :java -jar my-spring-boot.jar --spring.profiles.active=prod
spring:
  profiles:
    active: dev

---
#       
spring:
  profiles: dev
mysql:
  ipPort: localhost:3306
  
---
#       
spring:
  profiles: test
mysql:
  ipPort: ip:port
  
---
#       
spring:
  profiles: prod
mysql:
  ipPort: ip:port

使用方法:起動パラメータを指定して異なるprofileテスト環境を使用する:java-jar my-spring-boot.jar --spring.profiles.Active=test生産環境:java-jar my-spring-boot.jar --spring.profiles.active=prod
(3)静的リソースパスの指定
spring:
  resources:
    #        ,   classpath:[/META-INF/resources/,/resources/, /static/, /public/]  context:/
    static-locations: classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/}

(4)Springboot+Thymeleafの開発中にホット配備され、デフォルトではどのコードに変更してもプロジェクトを再起動する必要があります.springを使用します.thymeleaf.Cacheとdevtoolsはhtmlの熱起動の問題を解決するためにまずpomにある.xmlでの構成


	org.springframework.boot
	spring-boot-devtools
          runtime
	true


注意:trueは、html、css、jsなどの静的リソースを変更した後、プロジェクトを再起動せずに直接リフレッシュすれば、trueに設定されている場合にのみホットに起動します.アプリケーションを変更します.yml
#   --        
spring:
  #   --        
  thymeleaf:
    cache: false
    encoding: UTF-8
    mode: LEGACYHTML5
    prefix: classpath:/templates/
    suffix: .html
    check-template-location: true
  #     
  devtools:
    restart:
      enabled: true

SpringBoot中application.yml基本配置详情_第1张图片 javaファイルを変更しても自動的に更新できる必要がある場合は、元のmavenを構築して変更する必要があります.trueを構成するとjavaファイルを変更してホットスタートをサポートしますが、この方式はプロジェクトの再起動(速度の速いプロジェクトの再起動)に属し、セッションの値が空になります.つまり、ユーザーがログインしている場合は、プロジェクトの再起動後に再ログインする必要があります.


	
		
			org.springframework.boot
			spring-boot-maven-plugin
		
	



	
		
			org.springframework.boot
			spring-boot-maven-plugin
               
                   
                   true
               
		
	


(5)時間構成
spring:
	jackson:
	    #      ,  yyyy-MM-dd HH:mm:ss
	    date-format: yyyy-MM-dd HH:mm:ss
	    #         
	    time-zone: GMT+8

(6)テンプレート構成springbootに付属するページレンダリングツールはthymeleafとfreemarkerの2つのテンプレートエンジンである.


    org.springframework.boot
    spring-boot-starter-freemarker

spring:
   freemarker:
    suffix: .html   #       
    request-context-attribute: request  #request  request
    content-type: text/html
    enabled: true
    cache: false   #    
    template-loader-path: classpath:/templates/ #           
    charset: UTF-8   #    
    settings:
      number_format: '0.##'   #     ,    

(7)redisとshiro構成


    org.springframework.boot
    spring-boot-starter-data-redis


    org.apache.shiro
    shiro-spring
    1.3.2

spring:
    redis:
	    database: 0
	    host: localhost
	    port: 6379
	    password:
	    jedis:
	      pool:
	        max-active: 8
	        max-wait: -1
	        max-idle: 8
	        min-idle: 0
	    timeout: 0
	shiro:
	    conf:
	      domain:
	      cookiePath: /
	      successUrl: /index
	      loginView: /login
	      openToken: false
	      sessionTimeout: 1800000
	      algorithmName: md5
	      hashIterations: 5
	      #      
	      sysanon:
	        - /login
	        - /regist
	      #    
	      allowedOrigins:
	        - /**