<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[dh3939的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/dh3939</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; dh3939]]></copyright><item><title><![CDATA[Spring IOC 容器源码分析 - 循环依赖的解决办法]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384521</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384521</guid><author>dh3939</author><pubDate>Wed, 21 Aug 2019 15:55:00 +0800</pubDate><description><![CDATA[1. 简介
本文，我们来看一下 Spring 是如何解决循环依赖问题的。在本篇文章中，我会首先向大家介绍一下什么是循环依赖。然后，进入源码分析阶段。为了更好的说明 Spring 解决循环依赖的办法，我将会从获取 bean 的方法getBean(String)开始，把整个调用过程梳理一遍。梳理完后，再来详细分析源码。通过这几步的讲解，希望让大家能够弄懂什么是循环依赖，以及如何解循环依赖。...]]></description><category></category></item><item><title><![CDATA[Spring BeanFactory 与 FactoryBean 的区别]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384513</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384513</guid><author>dh3939</author><pubDate>Thu, 01 Aug 2019 11:06:00 +0800</pubDate><description><![CDATA[BeanFactory 和 FactoryBean 都是Spring Beans模块下的接口
BeanFactory是spring简单工厂模式的接口类，spring IOC特性核心类，提供从工厂类中获取bean的各种方法，是所有bean的容器。见以下结构视图


FactoryBean仍然是一个bean，但不同于普通bean，它的实现类最终也需要注册到BeanFactory中。...]]></description><category></category></item><item><title><![CDATA[Java中@SuppressWarnings（"unchecked"）的作用]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384519</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384519</guid><author>dh3939</author><pubDate>Fri, 28 Jun 2019 18:04:00 +0800</pubDate><description><![CDATA[J2SE 提供的最后一个批注是 @SuppressWarnings。该批注的作用是给编译器一条指令，告诉它对被批注的代码元素内部的某些警告保持静默。 
    一点背景：J2SE 5.0 为 Java 语言增加了几个新的特性，并且和它们一起增加了许多新的警告并承诺在将来增加更多的警告。您可以为 "javac" 增加 -Xlint 参数来控制是否报告这些警告（如@Deprecated）。...]]></description><category></category></item><item><title><![CDATA[Spring Bean的作用域以及lookup-method标签的使用]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384510</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384510</guid><author>dh3939</author><pubDate>Mon, 24 Jun 2019 11:40:00 +0800</pubDate><description><![CDATA[Spring Framework支持五种作用域,如下图所示：

singleton：表示一个容器中只会存在一个bean实例，无论在多少个其他bean里面依赖singleton bean，整个容器都只会存在一个实例。相当于是容器的全局变量。
prototype：一个容器中可能会存在多个bean实例，prototype bean的实例产生有两种情况，一种是其他bean请求依赖prot...]]></description><category></category></item><item><title><![CDATA[bean标签的常用属性]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384515</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384515</guid><author>dh3939</author><pubDate>Mon, 24 Jun 2019 11:12:00 +0800</pubDate><description><![CDATA[这篇文章总结spring中bean标签的常用属性。
bean标签常用属性有：
idnameclassfactory-methodfactory-beaninit-methoddestory-methodscopeautowire下面具体来所有这些属性怎么使用。
id属性
id标签是bean的唯一标识，IoC容器中bean的id标签不能重复，否则报错。
name属性
name是...]]></description><category></category></item><item><title><![CDATA[自定义注解使用]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384506</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384506</guid><author>dh3939</author><pubDate>Wed, 19 Jun 2019 17:27:00 +0800</pubDate><description><![CDATA[1.自定义注解

@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface FieldConstraints {

    /**
     * 字段长度判断.
     * @return 返回限制长度.
     */
    int ...]]></description><category></category></item><item><title><![CDATA[ApplicationContextAware接口的作用]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384511</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384511</guid><author>dh3939</author><pubDate>Fri, 14 Jun 2019 17:19:00 +0800</pubDate><description><![CDATA[在Web应用中，Spring容器通常采用声明式方式配置产生：开发者只要在web.xml中配置一个Listener，该Listener将会负责初始化Spring容器，MVC框架可以直接调用Spring容器中的Bean，无需访问Spring容器本身。在这种情况下，容器中的Bean处于容器管理下，无需主动访问容器，只需接受容器的依赖注入即可。
但在某些特殊的情况下，Bean需要实现某个...]]></description><category></category></item><item><title><![CDATA[Guava之FluentIterable使用示例]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384300</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384300</guid><author>dh3939</author><pubDate>Tue, 11 Jun 2019 20:56:00 +0800</pubDate><description><![CDATA[FluentIterable 是guava集合类中常用的一个类，主要用于过滤、转换集合中的数据；FluentIterable是一个抽象类，实现了Iterable接口，大多数方法都返回FluentIterable对象，这也是guava的思想之一。
transform：对于ListenableFuture的返回值进行转换。allAsList：对多个ListenableFuture的合并，返...]]></description><category></category></item><item><title><![CDATA[理解Maven中的SNAPSHOT版本和正式版本]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384299</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384299</guid><author>dh3939</author><pubDate>Thu, 30 May 2019 15:15:00 +0800</pubDate><description><![CDATA[Maven中建立的依赖管理方式基本已成为Java语言依赖管理的事实标准，Maven的替代者Gradle也基本沿用了Maven的依赖管理机制。在Maven依赖管理中，唯一标识一个依赖项是由该依赖项的三个属性构成的，分别是groupId、artifactId以及version。这三个属性可以唯一确定一个组件（Jar包或者War包）。
其实在Nexus仓库中，一个仓库一般分为public(R...]]></description><category></category></item><item><title><![CDATA[公钥私钥]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384298</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384298</guid><author>dh3939</author><pubDate>Fri, 17 May 2019 11:39:00 +0800</pubDate><description><![CDATA[一、公钥算法与私钥算法

1、私钥算法
私钥加密算法，又称对称加密算法，因为这种算法解密密钥和加密密钥是相同的。也正因为同一密钥既用于加密又用于解密，所以这个密钥是不能公开的。常见的有《DES加密算法》、《AES加密算法》。
2、公钥算法
公钥加密算法，也就是非对称加密算法，这种算法加密和解密的密码不一样，一个是公钥，另一个是私钥：
公钥和私钥成对出现
1.公开...]]></description><category></category></item><item><title><![CDATA[Java 内部类综述]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384503</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384503</guid><author>dh3939</author><pubDate>Tue, 30 Apr 2019 18:26:00 +0800</pubDate><description><![CDATA[转载自：https://blog.youkuaiyun.com/justloveyou_/article/details/53245561

转载于:https://www.cnblogs.com/PengChengLi/p/10797594.html]]></description><category></category></item><item><title><![CDATA[Java 访问权限控制：你真的了解 protected 关键字吗？]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384508</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384508</guid><author>dh3939</author><pubDate>Tue, 30 Apr 2019 17:53:00 +0800</pubDate><description><![CDATA[摘要：
　　对于类的成员而言，其能否被其他类所访问，取决于该成员的修饰词；而对于一个类而言，其能否被其他类所访问，也取决于该类的修饰词。在Java中，类成员访问权限修饰词有四类：private，无（包访问权限），protected 和 public，而其中只有包访问权限和public才能修饰一个类（内部类除外）。特别地，很多Java书籍对protected可见性的介绍都比较笼统，本文重...]]></description><category></category></item><item><title><![CDATA[反射---Java高级开发必须懂的]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384500</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384500</guid><author>dh3939</author><pubDate>Tue, 30 Apr 2019 11:35:00 +0800</pubDate><description><![CDATA[理解反射对学习Java框架有很大的帮助，如Spring框架的核心就是使用Java反射实现的，而且对做一些Java底层的操作会很有帮助。
一、Class类的使用
    1、万事万物皆对象，（当然，基本数据类型，静态成员不是面向对象（属于类的）），所以我们创建的每一个类也都是对象，即类本身是java.lang.Class类的实例对象，但是这些对象都不需要new出来，因为jav...]]></description><category></category></item><item><title><![CDATA[js获取select标签选中的值]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384504</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384504</guid><author>dh3939</author><pubDate>Mon, 29 Apr 2019 10:54:00 +0800</pubDate><description><![CDATA[js获取select标签选中的值



var obj = document.getElementByIdx_x(”testSelect”); //定位id
var index = obj.selectedIndex; // 选中索引
var text = obj.options[index].text; // 选中文本
var value = obj.options[i...]]></description><category></category></item><item><title><![CDATA[JAVA中循环删除list中元素的方法总结]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384498</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384498</guid><author>dh3939</author><pubDate>Mon, 29 Apr 2019 10:48:00 +0800</pubDate><description><![CDATA[印象中循环删除list中的元素使用for循环的方式是有问题的，但是可以使用增强的for循环，然后今天在使用时发现报错了，然后去科普了一下，再然后发现这是一个误区。下面就来讲一讲。。伸手党可直接跳至文末。看总结。。
　　JAVA中循环遍历list有三种方式for循环、增强for循环（也就是常说的foreach循环）、iterator遍历。

1、for循环遍历list

for...]]></description><category></category></item><item><title><![CDATA[java 异常java.lang.UnsupportedOperationException]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384501</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384501</guid><author>dh3939</author><pubDate>Mon, 29 Apr 2019 10:42:00 +0800</pubDate><description><![CDATA[在项目中采用一个枚举的集合，本人采用Collections中的空集合Collections.emptyList()在添加时发生异常：
常见集合如下：
private List&lt;VacationCategory&gt; vacationcategorys = Collections.emptyList();

报错误如下：
-- Encapsulated excepti...]]></description><category></category></item><item><title><![CDATA[linux下tomcat日志文件现问号乱码]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384499</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384499</guid><author>dh3939</author><pubDate>Fri, 19 Apr 2019 14:43:00 +0800</pubDate><description><![CDATA[在使用liunux系统下，使用tomcat记录的日志出现乱码的情况，不能显示中文，中文出现？问号乱码情况，不能正常查看

linux下乱码可能有三个情况
1、linux不含中文支持语言包
打开远程连接客户端使用echo $LANG，查看当前语言包是否是zh_CN.UTF-8 ，如果不是先下载安装中文语言包
yum -y groupinstall chinese-suppor...]]></description><category></category></item><item><title><![CDATA[idea 如何优雅的添加.ignore 忽略不必要提交的文件]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384495</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384495</guid><author>dh3939</author><pubDate>Mon, 08 Apr 2019 15:45:00 +0800</pubDate><description><![CDATA[最近有点时间然后就跑去搜了下idea热门的插件，一不小心发现了一个.ignore插件。有过在idea使用git都知道.gitignore文件，而这个插件就是能优雅的帮我们做这件事.
首先先讲下安装这个插件：


跟着这张图操作大家就明白啦，老孙就不仔细讲解了。
怎么使用这个插件呢
选择当前项目，new file


然后选择要忽略的文件


然后就会...]]></description><category></category></item><item><title><![CDATA[Elasticsearch之如何合理分配索引分片]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384496</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384496</guid><author>dh3939</author><pubDate>Wed, 03 Apr 2019 17:16:00 +0800</pubDate><description><![CDATA[大多数ElasticSearch用户在创建索引时通用会问的一个重要问题是:我需要创建多少个分片?
在本文中, 我将介绍在分片分配时的一些权衡以及不同设置带来的性能影响. 如果想搞清晰你的分片策略以及如何优化,请继续往下阅读.
为什么要考虑分片数
分片分配是个很重要的概念, 很多用户对如何分片都有所疑惑, 当然是为了让分配更合理. 在生产环境中, 随着数据集的增长, 不合理的分配策略...]]></description><category></category></item><item><title><![CDATA[ceshi]]></title><link>https://blog.youkuaiyun.com/dh3939/article/details/102384493</link><guid>https://blog.youkuaiyun.com/dh3939/article/details/102384493</guid><author>dh3939</author><pubDate>Mon, 18 Mar 2019 11:05:00 +0800</pubDate><description><![CDATA[测试机地址：
192.168.144.78
Root
1qaz@WSX_h5
war包地址：
/export/data/tomcatRoot/admin.plus.jd.com
端口：5017


测试机部署步骤：
1.把war把复制到测试机，解压——
jar -xvf jd-vip-plus-admin.war

2.ps-ef...]]></description><category></category></item></channel></rss>