SpringBoot
文章平均质量分 81
yubin1285570923
这个作者很懒,什么都没留下…
展开
-
重试机制:Guava Retrying与spring-retry
一、重试的使用场景在很多业务场景中,为了排除系统中的各种不稳定因素,以及逻辑上的错误,并最大概率保证获得预期的结果,重试机制都是必不可少的。尤其是调用远程服务,在高并发场景下,很可能因为服务器响应延迟或者网络原因,造成我们得不到想要的结果,或者根本得不到响应。这个时候,一个优雅的重试调用机制,可以让我们更大概率保证得到预期的响应。...原创 2022-05-17 21:56:18 · 1286 阅读 · 0 评论 -
ElasticSearch:基础笔记以及与springboo整合
一、创建索引,PUT向 ES 服务器发 PUT 请求 :http://127.0.0.1:9200/shopping原创 2021-12-31 09:24:21 · 852 阅读 · 0 评论 -
forest:Java HTTP 客户端框架
参考官网文档齐全,各种高级特性等用法https://gitee.com/dromara/forest/blob/master/README.mdhttp://forest.dtflyx.com/一、简介什么是 Forest?#Forest 是一个开源的 Java HTTP 客户端框架,它能够将 HTTP 的所有请求信息(包括 URL、Header 以及 Body 等信息)绑定到您自定义的 Interface 方法上,能够通过调用本地接口方法的方式发送 HTTP 请求。为什么使用 Fo原创 2021-04-25 23:05:14 · 2224 阅读 · 0 评论 -
SpringBoot 国际化
编写国际化配置文件(自动配置中已经有默认的messages.properties:如果用这个名字就不用配置自己定义的文件)指定国际化文件的名字(包括路径):去除语言和国家的名字页面用#{}获取国家化内容 @ConfigurationProperties(prefix = "spring.messages")public class Messa...原创 2018-09-17 23:17:11 · 123 阅读 · 0 评论 -
SpringBoot:分布式Dubbo
在分布式系统中,国内常用zookeeper+dubbo组合,而Spring Boot推荐使用全栈的Spring,Spring Boot+Spring Cloud。分布式系统:单一应用架构 当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。此时,用于简化增删改查工作量的数据访问框架(ORM)是关键。垂直应用架构 当访问量逐渐增大,单一应用增加机器带来的加速...原创 2018-12-20 01:26:07 · 250 阅读 · 0 评论 -
SpringBoot:异步任务,定时任务,邮件任务
1、异步任务两个注解:@EnableAsync//开启基于注解的异步任务@Async//告诉Spring这是一个异步方法@EnableAsync//开启基于注解的异步任务@SpringBootApplicationpublic class Springboot04TaskApplication { public static void main(String...原创 2018-12-07 01:09:57 · 222 阅读 · 0 评论 -
SpringBoot:热部署devtools
导入依赖即可实现热部署 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional>原创 2018-12-26 22:31:37 · 101 阅读 · 0 评论 -
Spring Boot:与监控管理
通过引入spring-boot-starter-actuator模块,可以使用Spring Boot为我们提供的准生产环境下的应用监控和管理功能。我们可以通过HTTP,JMX,SSH协议来进行操作,自动得到审计、健康及指标信息等步骤:引入spring-boot-starter-actuator通过http方式访问监控端点可进行shutdown(POST 提交,此端点默认关闭)...原创 2018-12-26 22:55:51 · 1435 阅读 · 0 评论 -
SpingBoot:与安全SpringSecurity
Spring Security是针对Spring项目的安全框架,也是Spring Boot底层安全模块默认的技术选型。他可以实现强大的web安全控制。对于安全控制,我们仅需引入spring-boot-starter-security模块,进行少量的配置,即可实现强大的安全管理。 几个类:WebSecurityConfigurerAdapter:自定义Security策略Authen...原创 2018-12-17 23:20:35 · 239 阅读 · 0 评论 -
SpringBoot:整合SpringCloud
Spring Boot和Spring Cloud Spring CloudSpring Cloud是一个分布式的整体解决方案。Spring Cloud 为开发者提供了在分布式系统(配置管理,服务发现,熔断,路由,微代理,控制总线,一次性token,全局琐,leader选举,分布式session,集群状态)中快速构建的工具,使用Spring Cloud的开发者可以快速的启动服务或构建应用...原创 2018-12-26 01:16:41 · 231 阅读 · 0 评论 -
SpringCloud:Rest微服务构建
1 microservicecloud整体父工程Project:新建父工程microservicecloud,切记是Packageing是pom模式,主要是定义POM文件,将后续各个子模块公用的jar包等统一提出来,类似一个抽象父类 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://...原创 2019-01-09 01:03:10 · 189 阅读 · 0 评论 -
SpringCloud:Zuul路由网关
什么是Zuul:Zuul包含了对请求的路由和过滤两个最主要的功能:其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础而过滤器功能则负责对请求的处理过程进行干预,是实现请求校验、服务聚合等功能的基础.Zuul和Eureka进行整合,将Zuul自身注册为Eureka服务治理下的应用,同时从Eureka中获得其他微服务的消息,也即以后的访问微服务都是通过Zuul...原创 2019-02-25 22:47:33 · 150 阅读 · 0 评论 -
SpringCloud:Config 配置版在github
springcloud-config分为服务端和客户端 1 服务端github地址:https://github.com/kathrinacathy/microserviceclous-config.gitpom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.ap...原创 2019-02-26 23:37:11 · 700 阅读 · 0 评论 -
Rabbitmq: SpringBoot中整合rabbitMq
前几篇已经介绍rabbitmq的基础,生产者将消息发送给Exchange,依据是路由关键字 routingkey (如 : topic.message)。绑定Exchange与Queues队列的依据是bindingKey(如 :topic.#)。RabbitMq交换机和队列的绑定方式四种:header现在不推荐用,基本上就是剩下的三种1 Fanout Exchange–不处理路由...原创 2019-05-05 16:40:47 · 118 阅读 · 0 评论 -
SpringBoot:提取公共片段
三种引入公共片段的th属性:th:insert:将公共片段整个插入到声明引入的元素中th:replace:将声明引入的元素替换为公共片段th:include:将被引入的片段的内容包含进这个标签中1、抽取公共片段1、抽取公共片段<div th:fragment="copy">© 2011 The Good Thymes Virtual Groc...原创 2018-09-24 23:57:06 · 935 阅读 · 0 评论 -
SpringBoot:rabbitmq使用,@EnableRabbit + @RabbitListener 作用, AmqpAdmin:创建和删除 Queue,Exchange,Binding
下载安装:在自己的虚拟机上面用命令下载docker pull registry.docker-cn.com/library/rabbitmq:3.6-management management表示是带管理页面的启动:docker run -d -p 5672:5672 -p 15672:15672 --name myrabbitmq 3951818b0...原创 2018-12-03 23:58:52 · 10606 阅读 · 0 评论 -
SpringBoot:与检索
1、检索:我们的应用经常需要添加检索功能,开源的 ElasticSearch 是目前全文搜索引擎的首选。他可以快速的存储、搜索和分析海量数据。Spring Boot通过整合Spring Data ElasticSearch为我们提供了非常便捷的检索功能支持; Elasticsearch是一个分布式搜索服务,提供Restful API,底层基于Lucene,采用多shard(分片)的...原创 2018-12-06 00:41:10 · 772 阅读 · 0 评论 -
docker教程步骤,以及docker启动mysql步骤演练
第一步:启动 Dockersystemctl start docker第二步:查询 mysqldocker search mysql第三步:下载下来官方的镜像Starts最高的那个docker pull registry.docker-cn.com/library/mysql第四步:查看镜像docker images第五步:重命名docker tag regi...原创 2018-10-23 23:38:41 · 368 阅读 · 0 评论 -
SpringBoot 入门基础
一、springboot入门 –jdk1.8:Spring Boot 推荐jdk1.7及以上;java version "1.8.0_112" –maven3.x:maven 3.3以上版本;Apache Maven 3.3.9 –IntelliJIDEA2017:IntelliJ IDEA 2017.2.2 x64、STS –SpringBoot 1.5.9.R...原创 2018-10-26 00:43:42 · 127 阅读 · 0 评论 -
SpringBoot与数据访问 JDBC
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring‐boot‐starter‐jdbc</artifactId></dependency><dependency><groupId>原创 2018-10-26 00:11:53 · 157 阅读 · 0 评论 -
安装linux虚拟机,在虚拟机上安装docker及镜像操作和容器操作
1、安装Docker 1)、安装linux虚拟机 1)、VMWare、VirtualBox(安装); 2)、导入虚拟机文件centos7-atguigu.ova; 3)、双击启动linux虚拟机;使用 root/ 123456登陆 4)、使用客户端连接linux服务器进行命令操作; 5)、设置虚拟机网络; 桥接网络=选好网卡==接入网...原创 2018-10-21 00:16:42 · 5828 阅读 · 1 评论 -
SpringBoot:错误处理机制
1.效果1)、浏览器,返回一个默认的错误页面 2)、如果是其他客户端,默认响应一个json数据 2、如果定制错误响应:1)、如何定制错误的页面; 1)、有模板引擎的情况下;error/状态码; 【将错误页面命名为 错误状态码.html 放在模板引擎文件夹里面的error文件夹下】,发生此状态码的错误就会来到 对应的页面;我们可以使用4xx和5xx作为错...原创 2018-09-24 23:54:53 · 206 阅读 · 0 评论 -
SpringBoot:模板引擎thymeleaf
1、引入thymeleaf;导入jar包<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring‐boot‐starter‐thymeleaf</artifactId></dependency>2.1.6切...原创 2018-09-13 00:03:41 · 275 阅读 · 0 评论 -
SpringBoot:web开发,springmvc自动给配置扩展与定制xxxConfigurer,xxxCustomizer
1、使用SpringBoot;1)、创建SpringBoot应用,选中我们需要的模块;(使用idea可以联网直接创建,sts也可以,如果手动需要自己导入相应的jar包)2)、SpringBoot已经默认将这些场景配置好了,只需要在配置文件中指定少量配置就可以运行起来3)、自己编写业务代码;2、SpringBoot对静态资源的映射规则; 1)、所有 /webjars/*...原创 2018-09-12 23:44:43 · 395 阅读 · 0 评论 -
SpringBoot 日志框架
1、SpringBoot:底层是Spring框架,Spring框架默认是用JCL;‘SpringBoot选用 SLF4j和logback;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class HelloWorld { public static void main(String[] args)...原创 2018-09-12 23:26:11 · 156 阅读 · 0 评论 -
springBoot 自动配置原理
1)、SpringBoot启动的时候加载主配置类用的 注解是@SpringBootApplication,开启了自动配置功能 @EnableAutoConfiguration 这个注解是含有@EnableAutoConfiguration的,这个注解上面有@Import(AutoConfigurationImportSelector.class)导入了这个类的组件,这个类中方法 ...原创 2018-09-12 00:57:29 · 133 阅读 · 0 评论 -
Spring Boot 配置文件加载
1、 配置文件加载的优先级 –file:./config/ 在应用程序的config目录中,应用名就是如:credit-insure-after –file:./ –classpath:/config/ 类路径的config目录中resources –classpath:/ 优先级由高到低,互补配置,高优先级的配置会覆盖低优先级的配置 ...原创 2018-09-12 00:43:14 · 395 阅读 · 1 评论 -
CentOS7使用firewalld打开关闭防火墙与端口 ,操作防火墙,开启一个端口
CentOS7使用firewalld打开关闭防火墙与端口1、firewalld的基本使用启动: systemctl start firewalld关闭: systemctl stop firewalld查看状态: systemctl status firewalld开机禁用 : systemctl disable firewalld开机启用 :systemct...原创 2018-10-23 23:53:52 · 383 阅读 · 0 评论 -
SpringBoot 整合Druid数据源
导入druid数据源@Configurationpublic class DruidConfig { @ConfigurationProperties(prefix = "spring.datasource") @Bean public DataSource druid(){ return new DruidDataSource(); }//配置Druid的...原创 2018-10-29 22:25:46 · 228 阅读 · 0 评论 -
SpringBoot 整合MyBatis
整合MyBatis<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis‐spring‐boot‐starter</artifactId><version>1.3.1</version></depe...原创 2018-10-30 00:20:15 · 116 阅读 · 0 评论 -
SpringBoot:与消息J:MS、AMQP、RabbitMQ
1、大多应用中,可通过消息服务中间件来提升系统异步通信、扩展解耦能力2、消息服务中两个重要概念: 消息代理(message broker)和目的地(destination)当消息发送者发送消息以后,将由消息代理接管,消息代理保证消息传递到指定目的地。3、消息队列主要有两种形式的目的地 队列(queue): 队列(queue):点对点消息通信(po...原创 2018-11-29 00:37:13 · 173 阅读 · 0 评论 -
SpringBoot:整合Redis
默认使用的是ConcurrentMapCacheManager==ConcurrentMapCache;将数据保存在 ConcurrentMap<Object, Object>中 * 开发中使用缓存中间件;redis、memcached、ehcache; * 三、整合redis作为缓存 * Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、...原创 2018-11-23 23:51:49 · 129 阅读 · 0 评论 -
docker:镜像加速
http://www.docker-cn.comDocker 中国官方镜像加速通过 Docker 官方镜像加速,中国区用户能够快速访问最流行的 Docker 镜像。该镜像托管于中国大陆,本地用户现在将会享受到更快的下载速度和更强的稳定性,从而能够更敏捷地开发和交付 Docker 化应用。Docker 中国官方镜像加速可通过 registry.docker-cn.com 访问...原创 2018-11-22 00:39:42 · 147 阅读 · 0 评论 -
SpringBoot:@RequestMapping,@RequestBody,@ResponseBOd区别
@PathVariable和@RequestBody可以一起使用1.@RequestMapping@RequestMapping 是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径;用于方法上,表示在类的父路径下追加方法上注解中的地址将会访问到该方法,此处需注意@RequestMapping用在类上可以没用,但是用在方法上必须有...原创 2018-11-22 00:11:50 · 1897 阅读 · 0 评论 -
SpringBoot:与缓存--JSR-107、Spring缓存抽象、整合Redis
一、JSR107(不常用,好像比较麻烦)Java Caching定义了5个核心接口,分别是CachingProvider, CacheManager, Cache, Entry 和 Expiry。 CachingProvider定义了创建、配置、获取、管理和控制多个CacheManager。一个应用可以在运行期访问多个CachingProvider。 CacheManager定义了创建、配置、...原创 2018-11-21 00:22:49 · 556 阅读 · 0 评论 -
SpringBoot :自定义starter
starter:1、这个场景需要使用到的依赖是什么?2、如何编写自动配置@Configuration //指定这个类是一个配置类@ConditionalOnXXX //在指定条件成立的情况下自动配置类生效@AutoConfigureAfter //指定自动配置类的顺序@Bean //给容器中添加组件@ConfigurationPropertie结合相关xxxProperties类来...原创 2018-11-08 01:18:56 · 122 阅读 · 0 评论 -
SpringBoot:启动配置原理
几个重要的事件回调机制配置在META-INF/spring.factoriesApplicationContextInitializerSpringApplicationRunListener只需要放在ioc容器中ApplicationRunnerCommandLineRunner 启动流程:1、创建SpringApplication对象initialize(sou...原创 2018-11-07 00:17:36 · 141 阅读 · 0 评论 -
SpringBoot:整合SpringData JPA
JPA:ORM(Object Relational Mapping);1)、编写一个实体类(bean)和数据表进行映射,并且配置好映射关系;//使用JPA注解配置映射关系@Entity //告诉JPA这是一个实体类(和数据表映射的类)@Table(name = "tbl_user") //@Table来指定和哪个数据表对应;如果省略默认表名就是user;public class U...原创 2018-11-07 00:09:00 · 132 阅读 · 0 评论 -
SpringBoot1.5X和SpringBoot2.0X配置执行schema.sql脚本的方法,配置文件写法上有所不同
一、在springboot1.5x的时候要想让应用程序在启动的时候就执行建表的SQL,需要进行如下配置:spring: datasource:# 数据源基本配置 username: root password: 123456 driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://loca...原创 2018-11-06 23:55:47 · 447 阅读 · 0 评论 -
SpringBoot中处理的转发与重定向
转发:一次请求,服务器内部调用另外的组件处理,request和response可以共用,有限制性,只能转发到本应用中的某些资源,页面或者controller请求课可以访问WEB-INF目录下面的页面重定向:两次请求,地址会改变,request和response不能共用,不能直接访问WEB-INF下面的资源,根据所要跳转的资源,可以分为跳转到页面或者跳转到其他controll...原创 2018-11-06 23:15:45 · 63494 阅读 · 0 评论