1. 程式人生 > >SpringCloud常用配置總結(轉)

SpringCloud常用配置總結(轉)

原作者未知,但很佩服這種收集的能力。

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.timeout

session的超時時間

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

設定工作執行緒數

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

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

spring.view.prefix

設定mvc檢視的字首.

spring.view.suffix

設定mvc檢視的字尾.

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.enabled

是否開啟檔案上傳支援,預設為true

multipart.file-size-threshold

設定檔案寫入磁碟的閾值,單位為MB或KB,預設為0

multipart.location

指定檔案上傳路徑.

multipart.max-file-size

指定檔案大小最大值,預設1MB

multipart.max-request-size

指定每次請求的最大值,預設為10MB

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

指定使用模板的檢視列表.

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

設定需要解析的檢視名稱.

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

指定使用模板的檢視名,多個以逗號分隔.

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.

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.scope

client的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-uri

token解碼的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

預設使用者的授權角色

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.datasou