SpringBoot配置

Springcloud 中 SpringBoot 配置 ,史上

2019-10-20  本文已影响0人  尼恩_疯狂创客圈

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 配置,大家可以藏好,一定有用的到时候

本文说明

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

本文目录如下:

在这里插入图片描述

SpringBoot 基础配置

application 配置

aop 配置

autoconfig 配置

内嵌服务器配置

tomcat 配置

undertow 配置

server 通用配置

cookie、session配置

ssl配置

datasource 数据源配置

数据源基础配置

JPA 配置

h2 设置

spring mvc 配置

MVC基础配置

messages 配置

resource 配置

multipart 文件上传配置

http 配置

json 配置

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.

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

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 死磕系列


上一篇 下一篇

猜你喜欢

热点阅读