Springcloud 中 SpringBoot 配置全集 (收藏版)


Springcloud 中 SpringBoot 配置全集 (收藏版)

瘋狂創客圈 Java 高並發【 億級流量聊天室實戰】實戰系列 【博客園總入口


前言

瘋狂創客圈(筆者尼恩創建的高並發研習社群)Springcloud 高並發系列文章,將為大家介紹三個版本的 高並發秒殺:

一、版本1 :springcloud + zookeeper 秒殺

二、版本2 :springcloud + redis 分布式鎖秒殺

三、版本3 :springcloud + Nginx + Lua 高性能版本秒殺

以及有關Springcloud 幾篇核心、重要的文章

一、Springcloud 配置, 史上最全 一文全懂

二、Springcloud 中 SpringBoot 配置全集 , 收藏版

三、Feign Ribbon Hystrix 三者關系 , 史上最全 深度解析

四、SpringCloud gateway 詳解 , 史上最全

本文,是《Springcloud 之 SpringBoot 配置全集| 收藏版》篇,為大家解讀如果做到Springcloud 中大致所涉及的spring boot 配置,大家可以藏好,一定有用的到時候

本文目錄

在這里插入圖片描述

SpringBoot 基礎配置

application 配置

  • spring.application.admin.enabled
    是否啟用admin特性,默認為: false

  • spring.application.admin.jmx-name
    指定admin MBean的名稱,默認為: org.springframework.boot:type=Admin,name=SpringApplication

aop 配置

  • spring.aop.auto
    是否支持@EnableAspectJAutoProxy,默認為: true

  • spring.aop.proxy-target-class
    true為使用CGLIB代理,false為JDK代理,默認為false

autoconfig 配置

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

  • jmx 配置
    spring.jmx.default-domain
    指定JMX domain name.

  • spring.jmx.enabled
    是否暴露jmx,默認為true

  • spring.jmx.server
    指定MBeanServer bean name. 默認為: mbeanServer)

內嵌服務器配置

tomcat 配置

  • server.tomcat.basedir
    設定Tomcat的base 目錄,如果沒有指定則使用臨時目錄.
  • 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.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
    設定工作線程數

server 通用配置

  • server.port
    設定http監聽端口。此配置項最為常見
  • server.servlet-path
    設定dispatcher servlet的監聽路徑,默認為: /
  • 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

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的類型.

spring mvc 配置

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

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

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.

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

h2 設置

  • spring.h2.console.enabled
    是否開啟控制台,默認為false
  • spring.h2.console.path
    指定控制台路徑,默認為: /h2-console

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
指定緩存類型

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 NOSQL 配置

elasticsearch 配置

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

mongodb 配置

spring.mongodb.embedded.features
指定要開啟的特性,逗號分隔.

spring.mongodb.embedded.version
指定要使用的版本,默認: 2.6.10

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的用戶名.

RESTful配置

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

solr配置

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.

spring security 配置

spring security是springboot支持的權限控制系統。

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
默認用戶的授權角色.

消息中間件的配置

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的用戶.

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.

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

最后,介紹一下瘋狂創客圈:瘋狂創客圈,一個Java 高並發研習社群博客園 總入口

瘋狂創客圈,傾力推出:面試必備 + 面試必備 + 面試必備 的基礎原理+實戰 書籍 《Netty Zookeeper Redis 高並發實戰

img


瘋狂創客圈 Java 死磕系列

  • Java (Netty) 聊天程序【 億級流量】實戰 開源項目實戰

  • Netty 源碼、原理、JAVA NIO 原理

  • Java 面試題 一網打盡

  • 瘋狂創客圈 【 博客園 總入口 】



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM