<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[狂风的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/luochenhui2018</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; luochenhui2018]]></copyright><item><title><![CDATA[Dubbo接口测试]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/115343778</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/115343778</guid><author>luochenhui2018</author><pubDate>Wed, 31 Mar 2021 13:33:21 +0800</pubDate><description><![CDATA[Dubbo接口测试1 架构图2 服务提供者2.1 定义服务接口(该接口需单独打包，在服务提供方和消费方共享）2.2 在服务提供方实现接口（对服务消费方隐藏实现）2.3 用spring配置声明暴露服务2.4 加载spring配置
1 架构图

2 服务提供者
2.1 定义服务接口(该接口需单独打包，在服务提供方和消费方共享）
public interface DemoService{
	String sayHello（String name);
}

2.2 在服务提供方实现接口（对服务消费方隐藏实现）
pu]]></description><category></category></item><item><title><![CDATA[SpringBoot如何自动配置]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/115099376</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/115099376</guid><author>luochenhui2018</author><pubDate>Tue, 23 Mar 2021 10:01:32 +0800</pubDate><description><![CDATA[SpringBoot如何自动配置


SpringBoot应用程序能够实现自动配置主要是依靠一个注解:@SpringBootApplication。



从@SpringBootApplication源码可以看出是一个复合注解




在@SpringBootConfiguration标注在某一个类上，表示这是一个Spring Boot的配置类。
@EnableAutoConfiguration注解表示开启自动配置功能。以前需要配置的东西，Spring Boot帮我们自动配置。
在注解EnableAuto]]></description><category></category></item><item><title><![CDATA[Spring框架解析（spring笔记，持续更新）]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/114884098</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/114884098</guid><author>luochenhui2018</author><pubDate>Tue, 16 Mar 2021 15:43:16 +0800</pubDate><description><![CDATA[Spring框架解析1、写一个spring的demo
1、写一个spring的demo
测试类
public class TestMain {

	public static void main(String[] args) throws Exception {
		
		  //1.声明注册bean
		  BeanDefined beanObj = new BeanDefined();
		  beanObj.setBeanId("teacher");
		  beanObj.setClassPath(]]></description><category></category></item><item><title><![CDATA[JVM性能监控、故障处理工具]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/108530259</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/108530259</guid><author>luochenhui2018</author><pubDate>Fri, 11 Sep 2020 14:49:20 +0800</pubDate><description><![CDATA[JVM性能监控、故障处理工具1 基础故障处理工具1.1 jps：虚拟机进程状况工具1.2 jstat：虚拟机统计信息监视工具

前言：今年在面测试开发岗的时候，面试官问我如何进行JVM层的性能分析，一脸懵逼，今天写个帖子来总结学习一下

1 基础故障处理工具
1.1 jps：虚拟机进程状况工具
可以列出正在运行的虚拟机进程，并显示虚拟机执行主类（Main Class，main()函数所在的类）名称以及这些进程的本地虚拟机唯一 ID（LVMID，Local Virtual Machine Identifier]]></description><category></category></item><item><title><![CDATA[stream().filter()的用法]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/107668668</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/107668668</guid><author>luochenhui2018</author><pubDate>Wed, 29 Jul 2020 16:31:04 +0800</pubDate><description><![CDATA[stream().filter()的用法

平时我们会经常看到stream().filter()的方式去查询数据


stream.filter一般适用于list集合,主要作用就是模拟sql查询，从集合中查询想要的数据。filter里面的参数user是指集合里面的每一项

我们来一个简单的示例就能看懂他的用法了
public class StreamTest{
    public static void main(String[] args){
        List&lt;User&gt; list ]]></description><category></category></item><item><title><![CDATA[Element-ui]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/107176568</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/107176568</guid><author>luochenhui2018</author><pubDate>Tue, 07 Jul 2020 10:56:17 +0800</pubDate><description><![CDATA[Element-ui一、什么是Element-ui
一、什么是Element-ui
element 是基于 vue 实现的一套不依赖业务的 UI 组件库，提供了丰富的PC端组件，减少用户对常用组件的封装，降低了开发的难易程度

]]></description><category></category></item><item><title><![CDATA[Vue 插值和表达式]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/106689059</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/106689059</guid><author>luochenhui2018</author><pubDate>Thu, 11 Jun 2020 14:58:25 +0800</pubDate><description><![CDATA[Vue 插值和表达式
&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
	&lt;meta charset="utf-8"&gt;
	&lt;title&gt;Vue&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt; 
&lt;div id="app"&gt;
	{{date}}
&lt;/div&gt; 
&lt;script src="https://unpkg.com/vue/dist/vue.min.js"&gt;&lt;]]></description><category></category></item><item><title><![CDATA[Vue 生命周期]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/106687816</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/106687816</guid><author>luochenhui2018</author><pubDate>Thu, 11 Jun 2020 14:18:09 +0800</pubDate><description><![CDATA[Vue 生命周期
每个 vue 实例创建时，都会经历一系列的初始化过程，同时也会调用相应的生命周期钩子，
我们可以利用这些钩子，在合适的时机执行我们的业务逻辑。如果你使用过 jQuery，一定知道它的ready（）方法，比如以下示例：
$(document).ready (function() { 
	// DOM 加载完后，会执行这里的代码
} );

Vue 的生命周期钩子与之类似，比较常用的有：

created  :  实例创建完成后调用，此阶段完成了数据的观测等，但尚未挂载， $el 还不可用。 ]]></description><category></category></item><item><title><![CDATA[Vue 核心思想数据的双向绑定]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/106684765</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/106684765</guid><author>luochenhui2018</author><pubDate>Thu, 11 Jun 2020 11:23:12 +0800</pubDate><description><![CDATA[Vue 核心思想数据的双向绑定
在输入框输入的内容会实时展示在页丽的 hl 标签内
&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
	&lt;meta charset="utf-8"&gt;
	&lt;title&gt;VUE双向绑定实例&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt; 
&lt;div id="app"&gt;
&lt;input type="text" v-model="name" placeholder=]]></description><category></category></item><item><title><![CDATA[单例模式]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/106674031</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/106674031</guid><author>luochenhui2018</author><pubDate>Wed, 10 Jun 2020 20:10:05 +0800</pubDate><description><![CDATA[单例模式1、饿汉式（最简单适用）
1、饿汉式（最简单适用）
类加载到内存中，就实例化一个单例，JVM保证线程安全；
简单适用，推荐使用；
唯一缺点，不管用到与否，类加载时就完成实例化；
（话说你不用的，你加载它干嘛）
public class Mgr01{
	private static final Mgr01 INSTANCE = new Mgr01();
	private Mgr01();
	public static Mgr01 getInstance(){
		return INSTANCE ;
	]]></description><category></category></item><item><title><![CDATA[大厂JAVA、算法面试宝典]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/105953247</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/105953247</guid><author>luochenhui2018</author><pubDate>Wed, 06 May 2020 16:19:31 +0800</pubDate><description><![CDATA[大厂JAVA、算法面试宝典
电子书1：独家下载！《Java开发手册》灵魂13问，深度剖析一线大厂开发思维
https://developer.aliyun.com/article/758263?utm_content=g_1000116639
电子书2：重磅下载！《2020前端工程师必读手册》，阿里巴巴前端委员会推荐！
https://developer.aliyun.com/article/75...]]></description><category></category></item><item><title><![CDATA[JAVA反射机制]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/105515106</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/105515106</guid><author>luochenhui2018</author><pubDate>Tue, 14 Apr 2020 17:49:08 +0800</pubDate><description><![CDATA[JAVA反射机制1、什么是反射1.1、Class 类
1、什么是反射
能够分析类能力的程序称为反射（reflective )。 反射机制可以用来：

在运行时分析类的能力。
在运行时查看对象， 例如， 编写一个 toString 方法供所有类使用。
实现通用的数组操作代码。
利用 Method 对象， 这个对象很像中C++中的函数指针

1.1、Class 类
在程序运行期间，Java 运行时系统...]]></description><category></category></item><item><title><![CDATA[git常用命令]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/104499254</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/104499254</guid><author>luochenhui2018</author><pubDate>Tue, 25 Feb 2020 16:05:22 +0800</pubDate><description><![CDATA[git常用命令
回归commit:
git reset --soft HEAD~2
HEAD~2 :代表回退两个提交版本

]]></description><category></category></item><item><title><![CDATA[重写的对象比较方法equals]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/104256390</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/104256390</guid><author>luochenhui2018</author><pubDate>Mon, 10 Feb 2020 22:53:14 +0800</pubDate><description><![CDATA[重写的对象比较方法equals
例：
public boolean equals(Object obj)
     return this.name.equals(p.name)&amp;&amp;this.age==p.age;
        }

this表示本对象，比如你这样调用equals函数：stu1.equals(stu2)，this就表示stu1。
thisobj是直接使用进行比较...]]></description><category></category></item><item><title><![CDATA[集合框架-数组和链表]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/104120539</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/104120539</guid><author>luochenhui2018</author><pubDate>Fri, 31 Jan 2020 00:51:13 +0800</pubDate><description><![CDATA[集合框架-数组和链表
数组：查询快，增删慢
链表：查询慢，增删快
概念：
数组里的元素是连续的
链表的每个元素都存储了下一个元素的地址，从而使得一系列的随机的内存地址串在了一起，只要有足够的内存空间，就能为链表分配内存。
解释：
数组查询元素：知道第一个按顺序遍历就行
数组增加元素：如果需要给index为10的位置添加，则从index为11的位置开始右移
数组删除元素：如果需要删除index为10...]]></description><category></category></item><item><title><![CDATA[2020年新年学习目标]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/104042427</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/104042427</guid><author>luochenhui2018</author><pubDate>Sun, 19 Jan 2020 16:35:31 +0800</pubDate><description><![CDATA[2020年新年学习目标
1、JVM-SANDBOX学习
2、java进阶（io流、反射机制等）

]]></description><category></category></item><item><title><![CDATA[Docker笔记]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/103805098</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/103805098</guid><author>luochenhui2018</author><pubDate>Fri, 03 Jan 2020 13:49:51 +0800</pubDate><description><![CDATA[Docker学习笔记持续更新1、Docker没有vi命令的解决方案
1、Docker没有vi命令的解决方案
1、安装
apt-get install vim

如果提示
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate...]]></description><category></category></item><item><title><![CDATA[mybatis-generator入门]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/103499033</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/103499033</guid><author>luochenhui2018</author><pubDate>Thu, 12 Dec 2019 11:27:29 +0800</pubDate><description><![CDATA[mybatis-generator解析一、mybatis-generator配置1、 pom依赖：2、generatorConfig,xml配置:二、mybatis-generator生成数据对象
一、mybatis-generator配置
mybatis-generator可以根据我们的数据库自动生成pojo、dao、xml文件
1、 pom依赖：
&lt;plugins&gt;
       ...]]></description><category></category></item><item><title><![CDATA[递归算法]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/88919744</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/88919744</guid><author>luochenhui2018</author><pubDate>Fri, 30 Aug 2019 18:04:40 +0800</pubDate><description><![CDATA[递归算法什么是递归
什么是递归
以编程的角度来看，程序调用自身的编程技巧称为递归（ recursion）
递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法，它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解，递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算，大大地减少了程序的代码量。递归的能力在于用有限的语...]]></description><category></category></item><item><title><![CDATA[throws和throw的作用]]></title><link>https://blog.youkuaiyun.com/luochenhui2018/article/details/99239470</link><guid>https://blog.youkuaiyun.com/luochenhui2018/article/details/99239470</guid><author>luochenhui2018</author><pubDate>Sun, 11 Aug 2019 22:36:46 +0800</pubDate><description><![CDATA[throws和throw的作用1.throws2. throw3. RuntimeException4.总结（非常重要）
1.throws
throws用来修饰一个方法,表示该方法如果产生异常的话,不在本方法中捕获, 而是丢弃给调用此方法的对象来处理（一般是非RuntimeException）。
2. throw
throw是用来在程序中手动抛出一个异常,这个异常通常都是自定义的。
3. Runt...]]></description><category></category></item></channel></rss>