<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[tripleDemo的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/tripleDemo</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; tripleDemo]]></copyright><item><title><![CDATA[JSR303分组校验和自定义校验注解]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/105649296</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/105649296</guid><author>tripleDemo</author><pubDate>Tue, 21 Apr 2020 05:40:45 +0800</pubDate><description><![CDATA[1、给Bean属性添加校验注解：javax.validation.constraints，并定义自己的message提示
2、在Controller方法参数贴上@Valid注解开启校验功能
3、BindingResult可以获取到校验的结果，编写异常处理类使用@RestControllerAdvice、@ExceptionHandler标注方法处理校验异常
import com.atguigu.c...]]></description><category></category></item><item><title><![CDATA[Spring Cloud Gateway实战示例笔记]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/105502879</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/105502879</guid><author>tripleDemo</author><pubDate>Tue, 14 Apr 2020 08:20:46 +0800</pubDate><description><![CDATA[简介
网关作为流量的入口，常用功能包括路由转发、权限校验、限流控制等。而springcloud gateway作为SpringCloud官方推出的第二代网关框架，取代了Zuul网关。
Gateway工作原理

实战示例1：网关统一配置跨域
可前往HTTP官方文档了解简单请求和预检请求等相关概念
https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Ac...]]></description><category></category></item><item><title><![CDATA[Spring Cloud Alibaba Nacos 配置中心笔记]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/105502694</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/105502694</guid><author>tripleDemo</author><pubDate>Tue, 14 Apr 2020 06:35:07 +0800</pubDate><description><![CDATA[1.如何使用Nacos作为配置中心统一管理配置
1.1引入依赖
&lt;dependency&gt;
    &lt;groupId&gt;com.alibaba.cloud&lt;/groupId&gt;
    &lt;artifactId&gt;spring-cloud-starter-alibaba-nacos-config&lt;/artifactId&gt;
&lt;/dependen...]]></description><category></category></item><item><title><![CDATA[adb server version (31) doesn't match this client (41); killing...]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/104607782</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/104607782</guid><author>tripleDemo</author><pubDate>Mon, 02 Mar 2020 11:24:35 +0800</pubDate><description><![CDATA[报错如图

原因
不是client版本与server端的版本不匹配的原因，而是某进程占用了adb的端口引起的。adb对应的端口就是5037。
解决

1.验证5037端口是否被占用：
netstat -ano|findstr "5037"

2.查找相应的进程对应的进程名称
tasklist |findstr "11324"

3.快捷键ctrl+alt+esc 进入任务管理器,结束鲁大师，重新执...]]></description><category></category></item><item><title><![CDATA[zuul过滤器中转发请求头解决]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/103548531</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/103548531</guid><author>tripleDemo</author><pubDate>Sun, 15 Dec 2019 14:55:52 +0800</pubDate><description><![CDATA[折腾了半天，谢谢博客各位老哥，接下来记录一下！
Zuul网关过滤的时候，如果不在网关过滤时转发请求头，经过网关时请求头就会丢失。
网关过滤转发请求头代码如下
	@Override
    public Object run() throws ZuulException {
        RequestContext currentContext = RequestContext.getCurre...]]></description><category></category></item><item><title><![CDATA[发送QQ邮箱验证码-JAVA]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/103373959</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/103373959</guid><author>tripleDemo</author><pubDate>Tue, 03 Dec 2019 18:22:31 +0800</pubDate><description><![CDATA[1.开启IMAP/SMTP服务获取授权码


完成申请密保即可获取授权码如下图：

2.引入依赖
&lt;dependency&gt;
	&lt;groupId&gt;org.apache.commons&lt;/groupId&gt;
	&lt;artifactId&gt;commons-email&lt;/artifactId&gt;
	&lt;version&gt;1.5&lt;/versi...]]></description><category></category></item><item><title><![CDATA[SpringCloud Feign调用服务提供者转发不了请求头解决]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/103365791</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/103365791</guid><author>tripleDemo</author><pubDate>Tue, 03 Dec 2019 13:56:14 +0800</pubDate><description><![CDATA[实战项目的时候，直接向服务提供者请求资源时携带token请求头成功响应，紧接着通过服务消费者feign调用服务提供者发现提供者获取的请求头为空！！解决如下：
1. 实现Feign提供的一个接口RequestInterceptor
@Configuration
public class FeignConfiguration implements RequestInterceptor {
    pr...]]></description><category></category></item><item><title><![CDATA[密码加密与微服务鉴权JWT]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/103335686</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/103335686</guid><author>tripleDemo</author><pubDate>Sun, 01 Dec 2019 16:08:18 +0800</pubDate><description><![CDATA[一、BCrypt密码加密
有很多标准的算法比如SHA或者MD5，结合salt(盐)是一个不错的选择。Spring Security提供了BCryptPasswordEncoder类，实现Spring的PasswordEncoder接口使用BCrypt强哈希方法来加密密码，BCrypt强哈希方法每次加密的结果都不一样。
1.1 引入依赖
&lt;dependency&gt;
    &lt;grou...]]></description><category></category></item><item><title><![CDATA[SpringBoot整合Druid]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/103110649</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/103110649</guid><author>tripleDemo</author><pubDate>Sun, 17 Nov 2019 17:25:03 +0800</pubDate><description><![CDATA[SpringBoot整合Druid
概述
Druid 是目前最好的数据库连接池，在功能、性能、扩展性方面，都超过其他数据库连接池，包括 DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。Druid 已经在阿里巴巴部署了超过 600 个应用，经过多年生产环境大规模部署的严苛考验。Druid 是阿里巴巴开发的号称为监控而生的数据库连接池！
引入依赖
引入Druid数据...]]></description><category></category></item><item><title><![CDATA[SpringBoot-Swagger整合]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/103110304</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/103110304</guid><author>tripleDemo</author><pubDate>Sun, 17 Nov 2019 16:46:22 +0800</pubDate><description><![CDATA[概述
Swagger是一款RESTFUL接口的文档在线自动生成+功能测试功能软件。Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务。目标是使客户端和文件系统作为服务器以同样的速度来更新文件的方法,参数和模型紧密集成到服务器。
引入依赖
&lt;dependency&gt;
    &lt;groupId&gt;io.springfox&lt;/gro...]]></description><category></category></item><item><title><![CDATA[基于docker使用spring-boot-starter-data-redis]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/103087642</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/103087642</guid><author>tripleDemo</author><pubDate>Fri, 15 Nov 2019 17:53:35 +0800</pubDate><description><![CDATA[docker拉取redis镜像
默认拉取最新版
docker pull redis

docker启动redis容器
docker run -p 6379:6379 -v /home/wen/docker/redis/redis.conf:/usr/local/etc/redis/redis.conf --name mobileshop_redis -d redis redis-server /u...]]></description><category></category></item><item><title><![CDATA[Spring Cloud Netflix笔记]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/103003334</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/103003334</guid><author>tripleDemo</author><pubDate>Sun, 10 Nov 2019 23:57:51 +0800</pubDate><description><![CDATA[网站架构演变过程：
从传统架构（单点应用：其实就是SSH或者SSM）–&gt; 分布式架构（以项目进行拆分）–&gt; SOA架构（面向服务架构，只有业务逻辑层）–&gt; 微服务架构
SOA架构特点：
底层基于SOAP或者ESB（消息总线）实现，底层使用HTTP或者HTTPS协议+重量级XML数据交换格式进行通讯。在后面微服务中，以json格式替换xml。
SOA架构缺点：
1.依赖于中心化服务...]]></description><category></category></item><item><title><![CDATA[分布式ID生成器]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/102986250</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/102986250</guid><author>tripleDemo</author><pubDate>Sat, 09 Nov 2019 14:01:46 +0800</pubDate><description><![CDATA[参考大神们做个记录
为什么使用snowflake？
分布式系统中，当需要使用全局唯一ID的场景时，使用36位的UUID防止ID冲突，但是UUID一般是无序的。而Twitter（通称推特）的snowflake(雪花)算法解决了这种需求。
snowflake的结构

第一位为不使用，接下来的41位为毫秒级时间(41位的长度可以使用69年)，然后是5位datacenterId和5位workerId(10...]]></description><category></category></item><item><title><![CDATA[SpringBoot+IDEA热部署]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/102882016</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/102882016</guid><author>tripleDemo</author><pubDate>Sun, 03 Nov 2019 19:00:35 +0800</pubDate><description><![CDATA[1、加入依赖
        &lt;dependency&gt;
            &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
            &lt;artifactId&gt;spring-boot-devtools&lt;/artifactId&gt;
        &lt;/dependency&gt;
...]]></description><category></category></item><item><title><![CDATA[Portainer--Docker的图形化管理工具]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/102874546</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/102874546</guid><author>tripleDemo</author><pubDate>Sat, 02 Nov 2019 18:29:53 +0800</pubDate><description><![CDATA[Shipyard 项目作者已经停止维护,现在企业当中应用更多Docker的可视化操作工具是Portainer。Portainer提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作（包括上传下载镜像，创建容器等操作）、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理和控制等功能。
1、查看当前有哪些Portainer镜像

2、创建Volume
Dock...]]></description><category></category></item><item><title><![CDATA[快速排序]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/102855533</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/102855533</guid><author>tripleDemo</author><pubDate>Fri, 01 Nov 2019 12:54:39 +0800</pubDate><description><![CDATA[public static Comparable[] a = new Comparable[] {1,9,2,8,3,0,5,7};
	public static void main(String[] args) {
		qSort(0,a.length-1);
	}
	
	private static void qSort(int p,int r) {
		if(p &lt; r) {
			i...]]></description><category></category></item><item><title><![CDATA[Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definiti]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/102513463</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/102513463</guid><author>tripleDemo</author><pubDate>Sat, 12 Oct 2019 08:03:43 +0800</pubDate><description><![CDATA[报错信息


解决


]]></description><category></category></item><item><title><![CDATA[Centos7安装docker和docker-compose]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/102161785</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/102161785</guid><author>tripleDemo</author><pubDate>Sun, 06 Oct 2019 09:15:55 +0800</pubDate><description><![CDATA[安装docker
1.确保 yum 包更新到最新。
yum update

2.安装需要的软件包， yum-util 提供yum-config-manager功能，另外两个是devicemapper驱动依赖的
yum install -y yum-utils device-mapper-persistent-data lvm2

3.设置yum源
yum-config-manager --add-...]]></description><category></category></item><item><title><![CDATA[基于Docker安装Registry镜像管理平台]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/101691998</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/101691998</guid><author>tripleDemo</author><pubDate>Sun, 29 Sep 2019 15:32:53 +0800</pubDate><description><![CDATA[简介
官方的Docker Hub是一个用于管理公共镜像的地方，我们可以在上面找到我们想要的镜像，也可以把我们自己的镜像推送上去。但是，有时候我们的服务器无法访问互联网，或者你不希望将自己的镜像放到公网当中，那么你就需要Docker Registry，它可以用来存储和管理自己的镜像。
创建文件夹并编辑docker-compose.yml文件
mkdir -p /usr/local/docker/re...]]></description><category></category></item><item><title><![CDATA[在项目中使用Maven私服]]></title><link>https://blog.youkuaiyun.com/tripleDemo/article/details/101640175</link><guid>https://blog.youkuaiyun.com/tripleDemo/article/details/101640175</guid><author>tripleDemo</author><pubDate>Sun, 29 Sep 2019 12:01:59 +0800</pubDate><description><![CDATA[配置认证信息
修改 Maven 安装目录 conf 中的 settings.xml，在 servers 节点下添加Nexus认证信息
&lt;server&gt;
  &lt;id&gt;nexus-releases&lt;/id&gt;
  &lt;username&gt;admin&lt;/username&gt;
  &lt;password&gt;admin123&lt;/password...]]></description><category></category></item></channel></rss>