Spring Boot

配置中心新贵:Nacos,阿里开源,真香!!

走远了吗. 提交于 2020-12-18 13:11:55
作者:废物大师兄 来源:www.cnblogs.com/cjsblog/p/14007311.html 本文探讨Nacos作为配置中心,如何实现不同环境(开发、测试、灰度、正式)的配置管理问题。 就像Maven用groupId、artifactId、version三者来定位jar包在仓库中的位置一样,Nacos也提供了 Namespace (命名空间) 、Data ID (配置集ID)、 Group (组) 来确定一个配置文件(或者叫配置集)。 由此,实现多环境配置的方案也有三种: 1、用命名空间(namespace)来区分不同的环境,一个命名空间对应一个环境; 2、用配置组(group)来区分不同的环境,命名空间用默认的public即可,一个组对应一种环境; 3、用配置集ID(Data ID)名称来区分不同的环境,命名空间和组用默认的即可,通过文件命名来区分; 接下来,逐个来看 http://{host}:{port}/nacos http://{host}:{port}/nacos/index.html 默认用户名密码都是nacos 为了方便演示,这里建了一个名为example的Spring Boot项目 pom.xml 1 <?xml version="1.0" encoding="UTF-8"?> 2 <project xmlns="http://maven.apache

SpringCloud 教程 | 第一篇: 服务的注册与发现Eureka(Finchley版本)

本秂侑毒 提交于 2020-12-18 10:45:29
一、spring cloud简介 鉴于《史上最简单的Spring Cloud教程》很受读者欢迎,再次我特意升级了一下版本,目前支持的版本为Spring Boot版本2.0.3.RELEASE,Spring Cloud版本为Finchley.RELEASE。 Finchley版本的官方文档如下: http://cloud.spring.io/spring-cloud-static/Finchley.RELEASE/single/spring-cloud.html spring cloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等等。它运行环境简单,可以在开发人员的电脑上跑。另外说明spring cloud是基于springboot的,所以需要开发中对springboot有一定的了解,如果不了解的话可以看这篇文章: 2小时学会springboot 。另外对于“微服务架构” 不了解的话,可以通过搜索引擎搜索“微服务架构”了解下。 二、创建服务注册中心 在这里,我还是采用Eureka作为服务注册与发现的组件,至于Consul 之后会出文章详细介绍。 2.1 首先创建一个maven主工程。 首先创建一个主Maven工程,在其pom文件引入依赖,spring Boot版本为2.0.3.RELEASE

SpringCloud (Finchley版本)教程(一): 服务的注册与发现Eureka

只谈情不闲聊 提交于 2020-12-18 09:42:14
一、spring cloud简介 目前spring cloud的版本更新到了Finchley,支持的springbott2.0以上版本。具体版本可以参照下面的表格。 Cloud代号 Boot版本(train) Boot版本(tested) lifecycle Angle 1.2.x incompatible with 1.3 EOL in July 2017 Brixton 1.3.x 1.4.x 2017-07卒 Camden 1.4.x 1.5.x - Dalston 1.5.x not expected 2.x - Edgware 1.5.x not expected 2.x - Finchley 2.x not expected 1.5.x - Finchley版本的官方文档链接: http://cloud.spring.io/spring-cloud-static/Finchley.RELEASE/single/spring-cloud.html 二、创建服务注册中心 在这里,我还是采用Eureka作为服务注册与发现的组件,至于Consul 之后会出文章详细介绍。 2.1 首先创建一个maven主工程。 首先创建一个主Maven工程,在其pom文件引入依赖,spring Boot版本为2.0.3.RELEASE,Spring Cloud版本为Finchley

一个比Spring Boot 还牛逼的Java框架,你见过吗?

我与影子孤独终老i 提交于 2020-12-18 08:50:49
  最近51学工坊的小编在偶然间看到一个据说是可以比 Spring Boot 快的框架,有这么神奇吗?到底是何方神圣呢?下面小编带您来了解一下!   这个框架名叫:light-4j。   官网简介:A fast, lightweight and more productive microservices framework   很简单,翻译过来就是:一个快速、轻量级和更高效的微服务框架。   为什么叫light-4j?它和其他的Java框架相比有什么优势呢?   1、降低成本   它比同类型的主流微服务框架平台要快 44 倍,并且只需要用其 1/5 内存,内存空间大大降低。   下面是51学工坊的小编整理的一份测试报告,速看:      从以上的表格中不难看出,性能表现非常靠前,吊打 Spring 等各种框架!   2、丰富的特性   带有启动/关闭钩子和各种中间件的插件架构,分布式OAuth2 JWT安全验证作为框架的一部分,基于OpenAPI规范进行请求和响应验证,收集测量指标并支持服务和客户端在控制台显示,全局运行时异常处理,如API异常及其他受检查异常。   请求体支持各种类型的content-type,配置标准化响应码及响应消息,支持外部配置化Docker环境所有模块。客户端侧发现和负载平衡,消除代理层   Java 日益宠大的同时,其内部依赖集成了太多东西

springboot整合redis

感情迁移 提交于 2020-12-18 06:33:21
XML方式(推荐) <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="lettuceConnectionFactory" class="org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory" p:host-name="@redis.ip@" p:port="@redis.port@"/> <bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate" p

SpringBoot 国际化配置,SpringBoot Locale 国际化

青春壹個敷衍的年華 提交于 2020-12-18 06:32:47
SpringBoot 国际化配置,SpringBoot Locale 国际化 ================================ ©Copyright 蕃薯耀 2018年3月27日 http://www.cnblogs.com/fanshuyao/ 附件下载(源码下载)见: http://fanshuyao.iteye.com/blog/2414640 一、效果所下: 二、SpringBoot 国际化配置 1、创建国际化配置文件(3个): mess.properties Java代码 mess.user.name=用户名 mess.user.password=密码 mess.user.btn=登录 mess_zh_CN.properties Java代码 mess.user.name=用户名 mess.user.password=密码 mess.user.btn=登录 mess_en_US.properties Java代码 mess.user.name=UserName mess.user.password=Password mess.user.btn=Sign In SpringBoot默认国际化文件为:classpath:message.properties,如果放在其它文件夹中,则需要在application.properties配置属性spring

springboot发送邮件

穿精又带淫゛_ 提交于 2020-12-18 03:29:38
源码: https://gitee.com/smfx1314/sendMail Spring Boot中发送邮件步骤 Spring Boot中发送邮件具体的使用步骤如下 1、添加Starter模块依赖 2、添加Spring Boot配置(QQ/网易系/Gmail) 3、调用JavaMailSender接口发送邮件 开始编码 创建springboot项目,添加依赖 项目结构 1、添加依赖 在 Maven pom.xml 配置文件中加入 spring-boot-starter-mail 依赖。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> 2、添加配置参数 然后在 application.yml 文件中加入以下配置。 application.yml 配置 网易系(126/163/yeah)邮箱配置 ## QQ邮箱配置 spring: mail: host: smtp.qq.com #发送邮件服务器 username: 1016767658@qq.com #发送邮件的邮箱地址 password: ivhkrc*****kbdcf #客户端授权码,不是邮箱密码,这个在qq邮箱设置里面自动生成的

SpringBoot发送邮件

北城余情 提交于 2020-12-18 03:29:19
在小明经历的多个项目开发中,总会遇到 消息通知 的场景,比如某个广告主提交一个表单,我们要通知提醒运营人员及时查看。 消息通知的形式也有很多,比如:短信、邮件、app推送等,本文主要给大家描述一下 邮件 通知的形式,因为邮件相比较其他通知渠道更方便实用(免费),除了简单文本邮件(已经满足大多数情形),本文还会重点说一下集成 Thymeleaf 模版引擎,使用 HTML 的形式发送邮件,尽管 HTML 内容不是标准化的消息格式,但是许多邮件客户端至少支持标记语言的子集,这种方式相比较纯文本展现形式更加友好。 准备 一个普通再也普通不了的SpringBoot项目 简单文本发送 还是那句老话,在SpringBoot看来一切都是这么便捷。它已经集成邮件发送所必需的库模块,我们只需将以下依赖添加到 pom.xml 即可。 <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-mail --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> 邮箱服务结构

Spring源码系列 — BeanDefinition扩展点

有些话、适合烂在心里 提交于 2020-12-18 03:25:56
前言 前文介绍了Spring Bean的生命周期,也算是XML IOC系列的完结。但是Spring的博大精深,还有很多盲点需要摸索。整合前面的系列文章,从Resource到BeanDefinition,再到容器扩展点,最后到Bean创键,这个过程中无处不存在Spring预留的扩展口。 本篇文章介绍Spring的另一种扩展点:BeanDefinition扩展点,该扩展点是为处理BeanDefinition而设计。本文主要从以下几点分析: BeanDefinition扩展点的几种方式 BeanDefinition扩展点实战 BeanDefinition扩展点的原理 BeanDefinition扩展点的几种方式 Spring中针对向上下文中添加BeanDefinition、修改上下文中的BeanDefinition可谓是提供了丰富的扩展点。既有针对XML配置的,又有针对注解配置的Bean,甚至还有自定义XML标签的。这里总结了,共有以下几种方式: BeanDefinitionRegistryPostProcessor方式 BeanFactoryPostProcessor方式 ImportBeanDefinitionRegistrar方式 BeanDefinitionParser方式 BeanDefinitionRegistryPostProcessor方式 从命名上也可以看出一些端倪

SpringBoot 整合Redis

ぐ巨炮叔叔 提交于 2020-12-18 03:24:07
1. 官方介绍 官方地址 集群文档 2. 整合过程 1. 添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> 2. 配置相关配置文件 # ========== redis基础配置 ============ spring.redis.database=0 spring.redis.host=127.0.0.1 spring.redis.password=password spring.redis.port=6379 ## 连接超时时间 丹喂 ms(毫秒) spring.redis.timeout=3000 # ========== redis线程池设置 ============ # 连接池中的最大空闲连接,默认值是8 spring.redis.pool.max-idle=200 # 连接池中最小的空闲连接,默认值是0 spring.redis.pool.min-idle=200 # 如果赋值为-1,则表示不限制;pool已经分配了maxActive个jedis实例,则此时pool的状态为exhausted(耗尽) spring.redis.pool.max-active