SpringBoot 配置大全

mvc

spring.mvc.async.request-timeout=設定async請求的超時時間,以毫秒爲單位,若是沒有設置的話,以具體實現的超時時間爲準,好比tomcat的servlet3的話是10秒.
spring.mvc.date-format=設定日期的格式,好比dd/MM/yyyy.
spring.mvc.favicon.enabled=是否支持favicon.ico,默認爲:=true
spring.mvc.ignore-default-model-on-redirect=在重定向時是否忽略默認model的內容,默認爲true
spring.mvc.locale=指定使用的Locale.
spring.mvc.message-codes-resolver-format=指定message=codes的格式化策略(PREFIX_ERROR_CODE,POSTFIX_ERROR_CODE).
spring.mvc.view.prefix=指定mvc視圖的前綴.
spring.mvc.view.suffix=指定mvc視圖的後綴.

messages

spring.messages.basename=指定message的basename,多個以逗號分隔,若是不加包名的話,默認從classpath路徑開始,默認:=messages
spring.messages.cache-seconds=設定加載的資源文件緩存失效時間,-1的話爲永不過時,默認爲-1
spring.messages.encoding=設定Message=bundles的編碼,默認:=UTF-8

mobile

spring.mobile.devicedelegatingviewresolver.enable-fallback=是否支持fallback的解決方案,默認false
spring.mobile.devicedelegatingviewresolver.enabled=是否開始device=view=resolver,默認爲:=false
spring.mobile.devicedelegatingviewresolver.mobile-prefix=設定mobile端視圖的前綴,默認爲:mobile/
spring.mobile.devicedelegatingviewresolver.mobile-suffix=設定mobile視圖的後綴
spring.mobile.devicedelegatingviewresolver.normal-prefix=設定普通設備的視圖前綴
spring.mobile.devicedelegatingviewresolver.normal-suffix=設定普通設備視圖的後綴
spring.mobile.devicedelegatingviewresolver.tablet-prefix=設定平板設備視圖前綴,默認:tablet/
spring.mobile.devicedelegatingviewresolver.tablet-suffix=設定平板設備視圖後綴.
spring.mobile.sitepreference.enabled=是否啓用SitePreferenceHandler,默認爲: true

view

spring.view.prefix=設定mvc視圖的前綴.
spring.view.suffix=設定mvc視圖的後綴.

resource

spring.resources.add-mappings=是否開啓默認的資源處理,默認爲true
spring.resources.cache-period=設定資源的緩存時效,以秒爲單位.
spring.resources.chain.cache=是否開啓緩存,默認爲:=true
spring.resources.chain.enabled=是否開啓資源=handling=chain,默認爲false
spring.resources.chain.html-application-cache=是否開啓h5應用的cache=manifest重寫,默認爲:=false
spring.resources.chain.strategy.content.enabled=是否開啓內容版本策略,默認爲false
spring.resources.chain.strategy.content.paths=指定要應用的版本的路徑,多個以逗號分隔,默認爲:[/**]
spring.resources.chain.strategy.fixed.enabled=是否開啓固定的版本策略,默認爲false
spring.resources.chain.strategy.fixed.paths=指定要應用版本策略的路徑,多個以逗號分隔
spring.resources.chain.strategy.fixed.version=指定版本策略使用的版本號
spring.resources.static-locations=指定靜態資源路徑,默認爲classpath:[/META-INF/resources/,/resources/, /static/, /public/]以及context:/

multipart

multipart.enabled=是否開啓文件上傳支持,默認爲true
multipart.file-size-threshold=設定文件寫入磁盤的閾值,單位爲MB或KB,默認爲0
multipart.location=指定文件上傳路徑.
multipart.max-file-size=指定文件大小最大值,默認1MB
multipart.max-request-size=指定每次請求的最大值,默認爲10MB

freemarker

spring.freemarker.allow-request-override=指定HttpServletRequest的屬性是否能夠覆蓋controller的model的同名項
spring.freemarker.allow-session-override=指定HttpSession的屬性是否能夠覆蓋controller的model的同名項
spring.freemarker.cache=是否開啓template caching.
spring.freemarker.charset=設定Template的編碼.
spring.freemarker.check-template-location=是否檢查templates路徑是否存在.
spring.freemarker.content-type=設定Content-Type.
spring.freemarker.enabled=是否容許mvc使用freemarker.
spring.freemarker.expose-request-attributes=設定全部request的屬性在merge到模板的時候,是否要都添加到model中.
spring.freemarker.expose-session-attributes=設定全部HttpSession的屬性在merge到模板的時候,是否要都添加到model中.
spring.freemarker.expose-spring-macro-helpers=設定是否以springMacroRequestContext的形式暴露RequestContext給Spring’s macro library使用
spring.freemarker.prefer-file-system-access=是否優先從文件系統加載template,以支持熱加載,默認爲true
spring.freemarker.prefix=設定freemarker模板的前綴.
spring.freemarker.request-context-attribute=指定RequestContext屬性的名.
spring.freemarker.settings=設定FreeMarker keys.
spring.freemarker.suffix=設定模板的後綴.
spring.freemarker.template-loader-path=設定模板的加載路徑,多個以逗號分隔,默認: [「classpath:/templates/」]
spring.freemarker.view-names=指定使用模板的視圖列表.

velocity

spring.velocity.allow-request-override=指定HttpServletRequest的屬性是否能夠覆蓋controller的model的同名項
spring.velocity.allow-session-override=指定HttpSession的屬性是否能夠覆蓋controller的model的同名項
spring.velocity.cache=是否開啓模板緩存
spring.velocity.charset=設定模板編碼
spring.velocity.check-template-location=是否檢查模板路徑是否存在.
spring.velocity.content-type=設定ContentType的值
spring.velocity.date-tool-attribute=設定暴露給velocity上下文使用的DateTool的名
spring.velocity.enabled=設定是否容許mvc使用velocity
spring.velocity.expose-request-attributes=是否在merge模板的時候,將request屬性都添加到model中
spring.velocity.expose-session-attributes=是否在merge模板的時候,將HttpSession屬性都添加到model中
spring.velocity.expose-spring-macro-helpers=設定是否以springMacroRequestContext的名來暴露RequestContext給Spring’s macro類庫使用
spring.velocity.number-tool-attribute=設定暴露給velocity上下文的NumberTool的名
spring.velocity.prefer-file-system-access=是否優先從文件系統加載模板以支持熱加載,默認爲true
spring.velocity.prefix=設定velocity模板的前綴.
spring.velocity.properties=設置velocity的額外屬性.
spring.velocity.request-context-attribute=設定RequestContext attribute的名.
spring.velocity.resource-loader-path=設定模板路徑,默認爲: classpath:/templates/
spring.velocity.suffix=設定velocity模板的後綴.
spring.velocity.toolbox-config-location=設定Velocity Toolbox配置文件的路徑,好比 /WEB-INF/toolbox.xml.
spring.velocity.view-names=設定須要解析的視圖名稱.

thymeleaf

spring.thymeleaf.cache=是否開啓模板緩存,默認true
spring.thymeleaf.check-template-location=是否檢查模板路徑是否存在,默認true
spring.thymeleaf.content-type=指定Content-Type,默認爲: text/html
spring.thymeleaf.enabled=是否容許MVC使用Thymeleaf,默認爲: true
spring.thymeleaf.encoding=指定模板的編碼,默認爲: UTF-8
spring.thymeleaf.excluded-view-names=指定不使用模板的視圖名稱,多個以逗號分隔.
spring.thymeleaf.mode 指定模板的模式,具體查看StandardTemplateModeHandlers,默認爲: HTML5
spring.thymeleaf.prefix=指定模板的前綴,默認爲:classpath:/templates/
spring.thymeleaf.suffix 指定模板的後綴,默認爲:.html
spring.thymeleaf.template-resolver-order=指定模板的解析順序,默認爲第一個.
spring.thymeleaf.view-names=指定使用模板的視圖名,多個以逗號分隔.

mustcache

spring.mustache.cache=是否Enable template caching.
spring.mustache.charset=指定Template的編碼.
spring.mustache.check-template-location=是否檢查默認的路徑是否存在.
spring.mustache.content-type=指定Content-Type.
spring.mustache.enabled=是否開啓mustcache的模板支持.
spring.mustache.prefix=指定模板的前綴,默認: classpath:/templates/
spring.mustache.suffix=指定模板的後綴,默認: .html
spring.mustache.view-names=指定要使用模板的視圖名.

groovy模板

spring.groovy.template.allow-request-override=指定HttpServletRequest的屬性是否能夠覆蓋controller的model的同名項
spring.groovy.template.allow-session-override=指定HttpSession的屬性是否能夠覆蓋controller的model的同名項
spring.groovy.template.cache=是否開啓模板緩存.
spring.groovy.template.charset=指定Template編碼.
spring.groovy.template.check-template-location=是否檢查模板的路徑是否存在.
spring.groovy.template.configuration.auto-escape=是否在渲染模板時自動排查model的變量,默認爲: false
spring.groovy.template.configuration.auto-indent=是否在渲染模板時自動縮進,默認爲false
spring.groovy.template.configuration.auto-indent-string=若是自動縮進啓用的話,是使用SPACES仍是TAB,默認爲: SPACES
spring.groovy.template.configuration.auto-new-line=渲染模板時是否要輸出換行,默認爲false
spring.groovy.template.configuration.base-template-class=指定template base class.
spring.groovy.template.configuration.cache-templates=是否要緩存模板,默認爲true
spring.groovy.template.configuration.declaration-encoding=在寫入declaration header時使用的編碼
spring.groovy.template.configuration.expand-empty-elements=是使用這種形式,仍是這種展開模式,默認爲: false)
spring.groovy.template.configuration.locale=指定template locale.
spring.groovy.template.configuration.new-line-string=當啓用自動換行時,換行的輸出,默認爲系統的line.separator屬性的值
spring.groovy.template.configuration.resource-loader-path=指定groovy的模板路徑,默認爲classpath:/templates/
spring.groovy.template.configuration.use-double-quotes=指定屬性要使用雙引號仍是單引號,默認爲false
spring.groovy.template.content-type=指定Content-Type.
spring.groovy.template.enabled=是否開啓groovy模板的支持.
spring.groovy.template.expose-request-attributes=設定全部request的屬性在merge到模板的時候,是否要都添加到model中.
spring.groovy.template.expose-session-attributes=設定全部request的屬性在merge到模板的時候,是否要都添加到model中.
spring.groovy.template.expose-spring-macro-helpers=設定是否以springMacroRequestContext的形式暴露RequestContext給Spring’s macro library使用
spring.groovy.template.prefix=指定模板的前綴.
spring.groovy.template.request-context-attribute=指定RequestContext屬性的名.
spring.groovy.template.resource-loader-path=指定模板的路徑,默認爲: classpath:/templates/
spring.groovy.template.suffix=指定模板的後綴
spring.groovy.template.view-names=指定要使用模板的視圖名稱.

http

spring.hateoas.apply-to-primary-object-mapper=設定是否對object mapper也支持HATEOAS,默認爲: true
spring.http.converters.preferred-json-mapper=是否優先使用JSON mapper來轉換.
spring.http.encoding.charset=指定http請求和相應的Charset,默認: UTF-8
spring.http.encoding.enabled=是否開啓http的編碼支持,默認爲true
spring.http.encoding.force=是否強制對http請求和響應進行編碼,默認爲true

json

spring.jackson.date-format=指定日期格式,好比yyyy-MM-dd HH:mm:ss,或者具體的格式化類的全限定名
spring.jackson.deserialization=是否開啓Jackson的反序列化
spring.jackson.generator=是否開啓json的generators.
spring.jackson.joda-date-time-format=指定Joda date/time的格式,好比yyyy-MM-dd HH:mm:ss). 若是沒有配置的話,dateformat會做爲backup
spring.jackson.locale=指定json使用的Locale.
spring.jackson.mapper=是否開啓Jackson通用的特性.
spring.jackson.parser=是否開啓jackson的parser特性.
spring.jackson.property-naming-strategy=指定PropertyNamingStrategy (CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES)或者指定PropertyNamingStrategy子類的全限定類名.
spring.jackson.serialization=是否開啓jackson的序列化.
spring.jackson.serialization-inclusion=指定序列化時屬性的inclusion方式,具體查看JsonInclude.Include枚舉.
spring.jackson.time-zone=指定日期格式化時區,好比America/Los_Angeles或者GMT+10.

jersey

spring.jersey.filter.order=指定Jersey filter的order,默認爲: 0
spring.jersey.init=指定傳遞給Jersey的初始化參數.
spring.jersey.type=指定Jersey的集成類型,能夠是servlet或者filter.server配置
server.address=指定server綁定的地址
server.compression.enabled=是否開啓壓縮,默認爲false.
server.compression.excluded-user-agents=指定不壓縮的user-agent,多個以逗號分隔,默認值爲:text/html,text/xml,text/plain,text/css
server.compression.mime-types=指定要壓縮的MIME type,多個以逗號分隔.
server.compression.min-response-size=執行壓縮的閾值,默認爲2048
server.context-parameters.[param name]=設置servlet context 參數
server.context-path=設定應用的context-path.
server.display-name=設定應用的展現名稱,默認: application
server.jsp-servlet.class-name=設定編譯JSP用的servlet,默認: org.apache.jasper.servlet.JspServlet)
server.jsp-servlet.init-parameters.[param name]=設置JSP servlet 初始化參數.
server.jsp-servlet.registered=設定JSP servlet是否註冊到內嵌的servlet容器,默認true
server.port設定http=監聽端口
server.servlet-path=設定dispatcher servlet的監聽路徑,默認爲: /
server.servlet.session.cookie.http-only=true//防止會話cookie被客戶端腳本訪問。
server.servlet.session.tracking-modes=cookie//禁止URL中的jsessionid。

cookie、session配置

server.session.cookie.comment=指定session cookie的comment
server.session.cookie.domain=指定session cookie的domain
server.session.cookie.http-only=是否開啓HttpOnly.
server.session.cookie.max-age=設定session cookie的最大age.
server.session.cookie.name=設定Session cookie 的名稱.
server.session.cookie.path=設定session cookie的路徑.
server.session.cookie.secure=設定session cookie的「Secure」 flag.
server.session.persistent=重啓時是否持久化session,默認false
server.session.timeoutsession=的超時時間
server.session.tracking-modes=設定Session的追蹤模式(cookie, url, ssl).

ssl配置

server.ssl.ciphers 是否支持SSL ciphers.
server.ssl.client-auth 設定client authentication是wanted 仍是 needed.
server.ssl.enabled 是否開啓ssl,默認: true
server.ssl.key-alias 設定key store中key的別名.
server.ssl.key-password 訪問key store中key的密碼.
server.ssl.key-store 設定持有SSL certificate的key store的路徑,一般是一個.jks文件.
server.ssl.key-store-password 設定訪問key store的密碼.
server.ssl.key-store-provider 設定key store的提供者.
server.ssl.key-store-type 設定key store的類型.
server.ssl.protocol 使用的SSL協議,默認: TLS
server.ssl.trust-store 持有SSL certificates的Trust store.
server.ssl.trust-store-password 訪問trust store的密碼.
server.ssl.trust-store-provider 設定trust store的提供者.
server.ssl.trust-store-type 指定trust store的類型.

tomcat

server.tomcat.access-log-enabled 是否開啓access log ,默認: false)
server.tomcat.access-log-pattern 設定access logs的格式,默認: common
server.tomcat.accesslog.directory 設定log的目錄,默認: logs
server.tomcat.accesslog.enabled 是否開啓access log,默認: false
server.tomcat.accesslog.pattern 設定access logs的格式,默認: common
server.tomcat.accesslog.prefix 設定Log 文件的前綴,默認: access_log
server.tomcat.accesslog.suffix 設定Log 文件的後綴,默認: .log
server.tomcat.background-processor-delay 後臺線程方法的Delay大小: 30
server.tomcat.basedir 設定Tomcat的base 目錄,若是沒有指定則使用臨時目錄.
server.tomcat.internal-proxies 設定信任的正則表達式,默認:「10.\d{1,3}.\d{1,3}.\d{1,3}| 192.168.\d{1,3}.\d{1,3}| 169.254.\d{1,3}.\d{1,3}| 127.\d{1,3}.\d{1,3}.\d{1,3}| 172.1[6-9]{1}.\d{1,3}.\d{1,3}| 172.2[0-9]{1}.\d{1,3}.\d{1,3}|172.3[0-1]{1}.\d{1,3}.\d{1,3}」
server.tomcat.max-http-header-size 設定http header的最小值,默認: 0
server.tomcat.max-threads 設定tomcat的最大工做線程數,默認爲: 0
server.tomcat.port-header 設定http header使用的,用來覆蓋原來port的value.
server.tomcat.protocol-header 設定Header包含的協議,一般是 X-Forwarded-Proto,若是remoteIpHeader有值,則將設置爲RemoteIpValve.
server.tomcat.protocol-header-https-value 設定使用SSL的header的值,默認https.
server.tomcat.remote-ip-header 設定remote IP的header,若是remoteIpHeader有值,則設置爲RemoteIpValve
server.tomcat.uri-encoding 設定URI的解碼字符集.

undertow

server.undertow.access-log-dir 設定Undertow access log 的目錄,默認: logs
server.undertow.access-log-enabled 是否開啓access log,默認: false
server.undertow.access-log-pattern 設定access logs的格式,默認: common
server.undertow.accesslog.dir 設定access log 的目錄.
server.undertow.buffer-size 設定buffer的大小.
server.undertow.buffers-per-region 設定每一個region的buffer數
server.undertow.direct-buffers 設定堆外內存
server.undertow.io-threads 設定I/O線程數.
server.undertow.worker-threads 設定工做線程數

datasource

spring.dao.exceptiontranslation.enabled 是否開啓PersistenceExceptionTranslationPostProcessor,默認爲true
spring.datasource.abandon-when-percentage-full 設定超時被廢棄的鏈接佔到多少比例時要被關閉或上報
spring.datasource.allow-pool-suspension 使用Hikari pool時,是否容許鏈接池暫停,默認爲: false
spring.datasource.alternate-username-allowed 是否容許替代的用戶名.
spring.datasource.auto-commit 指定updates是否自動提交.
spring.datasource.catalog 指定默認的catalog.
spring.datasource.commit-on-return 設置當鏈接被歸還時,是否要提交全部還未完成的事務
spring.datasource.connection-init-sql 指定鏈接被建立,再被添加到鏈接池以前執行的sql.
spring.datasource.connection-init-sqls 使用DBCP connection pool時,指定初始化時要執行的sql
spring.datasource.connection-properties.[key] 在使用DBCP connection pool時指定要配置的屬性
spring.datasource.connection-test-query 指定校驗鏈接合法性執行的sql語句
spring.datasource.connection-timeout 指定鏈接的超時時間,毫秒單位.
spring.datasource.continue-on-error 在初始化數據庫時,遇到錯誤是否繼續,默認false
spring.datasource.data 指定Data (DML)腳本
spring.datasource.data-source-class-name 指定數據源的全限定名.
spring.datasource.data-source-jndi 指定jndi的地址
spring.datasource.data-source-properties.[key] 使用Hikari connection pool時,指定要設置的屬性
spring.datasource.db-properties 使用Tomcat connection pool,指定要設置的屬性
spring.datasource.default-auto-commit 是否自動提交.
spring.datasource.default-catalog 指定鏈接默認的catalog.
spring.datasource.default-read-only 是否設置默認鏈接只讀.
spring.datasource.default-transaction-isolation 指定鏈接的事務的默認隔離級別.
spring.datasource.driver-class-name 指定driver的類名,默認從jdbc url中自動探測.
spring.datasource.fair-queue 是否採用FIFO返回鏈接.
spring.datasource.health-check-properties.[key] 使用Hikari connection pool時,在心跳檢查時傳遞的屬性
spring.datasource.idle-timeout 指定鏈接多久沒被使用時,被設置爲空閒,默認爲10ms
spring.datasource.ignore-exception-on-pre-load 當初始化鏈接池時,是否忽略異常.
spring.datasource.init-sql 當鏈接建立時,執行的sql
spring.datasource.initial-size 指定啓動鏈接池時,初始創建的鏈接數量
spring.datasource.initialization-fail-fast 當建立鏈接池時,無法建立指定最小鏈接數量是否拋異常
spring.datasource.initialize 指定初始化數據源,是否用data.sql來初始化,默認: true
spring.datasource.isolate-internal-queries 指定內部查詢是否要被隔離,默認爲false
spring.datasource.jdbc-interceptors 使用Tomcat connection pool時,指定jdbc攔截器,分號分隔
spring.datasource.jdbc-url 指定JDBC URL.
spring.datasource.jmx-enabled 是否開啓JMX,默認爲: false
spring.datasource.jndi-name 指定jndi的名稱.
spring.datasource.leak-detection-threshold 使用Hikari connection pool時,多少毫秒檢測一次鏈接泄露.
spring.datasource.log-abandoned 使用DBCP connection pool,是否追蹤廢棄statement或鏈接,默認爲: false
spring.datasource.log-validation-errors 當使用Tomcat connection pool是否打印校驗錯誤.
spring.datasource.login-timeout 指定鏈接數據庫的超時時間.
spring.datasource.max-active 指定鏈接池中最大的活躍鏈接數.
spring.datasource.max-age 指定鏈接池中鏈接的最大年齡
spring.datasource.max-idle 指定鏈接池最大的空閒鏈接數量.
spring.datasource.max-lifetime 指定鏈接池中鏈接的最大生存時間,毫秒單位.
spring.datasource.max-open-prepared-statements 指定最大的打開的prepared statements數量.
spring.datasource.max-wait 指定鏈接池等待鏈接返回的最大等待時間,毫秒單位.
spring.datasource.maximum-pool-size 指定鏈接池最大的鏈接數,包括使用中的和空閒的鏈接.
spring.datasource.min-evictable-idle-time-millis 指定一個空閒鏈接最少空閒多久後可被清除.
spring.datasource.min-idle 指定必須保持鏈接的最小值(For DBCP and Tomcat connection pools)
spring.datasource.minimum-idle 指定鏈接維護的最小空閒鏈接數,當使用HikariCP時指定.
spring.datasource.name 指定數據源名.
spring.datasource.num-tests-per-eviction-run 指定運行每一個idle object evictor線程時的對象數量
spring.datasource.password 指定數據庫密碼.
spring.datasource.platform 指定schema要使用的Platform(schema-${platform}.sql),默認爲: all
spring.datasource.pool-name 指定鏈接池名字.
spring.datasource.pool-prepared-statements 指定是否池化statements.
spring.datasource.propagate-interrupt-state 在等待鏈接時,若是線程被中斷,是否傳播中斷狀態.
spring.datasource.read-only 當使用Hikari connection pool時,是否標記數據源只讀
spring.datasource.register-mbeans 指定Hikari connection pool是否註冊JMX MBeans.
spring.datasource.remove-abandoned 指定當鏈接超過廢棄超時時間時,是否馬上刪除該鏈接.
spring.datasource.remove-abandoned -timeout指定鏈接應該被廢棄的時間.
spring.datasource.rollback-on-return 在歸還鏈接時,是否回滾等待中的事務.
spring.datasource.schema 指定Schema (DDL)腳本.
spring.datasource.separator 指定初始化腳本的語句分隔符,默認: ;
spring.datasource.sql-script-encoding 指定SQL scripts編碼.
spring.datasource.suspect-timeout 指定打印廢棄鏈接前的超時時間.
spring.datasource.test-on-borrow 當從鏈接池借用鏈接時,是否測試該鏈接.
spring.datasource.test-on-connect 建立時,是否測試鏈接
spring.datasource.test-on-return 在鏈接歸還到鏈接池時是否測試該鏈接.
spring.datasource.test-while-idle 當鏈接空閒時,是否執行鏈接測試.
spring.datasource.time-between-eviction-runs-millis 指定空閒鏈接檢查、廢棄鏈接清理、空閒鏈接池大小調整之間的操做時間間隔
spring.datasource.transaction-isolation 指定事務隔離級別,使用Hikari connection pool時指定
spring.datasource.url 指定JDBC URL.
spring.datasource.use-disposable-connection-facade 是否對鏈接進行包裝,防止鏈接關閉以後被使用.
spring.datasource.use-equals 比較方法名時是否使用String.equals()替換==.
spring.datasource.use-lock 是否對鏈接操做加鎖
spring.datasource.username 指定數據庫名.
spring.datasource.validation-interval 指定多少ms執行一次鏈接校驗.
spring.datasource.validation-query 指定獲取鏈接時鏈接校驗的sql查詢語句.
spring.datasource.validation-query-timeout 指定鏈接校驗查詢的超時時間.
spring.datasource.validation-timeout 設定鏈接校驗的超時時間,當使用Hikari connection pool時指定
spring.datasource.validator-class-name 用來測試查詢的validator全限定名.
spring.datasource.xa.data-source-class-name 指定數據源的全限定名.
spring.datasource.xa.properties 指定傳遞給XA data source的屬性

JPA

spring.jpa.database 指定目標數據庫.
spring.jpa.database-platform 指定目標數據庫的類型.
spring.jpa.generate-ddl 是否在啓動時初始化schema,默認爲false
spring.jpa.hibernate.ddl-auto 指定DDL mode (none, validate, update, create, create-drop). 當使用內嵌數據庫時,默認是create-drop,不然爲none.
spring.jpa.hibernate.naming-strategy 指定命名策略.
spring.jpa.open-in-view 是否註冊OpenEntityManagerInViewInterceptor,綁定JPA EntityManager到請求線程中,默認爲: true
spring.jpa.properties 添加額外的屬性到JPA provider.
spring.jpa.show-sql 是否開啓sql的log,默認爲: false

jooq

spring.jooq.sql-dialect 指定JOOQ使用的SQLDialect,好比POSTGRES.

h2

spring.h2.console.enabled 是否開啓控制檯,默認爲false
spring.h2.console.path 指定控制檯路徑,默認爲: /h2-console

JTA

spring.jta.allow-multiple-lrc 是否容許 multiple LRC,默認爲: false
spring.jta.asynchronous2-pc 指定兩階段提交是否能夠異步,默認爲: false
spring.jta.background-recovery-interval 指定多少分鐘跑一次recovery process,默認爲: 1
spring.jta.background-recovery-interval-seconds 指定多久跑一次recovery process,默認: 60
spring.jta.current-node-only-recovery 是否過濾掉其餘非本JVM的recovery,默認爲: true
spring.jta.debug-zero-resource-transaction 是否追蹤沒有使用指定資源的事務,默認爲: false
spring.jta.default-transaction-timeout 設定默認的事務超時時間,默認爲60
spring.jta.disable-jmx 是否禁用jmx,默認爲false
spring.jta.enabled 是否開啓JTA support,默認爲: true
spring.jta.exception-analyzer 設置指定的異常分析類
spring.jta.filter-log-status 使用Bitronix Transaction Manager時,是否寫mandatory logs,開啓的話,能夠節省磁盤空間,可是調試會複雜寫,默認爲false
spring.jta.force-batching-enabled 使用Bitronix Transaction Manager時,是否批量寫磁盤,默認爲true.
spring.jta.forced-write-enabled 使用Bitronix Transaction Manager時,是否強制寫日誌到磁盤,默認爲true
spring.jta.graceful-shutdown-interval 當使用Bitronix Transaction Manager,指定shutdown時等待事務結束的時間,超過則中斷,默認爲60
spring.jta.jndi-transaction-synchronization-registry-name 當使用Bitronix Transaction Manager時,在JNDI下得事務同步registry,默認爲: java:comp/TransactionSynchronizationRegistry
spring.jta.jndi-user-transaction-name 指定在JNDI使用Bitronix Transaction Manager的名稱,默認:java:comp/UserTransaction
spring.jta.journal 當使用Bitronix Transaction Manager,指定The journal是否disk仍是null仍是一個類的全限定名,默認disk
spring.jta.log-dirTransaction logs directory.
spring.jta.log-part1-filename 指定The journal fragment文件1的名字,默認: btm1.tlog
spring.jta.log-part2-filename 指定The journal fragment文件2的名字,默認: btm2.tlog
spring.jta.max-log-size-in-mb 指定journal fragments大小的最大值. 默認: 2M
spring.jta.resource-configuration-filename 指定Bitronix Transaction Manager配置文件名.
spring.jta.server-id 指定Bitronix Transaction Manager實例的id.
spring.jta.skip-corrupted-logs 是否忽略corrupted log files文件,默認爲false.
spring.jta.transaction-manager-id 指定Transaction manager的惟一標識.
spring.jta.warn-about-zero-resource-transaction 當使用Bitronix Transaction Manager時,是否對沒有使用指定資源的事務進行警告,默認爲: true

cache

spring.cache.cache-names 指定要建立的緩存的名稱,逗號分隔(若該緩存實現支持的話)
spring.cache.ehcache.config 指定初始化EhCache時使用的配置文件的位置指定.
spring.cache.guava.spec 指定建立緩存要使用的spec,具體詳見CacheBuilderSpec.
spring.cache.hazelcast.config 指定初始化Hazelcast時的配置文件位置
spring.cache.infinispan.config 指定初始化Infinispan時的配置文件位置.
spring.cache.jcache.config 指定jcache的配置文件.
spring.cache.jcache.provider 指定CachingProvider實現類的全限定名.
spring.cache.type 指定緩存類型

mongodb

spring.mongodb.embedded.features 指定要開啓的特性,逗號分隔.
spring.mongodb.embedded.version 指定要使用的版本,默認: 2.6.10

redis

spring.redis.database 指定鏈接工廠使用的Database index,默認爲: 0
spring.redis.host 指定Redis server host,默認爲: localhost
spring.redis.password 指定Redis server的密碼
spring.redis.pool.max-active 指定鏈接池最大的活躍鏈接數,-1表示無限,默認爲8
spring.redis.pool.max-idle 指定鏈接池最大的空閒鏈接數,-1表示無限,默認爲8
spring.redis.pool.max-wait 指定當鏈接池耗盡時,新獲取鏈接須要等待的最大時間,以毫秒單位,-1表示無限等待
spring.redis.pool.min-idle 指定鏈接池中空閒鏈接的最小數量,默認爲0
spring.redis.port 指定redis服務端端口,默認: 6379
spring.redis.sentinel.master 指定redis server的名稱
spring.redis.sentinel.nodes 指定sentinel節點,逗號分隔,格式爲host:port.
spring.redis.timeout 指定鏈接超時時間,毫秒單位,默認爲0

springdata

spring.data.elasticsearch.cluster-name 指定es集羣名稱,默認: elasticsearch
spring.data.elasticsearch.cluster-nodes 指定es的集羣,逗號分隔,不指定的話,則啓動client node.
spring.data.elasticsearch.properties 指定要配置的es屬性.
spring.data.elasticsearch.repositories.enabled 是否開啓es存儲,默認爲: true
spring.data.jpa.repositories.enabled 是否開啓JPA支持,默認爲: true
spring.data.mongodb.authentication-database 指定鑑權的數據庫名
spring.data.mongodb.database 指定mongodb數據庫名
spring.data.mongodb.field-naming-strategy 指定要使用的FieldNamingStrategy.
spring.data.mongodb.grid-fs-database 指定GridFS database的名稱.
spring.data.mongodb.host 指定Mongo server host.
spring.data.mongodb.password 指定Mongo server的密碼.
spring.data.mongodb.port 指定Mongo server port.
spring.data.mongodb.repositories.enabled 是否開啓mongodb存儲,默認爲true
spring.data.mongodb.uri 指定Mongo database URI.默認:mongodb://localhost/test
spring.data.mongodb.username 指定登錄mongodb的用戶名.
spring.data.rest.base-path 指定暴露資源的基準路徑.
spring.data.rest.default-page-size 指定每頁的大小,默認爲: 20
spring.data.rest.limit-param-name 指定limit的參數名,默認爲: size
spring.data.rest.max-page-size 指定最大的頁數,默認爲1000
spring.data.rest.page-param-name 指定分頁的參數名,默認爲: page
spring.data.rest.return-body-on-create 當建立完實體以後,是否返回body,默認爲false
spring.data.rest.return-body-on-update 在更新完實體後,是否返回body,默認爲false
spring.data.rest.sort-param-name 指定排序使用的key,默認爲: sort
spring.data.solr.host 指定Solr host,若是有指定了zk的host的話,則忽略。默認爲: http://127.0.0.1:8983/solr
spring.data.solr.repositories.enabled 是否開啓Solr repositories,默認爲: true
spring.data.solr.zk-host 指定zk的地址,格式爲HOST:PORT.

activemq

spring.activemq.broker-url 指定ActiveMQ broker的URL,默認自動生成.
spring.activemq.in-memory 是不是內存模式,默認爲true.
spring.activemq.password 指定broker的密碼.
spring.activemq.pooled 是否建立PooledConnectionFactory,而非ConnectionFactory,默認false
spring.activemq.user 指定broker的用戶.

artemis(HornetQ捐獻給apache後的版本)

spring.artemis.embedded.cluster-password 指定集羣的密碼,默認是啓動時隨機生成.
spring.artemis.embedded.data-directory 指定Journal文件的目錄.若是不開始持久化則沒必要要指定.
spring.artemis.embedded.enabled 是否開啓內嵌模式,默認true
spring.artemis.embedded.persistent 是否開啓persistent store,默認false.
spring.artemis.embedded.queues 指定啓動時建立的隊列,多個用逗號分隔,默認: []
spring.artemis.embedded.server-id 指定Server ID. 默認是一個自增的數字,從0開始.
spring.artemis.embedded.topics 指定啓動時建立的topic,多個的話逗號分隔,默認: []
spring.artemis.host 指定Artemis broker 的host. 默認: localhost
spring.artemis.mode 指定Artemis 的部署模式, 默認爲auto-detected(也能夠爲native or embedded).
spring.artemis.port 指定Artemis broker 的端口,默認爲: 61616

rabbitmq

spring.rabbitmq.addresses 指定client鏈接到的server的地址,多個以逗號分隔.
spring.rabbitmq.dynamic 是否建立AmqpAdmin bean. 默認爲: true)
spring.rabbitmq.host 指定RabbitMQ host.默認爲: localhost)
spring.rabbitmq.listener.acknowledge-mode 指定Acknowledge的模式.
spring.rabbitmq.listener.auto-startup 是否在啓動時就啓動mq,默認: true)
spring.rabbitmq.listener.concurrency 指定最小的消費者數量.
spring.rabbitmq.listener.max-concurrency 指定最大的消費者數量.
spring.rabbitmq.listener.prefetch 指定一個請求能處理多少個消息,若是有事務的話,必須大於等於transaction數量.
spring.rabbitmq.listener.transaction-size 指定一個事務處理的消息數量,最好是小於等於prefetch的數量.
spring.rabbitmq.password 指定broker的密碼.
spring.rabbitmq.port 指定RabbitMQ 的端口,默認: 5672)
spring.rabbitmq.requested-heartbeat 指定心跳超時,0爲不指定.
spring.rabbitmq.ssl.enabled 是否開始SSL,默認: false)
spring.rabbitmq.ssl.key-store 指定持有SSL certificate的key store的路徑
spring.rabbitmq.ssl.key-store-password 指定訪問key store的密碼.
spring.rabbitmq.ssl.trust-store 指定持有SSL certificates的Trust store.
spring.rabbitmq.ssl.trust-store-password 指定訪問trust store的密碼.
spring.rabbitmq.username 指定登錄broker的用戶名.
spring.rabbitmq.virtual-host 指定鏈接到broker的Virtual host.

hornetq

spring.hornetq.embedded.cluster-password 指定集羣的密碼,默認啓動時隨機生成.
spring.hornetq.embedded.data-directory 指定Journal file 的目錄. 若是不開啓持久化則沒必要指定.
spring.hornetq.embedded.enabled 是否開啓內嵌模式,默認:true
spring.hornetq.embedded.persistent 是否開啓persistent store,默認: false
spring.hornetq.embedded.queues 指定啓動是建立的queue,多個以逗號分隔,默認: []
spring.hornetq.embedded.server-id 指定Server ID. 默認使用自增數字,從0開始.
spring.hornetq.embedded.topics 指定啓動時建立的topic,多個以逗號分隔,默認: []
spring.hornetq.host 指定HornetQ broker 的host,默認: localhost
spring.hornetq.mode 指定HornetQ 的部署模式,默認是auto-detected,也能夠指定native 或者 embedded.
spring.hornetq.port 指定HornetQ broker 端口,默認: 5445

jms

spring.jms.jndi-name 指定Connection factory JNDI 名稱.
spring.jms.listener.acknowledge-mode 指定ack模式,默認自動ack.
spring.jms.listener.auto-startup 是否啓動時自動啓動jms,默認爲: true
spring.jms.listener.concurrency 指定最小的併發消費者數量.
spring.jms.listener.max-concurrency 指定最大的併發消費者數量.
spring.jms.pub-sub-domain 是否使用默認的destination type來支持 publish/subscribe,默認: false

security

security.basic.authorize-mode 要使用權限控制模式.
security.basic.enabled 是否開啓基本的鑑權,默認爲true
security.basic.path 須要鑑權的path,多個的話以逗號分隔,默認爲[/**]
security.basic.realm HTTP basic realm 的名字,默認爲Spring
security.enable-csrf 是否開啓cross-site request forgery校驗,默認爲false.
security.filter-order Security filter chain的order,默認爲0
security.headers.cache 是否開啓http頭部的cache控制,默認爲false.
security.headers.content-type 是否開啓X-Content-Type-Options頭部,默認爲false.
security.headers.frame 是否開啓X-Frame-Options頭部,默認爲false.
security.headers.hsts 指定HTTP Strict Transport Security (HSTS)模式(none, domain, all).
security.headers.xss 是否開啓cross-site scripting (XSS) 保護,默認爲false.
security.ignored 指定不鑑權的路徑,多個的話以逗號分隔.
security.oauth2.client.access-token-uri 指定獲取access token的URI.
security.oauth2.client.access-token-validity-seconds 指定access token失效時長.
security.oauth2.client.additional-information.[key] 設定要添加的額外信息.
security.oauth2.client.authentication-scheme 指定傳輸不記名令牌(bearer token)的方式(form, header, none,query),默認爲header
security.oauth2.client.authorities 指定授予客戶端的權限.
security.oauth2.client.authorized-grant-types 指定客戶端容許的grant types.
security.oauth2.client.auto-approve-scopes 對客戶端自動受權的scope.
security.oauth2.client.client-authentication-scheme 傳輸authentication credentials的方式(form, header, none, query),默認爲header方式
security.oauth2.client.client-id 指定OAuth2 client ID.
security.oauth2.client.client-secret 指定OAuth2 client secret. 默認是一個隨機的secret.
security.oauth2.client.grant-type 指定獲取資源的access token的受權類型.
security.oauth2.client.id 指定應用的client ID.
security.oauth2.client.pre-established-redirect-uri 服務端pre-established的跳轉URI.
security.oauth2.client.refresh-token-validity-seconds 指定refresh token的有效期.
security.oauth2.client.registered-redirect-uri 指定客戶端跳轉URI,多個以逗號分隔.
security.oauth2.client.resource-ids 指定客戶端相關的資源id,多個以逗號分隔.
security.oauth2.client.scopeclient 的scope
security.oauth2.client.token-name 指定token的名稱
security.oauth2.client.use-current-uri 是否優先使用請求中URI,再使用pre-established的跳轉URI. 默認爲true
security.oauth2.client.user-authorization-uri 用戶跳轉去獲取access token的URI.
security.oauth2.resource.id 指定resource的惟一標識.
security.oauth2.resource.jwt.key-uri JWT token的URI. 當key爲公鑰時,或者value不指定時指定.
security.oauth2.resource.jwt.key-value JWT token驗證的value. 能夠是對稱加密或者PEMencoded RSA公鑰. 能夠使用URI做爲value.
security.oauth2.resource.prefer-token-info 是否使用token info,默認爲true
security.oauth2.resource.service-id 指定service ID,默認爲resource.
security.oauth2.resource.token-info-uritoken 解碼的URI.
security.oauth2.resource.token-type 指定當使用userInfoUri時,發送的token類型.
security.oauth2.resource.user-info-uri 指定user info的URI
security.oauth2.sso.filter-order 若是沒有顯示提供WebSecurityConfigurerAdapter時指定的Filter order.
security.oauth2.sso.login-path 跳轉到SSO的登陸路徑默認爲/login.
security.require-ssl 是否對全部請求開啓SSL,默認爲false.
security.sessions 指定Session的建立策略(always, never, if_required, stateless).
security.user.name 指定默認的用戶名,默認爲user.
security.user.password 默認的用戶密碼.
security.user.role 默認用戶的受權角色.

SpringBoot支持了兩種數據庫遷移工具,一個是flyway,一個是liquibase。其自己也支持sql script,在初始化數據源以後執行指定的腳本。css

flyway

flyway.baseline-description 對執行遷移時基準版本的描述.
flyway.baseline-on-migrate 當遷移時發現目標schema非空,並且帶有沒有元數據的表時,是否自動執行基準遷移,默認false.
flyway.baseline-version 開始執行基準遷移時對現有的schema的版本打標籤,默認值爲1.
flyway.check-location 檢查遷移腳本的位置是否存在,默認false.
flyway.clean-on-validation-error 當發現校驗錯誤時是否自動調用clean,默認false.
flyway.enabled 是否開啓flywary,默認true.
flyway.encoding 設置遷移時的編碼,默認UTF-8.
flyway.ignore-failed-future-migration 當讀取元數據表時是否忽略錯誤的遷移,默認false.
flyway.init-sqls 當初始化好鏈接時要執行的SQL.
flyway.locations 遷移腳本的位置,默認db/migration.
flyway.out-of-order 是否容許無序的遷移,默認false.
flyway.password 目標數據庫的密碼.
flyway.placeholder-prefix 設置每一個placeholder的前綴,默認${.
flyway.placeholder-replacementplaceholders 是否要被替換,默認true.
flyway.placeholder-suffix 設置每一個placeholder的後綴,默認}.
flyway.placeholders.[placeholder name] 設置placeholder的value
flyway.schemas 設定須要flywary遷移的schema,大小寫敏感,默認爲鏈接默認的schema.
flyway.sql-migration-prefix 遷移文件的前綴,默認爲V.
flyway.sql-migration-separator 遷移腳本的文件名分隔符,默認__
flyway.sql-migration-suffix 遷移腳本的後綴,默認爲.sql
flyway.tableflyway 使用的元數據表名,默認爲schema_version
flyway.target 遷移時使用的目標版本,默認爲latest version
flyway.url 遷移時使用的JDBC URL,若是沒有指定的話,將使用配置的主數據源
flyway.user 遷移數據庫的用戶名
flyway.validate-on-migrate 遷移時是否校驗,默認爲true.

liquibase

liquibase.change-logChange log 配置文件的路徑,默認值爲classpath:/db/changelog/db.changelog-master.yaml
liquibase.check-change-log-location 是否堅持change log的位置是否存在,默認爲true.
liquibase.contexts 逗號分隔的運行時context列表.
liquibase.default-schema 默認的schema.
liquibase.drop-first 是否首先drop schema,默認爲false
liquibase.enabled 是否開啓liquibase,默認爲true.
liquibase.password 目標數據庫密碼
liquibase.url 要遷移的JDBC URL,若是沒有指定的話,將使用配置的主數據源.
liquibase.user 目標數據用戶名

aop

spring.aop.auto 是否支持@EnableAspectJAutoProxy,默認爲: true
spring.aop.proxy-target-classtrue 爲使用CGLIB代理,false爲JDK代理,默認爲false

application

spring.application.admin.enabled 是否啓用admin特性,默認爲: false
spring.application.admin.jmx-name 指定admin MBean的名稱,默認爲: org.springframework.boot:type=Admin,name=SpringApplication

autoconfig

spring.autoconfigure.exclude 配置要排除的Auto-configuration classes.

batch

spring.batch.initializer.enabled 是否在必要時建立batch表,默認爲true
spring.batch.job.enabled 是否在啓動時開啓batch job,默認爲true
spring.batch.job.names 指定啓動時要執行的job的名稱,逗號分隔,默認全部job都會被執行
spring.batch.schema 指定要初始化的sql語句路徑,默認:classpath:org/springframework/batch/core/schema-@@platform@@.sql)
spring.batch.table-prefix 指定批量處理的表的前綴.

jmx

spring.jmx.default-domain 指定JMX domain name.
spring.jmx.enabled 是否暴露jmx,默認爲true
spring.jmx.server 指定MBeanServer bean name. 默認爲: mbeanServer)

mail

spring.mail.default-encoding 指定默認MimeMessage的編碼,默認爲: UTF-8
spring.mail.hos t指定SMTP server host.
spring.mail.jndi-name 指定mail的jndi名稱
spring.mail.password 指定SMTP server登錄密碼.
spring.mail.port 指定SMTP server port.
spring.mail.properties 指定JavaMail session屬性.
spring.mail.protocol 指定SMTP server使用的協議,默認爲: smtp
spring.mail.test-connection 指定是否在啓動時測試郵件服務器鏈接,默認爲false
spring.mail.username 指定SMTP server的用戶名.

sendgrid

spring.sendgrid.password 指定SendGrid password.
spring.sendgrid.proxy.host 指定SendGrid proxy host.
spring.sendgrid.proxy.port 指定SendGrid proxy port.
spring.sendgrid.username 指定SendGrid username.

social

spring.social.auto-connection-views 是否開啓鏈接狀態的視圖,默認爲false
spring.social.facebook.app-id 指定應用id
spring.social.facebook.app-secret 指定應用密碼
spring.social.linkedin.app-id 指定應用id
spring.social.linkedin.app-secret 指定應用密碼
spring.social.twitter.app-id 指定應用ID.
spring.social.twitter.app-secret 指定應用密碼

連接: https://www.jianshu.com/p/57b0a1bf7a30
相關文章
相關標籤/搜索