<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[csdn_wangchen的博客]]></title><description><![CDATA[路漫漫其修远兮，吾将上下而求索......]]></description><link>https://blog.youkuaiyun.com/csdn_wangchen</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; csdn_wangchen]]></copyright><item><title><![CDATA[使用docker搭建测试环境]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/107513543</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/107513543</guid><author>csdn_wangchen</author><pubDate>Wed, 22 Jul 2020 14:54:54 +0800</pubDate><description><![CDATA[使用docker搭建测试环境：

日常开发中经常需要用到各种软件数据库等，在此使用docker来搭建，省时省力，还方便。
在此主要介绍使用docker来搭建mysql、redis、mongodb、es。同时推荐一款简洁好用的docker可视化工具 Portainer。

可视化工具推荐

参考链接：Docker可视化工具Portainer
在此推荐一个docker的可视化软件，可以方便查看docker的镜像、容器等信息。
使用时截图如下：
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传]]></description><category></category></item><item><title><![CDATA[常见的跨域问题解决方案]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/107222462</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/107222462</guid><author>csdn_wangchen</author><pubDate>Thu, 09 Jul 2020 10:30:47 +0800</pubDate><description><![CDATA[常见的跨域问题解决方案：
什么是跨域:

跨域是指一个域下的文档或脚本师试图请求另一个域下的资源，这里的跨域是广义的。
其实我们通常说的跨域是狭义的，是由浏览器同源策略限制的一类请求场景。

什么是同源策略：
同源策略（SOP - Same Origin Policy）是一种约定,由NetSpace公司1995年引入浏览器，他是浏览器最核心也是最基本的安全功能，如果缺少了同源策略，浏览器很容易受到XSS，CSRF等攻击，所谓的同源是指： 协议+ 域名+ 端口，三者相同，即便两个不同的域名指向一个IP地址，也]]></description><category></category></item><item><title><![CDATA[单链表倒序]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/107126448</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/107126448</guid><author>csdn_wangchen</author><pubDate>Sat, 04 Jul 2020 16:39:44 +0800</pubDate><description><![CDATA[单链表倒序
题目来源
牛客网
题目描述

输入一个链表，按链表从尾到头的顺序返回一个ArrayList。

public class ListNode {
    int val;
    ListNode next = null;

    public ListNode(int val) {
        this.val = val;
    }

    public void setNext(ListNode node) {
        this.next = node;
    }
}

]]></description><category></category></item><item><title><![CDATA[二维数组中的查找]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/107124965</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/107124965</guid><author>csdn_wangchen</author><pubDate>Sat, 04 Jul 2020 15:26:32 +0800</pubDate><description><![CDATA[二维数组中的查找
题目来源
牛客网
题目描述

在一个二维数组中（每个一维数组的长度相同），每一行都按照从左到右递增的顺序排序，每一列都按照从上到下递增的顺序排序。请完成一个函数，输入这样的一个二维数组和一个整数，判断数组中是否含有该整数。

解题思路


解法一：


判断一个二维数组中是否存在某一个元素，直接遍历：


public class Solution {
    public boolean Find(int target, int [][] array) {
        for(int]]></description><category></category></item><item><title><![CDATA[数组中重复的数字]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/107124902</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/107124902</guid><author>csdn_wangchen</author><pubDate>Sat, 04 Jul 2020 15:22:36 +0800</pubDate><description><![CDATA[数组中重复的数字：
题目来源
牛客网
题目描述：

在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的，但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如，如果输入长度为7的数组{2,3,1,0,2,5,3}，那么对应的输出是第一个重复的数字2。

解题思路:

第一种解法：
判断数组中元素是否重复？首先的想法就是获取数组第一个位置的元素，然后从第二个开始遍历，判断后续的数组中是否有元素与当前的元素一致… 然后一致循环下去：
时间复杂度]]></description><category></category></item><item><title><![CDATA[SpringBoot 集成 CKEditor4 完整实例]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/102588127</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/102588127</guid><author>csdn_wangchen</author><pubDate>Wed, 16 Oct 2019 16:35:15 +0800</pubDate><description><![CDATA[SpringBoot 集成 CKEditor4 完整实例：
快速开始：
首先我们需要新建一个SpringBoot的项目，将CKEditor4集成进来。


下载CKEditor  标准版即可



将其解压放在SpringBoot项目的static目录下：


引入官方提供的例子: （修改正确的js地址）


edit.html:
&lt;!DOCTYPE html&gt;
&lt;html la...]]></description><category></category></item><item><title><![CDATA[windows10 安装与配置weblogic]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/100533923</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/100533923</guid><author>csdn_wangchen</author><pubDate>Wed, 04 Sep 2019 10:29:03 +0800</pubDate><description><![CDATA[一、WebLogic的介绍
 WebLogic是美国bea公司出品的一个application server，确切的说是一个基于Javaee架构的中间件，纯java开发的，最新版本WebLogic Server 9.0是迄今为止发布的最卓越的BEA应用服务器。BEA WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功...]]></description><category></category></item><item><title><![CDATA[单链表的反转]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/87345094</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/87345094</guid><author>csdn_wangchen</author><pubDate>Fri, 15 Feb 2019 14:57:37 +0800</pubDate><description><![CDATA[转载自 单链表的反转

单链表的反转是常见的面试题目。本文总结了2种方法。

1 定义

单链表node的数据结构定义如下：


class ListNode {
    int val;
    ListNode next;
    ListNode(int x) {
        val = x;
        next = null;
    }
}

 

2 方法1：就地反转法

2...]]></description><category></category></item><item><title><![CDATA[微服务接口限流的设计与思考]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/87251919</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/87251919</guid><author>csdn_wangchen</author><pubDate>Thu, 14 Feb 2019 10:16:14 +0800</pubDate><description><![CDATA[当前文章来源于 掘金  觉得讲得相对不错。链接如下 微服务接口限流的设计与思考

说明

微服务拆分之后，系统之间的调用关系错综复杂，平台的整体复杂熵升高，出错的概率、debug 问题的难度都高了好几个数量级。所以，服务治理便成了微服务的一个技术重点。服务治理本身的概念比较大，包括鉴权、限流、降级、熔断、监控告警等等，本文聚焦于限流，根据笔者的实战经验，分享一些对微服务接口限流的思考。

本文试图...]]></description><category></category></item><item><title><![CDATA[数据结构与算法 - 图论]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/87188140</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/87188140</guid><author>csdn_wangchen</author><pubDate>Wed, 13 Feb 2019 17:41:04 +0800</pubDate><description><![CDATA[数据结构与算法 - 图论

当前文章来源于 掘金  觉得讲得相对不错。链接如下：数据结构与算法 - 图论

基本概念：

图论〔Graph Theory〕是数学的一个分支。它以图为研究对象。图论中的图是由若干给定的点及连接两点的线所构成的图形，这种图形通常用来描述某些事物之间的某种特定关系，用点代表事物，用连接两点的线表示相应两个事物间具有这种关系。

图论是一种表示 &quot;多对多&quot; 的关系

图是由...]]></description><category></category></item><item><title><![CDATA[数据结构中关于树的一切（java版）]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/87185596</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/87185596</guid><author>csdn_wangchen</author><pubDate>Wed, 13 Feb 2019 16:17:33 +0800</pubDate><description><![CDATA[数据结构中关于树的一切（java版）

当前文章来源于 掘金  觉得讲得相对不错。链接如下：数据结构中关于树的一切

当你第一次学习编码时，大部分人都是将数组作为主要数据结构来学习。之后，你将会学习到哈希表。如果你是计算机专业的，你肯定需要选修一门数据结构的课程。上课时，你又会学习到链表，队列和栈等数据结构。这些都被统称为线性的数据结构，因为它们在逻辑上都有起点和终点。

当你开始学习树和图的数据...]]></description><category></category></item><item><title><![CDATA[数据结构与算法（java）]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/87167536</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/87167536</guid><author>csdn_wangchen</author><pubDate>Wed, 13 Feb 2019 15:24:26 +0800</pubDate><description><![CDATA[数据结构与算法（java）

当前文章来源于掘金觉得讲得相对不错。链接如下：数据结构与算法

简述

在编程过程中，通常会遇到的一个问题就是，性能瓶颈。很多时候考虑的都是怎么去做横向扩展，但偏偏忽略掉了最基本的问题就是系统是否真的已经达到了瓶颈？

性能瓶颈通常的表象是资源消耗过多外部处理系统的性能不足；或者资源消耗不多但程序的响应速度却仍达不到要求。
而调优的方式就是 寻找过度消耗资源的代...]]></description><category></category></item><item><title><![CDATA[从磁盘结构到B+树]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/87164954</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/87164954</guid><author>csdn_wangchen</author><pubDate>Wed, 13 Feb 2019 10:43:10 +0800</pubDate><description><![CDATA[从磁盘结构到B+树

本篇文章来自掘金，觉得讲得相对不错。链接如下：从磁盘结构到B+树

目录

disk结构

disk是如何存储数据（特值定数据库数据）的

什么是索引

什么是多级索引

m-way搜索树

B树：m-way搜索树 + 规则

B树中的插入操作

B+树

disk结构



简单来说：按照时钟方向分，disk由很多个sector组成，编号为0-N。按照从外到内分，disk又...]]></description><category></category></item><item><title><![CDATA[Spring 之  SpringBean的生命周期]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/86704018</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/86704018</guid><author>csdn_wangchen</author><pubDate>Wed, 30 Jan 2019 16:31:06 +0800</pubDate><description><![CDATA[参考文章：Spring 的生命周期

Spring作为当前Java最流行、最强大的轻量级框架，受到了程序员的热烈欢迎。准确的了解Spring Bean的生命周期是非常必要的。我们通常使用ApplicationContext作为Spring容器。这里，我们讲的也是 ApplicationContext中Bean的生命周期。

生命周期流程图：

Spring Bean的完整生命周期从创建Spring...]]></description><category></category></item><item><title><![CDATA[策略模式]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/86649532</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/86649532</guid><author>csdn_wangchen</author><pubDate>Fri, 25 Jan 2019 17:40:54 +0800</pubDate><description><![CDATA[定义了一个算法族，将他们分别封装起来，让他们之间可以互相替换，此模式让算法的变化，独立于使用算法的客户。

思考一个场景：

有一个鸭子的接口，鸭子可以叫 飞   将鸭子定义为一个接口，叫 和 飞成为其中的两个方法。后续出来了  具体的实现类：

红鸭子  白鸭子 他们除了外观不同  叫 和 飞是相同的。

橡皮鸭子：会叫  但是不会飞  而且叫声与 红鸭子  白鸭子 不同。

丑小鸭：会叫  2...]]></description><category></category></item><item><title><![CDATA[观察者模式]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/86649487</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/86649487</guid><author>csdn_wangchen</author><pubDate>Fri, 25 Jan 2019 17:25:13 +0800</pubDate><description><![CDATA[观察者模式：

观察者模式使用的场景：

订阅者 + 出版者 = 观察者模式

观察者模式提供了一种对象设计，让观察者和主题之间松耦合。

在对象之间定义一对多的依赖，这样一来，当一个对象改变状态，依赖他的对象就会收到通知 ，并自动更新。

有两种对象，双方之间是一对多的关系，一方做出改变时需要通知其他方做改动。使用了观察者模式之后 需要被动做出变化的一方不需要一直查看主题方是否有变化。

使用时...]]></description><category></category></item><item><title><![CDATA[SpringBoot源码解析]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/86648719</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/86648719</guid><author>csdn_wangchen</author><pubDate>Fri, 25 Jan 2019 16:58:23 +0800</pubDate><description><![CDATA[参考链接 ：https://yq.aliyun.com/articles/613386#comment   云栖社区

SpringBoot应用基础结构

我们每创建一个springboot应用就会发现，其目录结构中都会有一个以应用名为首的Application类（下文中都直接称为Application类），而其他包都是在这个类的同级或子级下面，结构如图：



Application类作为应用的...]]></description><category></category></item><item><title><![CDATA[重构改善既有代码的设计--读书笔记 1]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/86623478</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/86623478</guid><author>csdn_wangchen</author><pubDate>Thu, 24 Jan 2019 15:29:53 +0800</pubDate><description><![CDATA[
重构是在不改变软件可观察行为的前提下改善其内部结构。

在软件的设计前期过度的追求设计模式常常导致过度工程，单凭对完美的追求，无法写出实用的代码。

保持代码易读、易修改的关键就是重构。

重构具有风险，他必须修改运作中的程序，这可能会引入一些不易察觉的错误。设计模式为重构提供了目标。


从一个案例中入手。按照书中的例子，我在这里又复制了一遍：

案例：

是一个影片出租店的项目 ，需要计算每...]]></description><category></category></item><item><title><![CDATA[Mysql使用 之  开发篇]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/86621492</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/86621492</guid><author>csdn_wangchen</author><pubDate>Thu, 24 Jan 2019 10:54:05 +0800</pubDate><description><![CDATA[Mysql中关于外键的选择？

外键的介绍：

Mysql支持外键索引的存储引擎只有Innodb，在创建外键的时候，要求父表必须有对应的索引，子表在创建时也会自动创建对应的索引。在创建索引时可以指定在删除更新父表时对子表进行相关的操作，包括RESTRICT、 CASCADE、SET NULL、NO ACTION。 其中RESTRICT和NO ACTION相同，限制在子表有关联业务的情况下，父表不能...]]></description><category></category></item><item><title><![CDATA[微服务实战 之 声明式服务调用 Spring Cloud Feign]]></title><link>https://blog.youkuaiyun.com/csdn_wangchen/article/details/86610665</link><guid>https://blog.youkuaiyun.com/csdn_wangchen/article/details/86610665</guid><author>csdn_wangchen</author><pubDate>Wed, 23 Jan 2019 18:03:47 +0800</pubDate><description><![CDATA[Spring Cloud Feign

Spring Cloud Ribbon 和 Spring Cloud Hystrix 是微服务架构中实现客户端负载均衡的调用以及服务容错保护机制的基础组件。在实际的使用中，他们通常是同时出现的，那么时候有一种框架将他们整合在一起呢？Spring Cloud Feign就是一个这样的工具。他是基于Netflix Feign整合实现的，除了提供这两个的功能之外，...]]></description><category></category></item></channel></rss>