mvc spring.mvc.async.request-timeout=設定async請求的超時時間,以毫秒為單位,如果沒有設置的話,以具體實現的超時時間為準,比如tomcat的servlet3的話是10秒. spring.mvc.date-format=設定日期的格式,比如dd/MM/yyyy. ...
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的監聽路徑,預設為: /
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,在初始化數據源之後執行指定的腳本。
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)
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 指定應用密碼