
JAVA SpringBoot/SpringCloud框架
文章平均质量分 94
Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。
.NET跨平台
比较认真。编程就是算法和数据结构,算法和数据结构是编程的灵魂。
展开
-
Spring Cloud 微服务架构图
上面图中技术名词理解:为服务之间调用提供链路追踪。通过可以很清楚的了解到一个服务请求经过了哪些服务,每个服务处理花费了多长。从而让我们可以很方便的理清各微服务间的调用关系。在微服务架构中,根据业务来拆分成一个个的服务,服务与服务之间可以相互调用(RPC),在Spring Cloud可以用RestTemplate+Ribbon和Feign来调用。为了保证其高可用,单个服务通常会集群部署。由于网络原因或者自身的原因,服务并不能保证100%可用,如果单个服务出现问题,调用这个服务就会出现线程阻塞,此...转载 2022-06-03 23:17:26 · 2254 阅读 · 0 评论 -
Spring Boot项目中会使用到的小技巧
使用Spring官网的Spring Initializr生成一个SpringBoot项目使用Spring Initializr配置生成初始化项目访问项目网址进入Spring-boot项目网址 https://spring.io/projects/spring-boot 。在页面最下方找到 Quick Start 连接,点击进入。在这里你会看到关于项目的初始化配置。配置项目的初始化参数选择项目类型是Maven项目或是Gradle项目。选择项目语言是JAVA或是Kotlin或是Groovy。选择S转载 2020-12-10 11:11:02 · 328 阅读 · 1 评论 -
SpringBoot配置属性之MQ(五)
activemqspring.activemq.broker-url指定ActiveMQ broker的URL,默认自动生成.spring.activemq.in-memory是否是内存模式,默认为true.spring.activemq.password指定broker的密码.spring.activemq.pooled是否创建PooledConnectionFactory,而非Conne转载 2017-10-23 15:05:36 · 972 阅读 · 1 评论 -
SpringBoot配置属性之Security(六)
序spring security是springboot支持的权限控制系统。security.basic.authorize-mode要使用权限控制模式.security.basic.enabled是否开启基本的鉴权,默认为truesecurity.basic.path需要鉴权的path,多个的话以逗号分隔,默认为[/**]security.basic.realmHTTP basic real转载 2017-10-23 15:11:58 · 1309 阅读 · 1 评论 -
SpringBoot配置属性之Migration(七)
序SpringBoot支持了两种数据库迁移工具,一个是flyway,一个是liquibase。其本身也支持sql script,在初始化数据源之后执行指定的脚本。flywayflyway.baseline-description对执行迁移时基准版本的描述.flyway.baseline-on-migrate当迁移时发现目标schema非空,而且带有没有元数据的表时,是否自动执行基准迁移,默认fa转载 2017-10-23 15:13:06 · 578 阅读 · 1 评论 -
SpringBoot配置属性之其他(八)
aopspring.aop.auto是否支持@EnableAspectJAutoProxy,默认为: truespring.aop.proxy-target-classtrue为使用CGLIB代理,false为JDK代理,默认为falseapplicationspring.application.admin.enabled是否启用admin特性,默认为: falsespring.applic转载 2017-10-23 15:23:19 · 2991 阅读 · 1 评论 -
Springboot 笔记
目录helloworld(1.5.6)数据访问 hibernate(1.5.6, mysql)mybatis(1.5.6)thymeleaf-spring-security(1.5.6)rabbitmq(1.5.6)hello world引入依赖parent> groupId>org.springframework.bootgroupId> ar转载 2017-10-22 20:26:17 · 787 阅读 · 1 评论 -
《Spring Boot in Action》【7. Actuator】
7. Actuator启用Actuator,你只要在build.gradle中加入:compile 'org.springframework.boot:spring-boot-starter-actuator'Spring Boot Actuator提供了一系列RESTful接口: HTTP方法 路径 描述 GET /beans Spring应用上下文中所有bean以及它们之间转载 2017-10-14 21:56:43 · 1137 阅读 · 1 评论 -
《Spring Boot in Action》【8. 部署】
8. 部署8.1 部署到应用服务器首先,我们构建一个war包:apply plugin: 'war'war { baseName = 'readinglist' version = '0.0.1-SNAPSHOT'}这样就能打成war包了,但目前这个war包没什么用,因为既没有包含web.xml也没有一个servlet initializer来enable Spring MVC的D转载 2017-10-14 21:58:07 · 772 阅读 · 1 评论 -
《Spring Boot in Action》【A. 开发者工具】
A. 开发者工具Spring Boot 1.3引入了一系列新的开发者工具,在开发阶段,可以利用它们完成:自动重启——当classpath下的文件改变的时候可以在运行中自动重启LiveReload——改变资源会触发浏览器自动刷新远程开发——远程部署支持自动重启和LiveReload默认开发属性——提供某些配置属性的明智的开发时默认值要启用开发者工具,只需要引入starter就好了:compi转载 2017-10-14 21:59:22 · 665 阅读 · 1 评论 -
SpringBoot配置属性之NOSQL(四)
cachespring.cache.cache-names指定要创建的缓存的名称,逗号分隔(若该缓存实现支持的话)spring.cache.ehcache.config指定初始化EhCache时使用的配置文件的位置指定.spring.cache.guava.spec指定创建缓存要使用的spec,具体详见CacheBuilderSpec.spring.cache.hazelcast.config转载 2017-10-23 14:57:15 · 433 阅读 · 1 评论 -
SpringBoot配置属性之DataSource(三)
datasourcespring.dao.exceptiontranslation.enabled是否开启PersistenceExceptionTranslationPostProcessor,默认为truespring.datasource.abandon-when-percentage-full设定超时被废弃的连接占到多少比例时要被关闭或上报spring.datasource.allow-转载 2017-10-23 14:51:27 · 6415 阅读 · 1 评论 -
SpringBoot启动流程解析
写在前面:由于该系统是底层系统,以微服务形式对外暴露dubbo服务,所以本流程中SpringBoot不基于jetty或者tomcat等容器启动方式发布服务,而是以执行程序方式启动来发布(参考下图keepRunning方法)。本文以调试一个实际的SpringBoot启动程序为例,参考流程中主要类类图,来分析其启动逻辑和自动化配置原理。 总览:上图为SpringBoot启动结构图,我们发现启动流程主要转载 2017-09-04 14:58:57 · 1085 阅读 · 0 评论 -
SpringBoot注解大全
一、注解(annotations)列表@SpringBootApplication:包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让spring Boot扫描到Configuration类并把它加入到程序上下文。@Configuration 等同于spring的XML配置文件;使用Java代码可转载 2017-10-10 21:49:37 · 462 阅读 · 1 评论 -
《Spring Boot in Action》【1. 起步】
1 起步Spring 1.0,改变了企业级Java应用开发。依赖注入和声明式事务。Spring 2.0,自定义XML命名空间。Spring 2.5,面向注解的依赖注入模型,@Component和@Autowired,以及Spring MVC编程模型。无需显式声明组件,无需继承一些基础控制器类。Spring 3.0,全新的基于Java的配置方式,从Spring 3.1开始的@Enable打头的转载 2017-10-12 17:16:56 · 2085 阅读 · 1 评论 -
《Spring Boot in Action》【2. 开发第一个应用】
2 开发第一个应用2.1 项目骨架从本章开始,我们要开发一个简单的reading-list应用,用来维护一个reading-list,包括录入书的信息,查看阅读列表,删除书等操作。技术上,Spring MVC处理Web请求,Thymeleaf作为模板引擎编写页面,Spring Data JPA操作数据库,使用内置H2数据库,用Gradle管理项目。使用Spring Initializer生成生成的项转载 2017-10-13 17:02:47 · 779 阅读 · 1 评论 -
《Spring Boot in Action》【3. 自定义配置】
3 自定义配置3.1 覆盖Spring Boot的自动配置我们将向reading-list项目中加入Spring Security,很简单,加入security starter即可:compile("org.springframework.boot:spring-boot-starter-security")然后你再运行项目,访问浏览器,就会有一个HTTP Basic认证的对话框,用户名填“user转载 2017-10-13 17:08:12 · 1142 阅读 · 2 评论 -
《Spring Boot in Action》【4. 测试】
4. 测试4.1 集成测试@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(classes = AddressBookConfiguration.class)public class AddressServiceTests { @Autowired private AddressService addressServi转载 2017-10-13 17:10:04 · 935 阅读 · 1 评论 -
《Spring Boot in Action》【5. Groovy】
5. GroovySpring Boot CLI可以很方便地使用Groovy编写Spring应用程序。5.2 创建CLI项目首先创建一个项目目录:mkdir readinglist进去创建静态资源目录和Thymeleaf模板目录:$ cd readinglist$ mkdir static$ mkdir templates分别将之前的style.css和转载 2017-10-13 17:11:53 · 1698 阅读 · 1 评论 -
《Spring Boot in Action》【6. Grails】
6. Grails6.1 使用GORM持久化数据GORM(Grails object-relational mapping)Book实体:package readinglistimport grails.persistence.*@Entityclass Book { Reader reader String isbn String title String author St转载 2017-10-13 17:12:26 · 1056 阅读 · 1 评论 -
SpringBoot配置属性之MVC(一)
序主要是mvc相关的一些配置mvcspring.mvc.async.request-timeout设定async请求的超时时间,以毫秒为单位,如果没有设置的话,以具体实现的超时时间为准,比如tomcat的servlet3的话是10秒.spring.mvc.date-format设定日期的格式,比如dd/MM/yyyy.spring.mvc.favicon.enabled转载 2017-10-22 20:55:34 · 945 阅读 · 1 评论 -
SpringBoot配置属性之Server(二)
server配置server.address指定server绑定的地址server.compression.enabled是否开启压缩,默认为false.server.compression.excluded-user-agents指定不压缩的user-agent,多个以逗号分隔,默认值为:text/html,text/xml,text/plain,text/cssserve转载 2017-10-22 20:56:43 · 9132 阅读 · 2 评论 -
SpringBoot执行流程
基本概述SpringBoot将spring应用的启动流程进行了一个“模板化”的操作,所以我们才能通过SpringApplication.run(XXX.class, args)的方式来进行一站式的启动。其内部逻辑也是个较复杂的过程,下文将对执行流程进行阐述。本流程参考的SpringBoot版本为1.4.3.RELEASE。SpringBoot应用启动步骤简要示意图 通过上面这个简要示意图,可以看出转载 2017-09-04 09:58:59 · 1877 阅读 · 0 评论