<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[黄三yeah的Java技术空间]]></title><description><![CDATA[有勇气来改变可以改变的事情、有胸怀来接受不可以改变的事情、有智慧来分辨两者的不同、]]></description><link>https://blog.youkuaiyun.com/Huangcsdnjava</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Huangcsdnjava]]></copyright><item><title><![CDATA[NoClassDefFoundError: com/vdurmont/emoji/EmojiParser$FitzpatrickAction]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/136747069</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/136747069</guid><author>Huangcsdnjava</author><pubDate>Fri, 15 Mar 2024 18:23:43 +0800</pubDate><description><![CDATA[【代码】NoClassDefFoundError: com/vdurmont/emoji/EmojiParser$FitzpatrickAction。]]></description><category></category></item><item><title><![CDATA[Jackson解析异常]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/99430368</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/99430368</guid><author>Huangcsdnjava</author><pubDate>Tue, 13 Aug 2019 14:09:17 +0800</pubDate><description><![CDATA[com.fasterxml.jackson.databind.JsonMappingException: Can not construct instance of com...TokenData: no String-argument constructor/factory method to deserialize from String value

解决办法：加注解：




...]]></description><category></category></item><item><title><![CDATA[Java基础之【重写hashCode和equals】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94894132</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94894132</guid><author>Huangcsdnjava</author><pubDate>Sat, 06 Jul 2019 20:37:48 +0800</pubDate><description><![CDATA[参考：https://www.cnblogs.com/wang-meng/p/7501378.html

如果不被重写（原生Object）的hashCode和equals是什么样的？

 不被重写（原生）的hashCode值是根据内存地址换算出来的一个值。
	 不被重写（原生）的equals方法是严格判断一个对象是否相等的方法（object1 == object2）
规定：如果两个对象根据eq...]]></description><category></category></item><item><title><![CDATA[Java基础之【String为什么是immutable】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94402429</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94402429</guid><author>Huangcsdnjava</author><pubDate>Mon, 01 Jul 2019 18:58:30 +0800</pubDate><description><![CDATA[原文：

https://www.javatpoint.com/immutable-string

In java,string objects are immutable. Immutable simply means unmodifiable or unchangeable.

java中，String对象是不可变的，不可变简单理解就是不能修改或者不能改变

Once string obje...]]></description><category></category></item><item><title><![CDATA[计算机网络关键概念]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94355974</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94355974</guid><author>Huangcsdnjava</author><pubDate>Sun, 30 Jun 2019 20:25:37 +0800</pubDate><description><![CDATA[1.端口对应目的ip地址的哪个一进程

2.查看ip地址

windows ipconfig

linux ifconfig 或ip addr

3.子网掩码是用来划分 ip地址中的网络地址与主机号的

4.内网ip:



5. MAC地址更像身份证，是唯一的

6.DNS Domian Name System域名服务系统，域名跟IP进行关联，简而言之通过网址（域名）如www.goog...]]></description><category></category></item><item><title><![CDATA[Java基础之【TreeMap和HashMap需要注意的地方】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94220471</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94220471</guid><author>Huangcsdnjava</author><pubDate>Sat, 29 Jun 2019 22:48:46 +0800</pubDate><description><![CDATA[注意HashMap是依赖重写hashCode equals方法实现key（key是对象时）去重，而TreeMap中(key是自定义对象时)是依靠实现Comparable接口（内部排序）或者Comparator（外部排序)方式来实现key的去重。这是TreeMap最大的特性
...]]></description><category></category></item><item><title><![CDATA[Java基础之【使用迭代器删除List中的元素】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94212352</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94212352</guid><author>Huangcsdnjava</author><pubDate>Sat, 29 Jun 2019 21:44:50 +0800</pubDate><description><![CDATA[直接看代码以及代码中注释

iterator的remove跟list的remove区别是 迭代器会在remove后进行expectedModCount = modCount操作 这样就会避免

ConcurrentModificationException异常异常



public class ArrayListFailFast {
    public static void main(Str...]]></description><category></category></item><item><title><![CDATA[Java基础之fail-fast机制】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94205533</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94205533</guid><author>Huangcsdnjava</author><pubDate>Sat, 29 Jun 2019 20:55:38 +0800</pubDate><description><![CDATA[内容选自《码出高效》：

通常多线程（单线程也会）情况下，当前线程会维护一个技术比较器，即expectedModCount,记录已经修改的次数，在进入遍历前，会把实时修改次数modCount赋值给expectedModCount,如果两个不相等，则抛出ConcurrentModificationException异常，java.util下所有集合类都是fail-fast的，而concurrent包...]]></description><category></category></item><item><title><![CDATA[Java基础之【Comparable和Comparator】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94055420</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94055420</guid><author>Huangcsdnjava</author><pubDate>Fri, 28 Jun 2019 22:26:06 +0800</pubDate><description><![CDATA[排序主要分为三种情况

1.【内部排序】使用Comparable通过implements通过implements Comparable&lt;Object&gt;接口override compareTo方法实现

return值 0表示相等 1表示大于 -1表示小于

2.【外部排序】通过Comparator实现

3.以上1 2条针对的都是自定义类，而java对Integer String等已...]]></description><category></category></item><item><title><![CDATA[Java基础之【ArrayList.toArray方法需要注意传入数组的size】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94002034</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/94002034</guid><author>Huangcsdnjava</author><pubDate>Fri, 28 Jun 2019 14:45:34 +0800</pubDate><description><![CDATA[list.toArray方法可以传入一个数组，注意 数组长度为List.size()为最佳，小于 那么list.toArray返回的数组内元素为空，大于 性能差。数组容量等于list的size即可。


public class ListToArray {
    public static void main(String[] args) {
        List&lt;String&gt...]]></description><category></category></item><item><title><![CDATA[Java基础之【Arrays的asList需要注意不能修改元素个数的任何操作】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/93917327</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/93917327</guid><author>Huangcsdnjava</author><pubDate>Thu, 27 Jun 2019 22:03:43 +0800</pubDate><description><![CDATA[内容来自《码出高效》：

Arrays.asList方法可以将数组转换成集合List，之后这个list可以set值，但是注意 不能修改元素的个数，因为Arrays.asList返回的是Arrays的内部类，并没有实现集合个数修改的相关方法，只有set方法。

正常情况（只set元素）：


public class ArrayAsListTest {
    public static void ...]]></description><category></category></item><item><title><![CDATA[Java基础之【java8之lambda表达式】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/93370180</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/93370180</guid><author>Huangcsdnjava</author><pubDate>Sat, 22 Jun 2019 21:59:42 +0800</pubDate><description><![CDATA[资料参考自 菜鸟教程https://www.runoob.com/java/java8-new-features.html

之前对这个lambda的理解一直很模糊，相关概念也很多，虽然项目中经常用到，而且idea会提示，如把


 private void sortUsingJava7(List&lt;String&gt; names){   
      Collections.sort(n...]]></description><category></category></item><item><title><![CDATA[Java基础之【java8的Optinal】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/93136017</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/93136017</guid><author>Huangcsdnjava</author><pubDate>Thu, 20 Jun 2019 21:27:35 +0800</pubDate><description><![CDATA[Optional的最佳实践（解决null带来的过多判断）


private String getUserName(User user) {
    if (user != null) {
        return user.getUserName();
    }
    return null;
}
这是十分繁琐的一段代码。而如果使用Optional则会要精简很多：
private St...]]></description><category></category></item><item><title><![CDATA[计算机网络关键概念]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/92803363</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/92803363</guid><author>Huangcsdnjava</author><pubDate>Wed, 19 Jun 2019 09:16:22 +0800</pubDate><description><![CDATA[留白
]]></description><category></category></item><item><title><![CDATA[Java基础之【父子类同名变量的问题】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/92801594</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/92801594</guid><author>Huangcsdnjava</author><pubDate>Tue, 18 Jun 2019 23:14:39 +0800</pubDate><description><![CDATA[父子类同名变量的时候，获取变量值的区别

直接看代码以及输出结果即可：

父类


@Data
public class Father {
    public int a=5;
}

子类


@Data
public class Son extends Father{
    public int a=7;
    public void sonPrint(){
        //就是thi...]]></description><category></category></item><item><title><![CDATA[JavaWeb基础之【拦截器过滤器区别】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/92801532</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/92801532</guid><author>Huangcsdnjava</author><pubDate>Tue, 18 Jun 2019 23:10:54 +0800</pubDate><description><![CDATA[执行顺序图：



区别很多相似也很多，还是主要删繁就简只说主要的，

1.过滤器比拦截器先执行 过滤器是servlet的，只在容器初始化时调用一次

2.拦截器是spring框架的，基于反射 可以被多次调用

3.注意下执行的先后顺序



应用场景：

filter:

对request、response操作，如过滤掉一些信息，设置一些参数，设置字符集编码，过滤不需要的请求

拦截器：类似A...]]></description><category></category></item><item><title><![CDATA[Java基础之【包装类跟基本类型的区别】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/92799989</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/92799989</guid><author>Huangcsdnjava</author><pubDate>Tue, 18 Jun 2019 21:15:31 +0800</pubDate><description><![CDATA[首先要注意一个地方，String不是基本类型哦！很多初学者最后就搞懵了，问到8大基本类型会把String带上，你看 String str=new String("hello World"); 通过new的方式来创建字符串对象，那肯定不是基本类型啊。

回到正题，自动拆装箱等问题就不说了，直接说最大的区别，那就是默认值不同，举例：

int的默认值是0，而Integer的默认值是null ，阿里巴巴...]]></description><category></category></item><item><title><![CDATA[Java基础之【泛型的T和？区别】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/92799853</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/92799853</guid><author>Huangcsdnjava</author><pubDate>Tue, 18 Jun 2019 21:05:29 +0800</pubDate><description><![CDATA[&lt;T&gt;用于泛型类型的声明上 可以get set

&lt;？&gt;用于方法的接收参数或者是返回类型 只能get(不能set 其实可以set null但是无意义)，思考：因为&lt;?&gt;不知道是什么类型 所以无法set，但是get即访问是可以的，因为都是Object
...]]></description><category></category></item><item><title><![CDATA[Java基础之【关于IO】]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/92798990</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/92798990</guid><author>Huangcsdnjava</author><pubDate>Tue, 18 Jun 2019 20:04:57 +0800</pubDate><description><![CDATA[留白
]]></description><category></category></item><item><title><![CDATA[feignClient服务调用出现 timed-out and no fallback available]]></title><link>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/92789027</link><guid>https://blog.youkuaiyun.com/Huangcsdnjava/article/details/92789027</guid><author>Huangcsdnjava</author><pubDate>Tue, 18 Jun 2019 14:51:31 +0800</pubDate><description><![CDATA[详细报错如下：

com.netflix.hystrix.exception.HystrixRuntimeException: XXXClient#XXMethod(param1,param2)timed-out and no fallback available.

原因是默认的调用超时时间是1000ms

application.yml加入如下配置调整该时间即可

hystrix:

 c...]]></description><category></category></item></channel></rss>