<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[追寻水中桥]]></title><description><![CDATA[xiaoping's blog]]></description><link>https://blog.youkuaiyun.com/xiaoping0915</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; xiaoping0915]]></copyright><item><title><![CDATA[重识 JavaScript —— 闭包（三）]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/79111896</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/79111896</guid><author>xiaoping0915</author><pubDate>Sat, 20 Jan 2018 02:08:12 +0800</pubDate><description><![CDATA[什么是闭包？

这确实是个问题，我现在答不出来。在这里想聊一个有趣的现象，在中学时代，常常有老先生在解答我们提出问题时，他们可以给出正确的结果。但是说不出个所以然出来，然后老先生会告诉我们：


  这个东西阿，只可意会不可言传呐，你们多练习就可以自行体会其中的奥义啦。


我认为这世间的事物可意会即可言传，不可言传者只能说明水平还不够，还得修行。古有诸葛孔明在《隆中对》用寥寥数语为刘备做了一个缜]]></description><category></category></item><item><title><![CDATA[重识 JavaScript —— 作用域（二）]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/79101940</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/79101940</guid><author>xiaoping0915</author><pubDate>Thu, 18 Jan 2018 23:43:58 +0800</pubDate><description><![CDATA[Javascript 语言特有的”链式作用域”结构（chain scope）

即子对象会一级一级地向上寻找所有父对象的变量。所以，父对象的所有变量，对子对象都是可见的，反之则不成立。

块作用域与函数作用域

函数可以访问函数外部申明的变量，但是函数外部不能反过来访问函数内部的局部变量。

需要注意的是在 JavaScript 中，区域块（if 、for、while、switch、try）内的变]]></description><category></category></item><item><title><![CDATA[重识 JavaScript —— 方法的重载（一）]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/79069340</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/79069340</guid><author>xiaoping0915</author><pubDate>Mon, 15 Jan 2018 22:02:47 +0800</pubDate><description><![CDATA[关于脚本语言的误会

起初对于脚本语言,也就是刚开始学习 JS 的时候了，是带有一定的误会的，现在看来还挺好玩的，那时候觉得脚本语言就是弱语言也就是“很弱”的语言了，无法设计出很复杂的程序。


  对不起，误会你了。


所以决定写一个重识（重拾）JS 系列的文章，以此谢罪。



方法的重载（Function overloading）

先看百度百科中对于方法重载的定义 


  方法重载是指]]></description><category></category></item><item><title><![CDATA[【问题解决】Auth 2.0 登录成功回调方法]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/76165263</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/76165263</guid><author>xiaoping0915</author><pubDate>Wed, 26 Jul 2017 20:39:44 +0800</pubDate><description><![CDATA[絮絮叨

第三方的登录的解决方案通常有两种方式，一是打开一个新的标签页，然后登录回调回来； 二是通过父窗口打开一个子窗体去第三方登录，登陆成功时关掉子窗体回到父窗口。





问题来了

我的父窗体怎么样才知道子窗体被关闭了呢？ 
查了下 w3c 里面的文档，貌似并没有类似 onWindowClose 这样的回调函数。



解决方案

将打开的这个窗口对象赋值给一个 jQuery 对象，在主窗]]></description><category></category></item><item><title><![CDATA[【Docker】 windows10 docker 使用]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/75094857</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/75094857</guid><author>xiaoping0915</author><pubDate>Fri, 14 Jul 2017 00:40:32 +0800</pubDate><description><![CDATA[docker 之前在 Windows 和 Mac OS 上的版本都是通过 Linux 虚拟机的形式，而现在 Docker 在 Windows 10 和 Mac OS 上已经有了支持的稳定版本，既然有了稳定版本那就来尝尝鲜，一起来 Docker 这艘船上来愉快的玩耍吧。准备下载 Docker ： https://download.docker.com/win/stable/InstallDocker.]]></description><category></category></item><item><title><![CDATA[【图解算法】排序算法——归并排序]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/73149536</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/73149536</guid><author>xiaoping0915</author><pubDate>Mon, 12 Jun 2017 23:54:04 +0800</pubDate><description><![CDATA[0.什么是归并排序(Merge sort)？

是创建在归并操作上的一种有效的排序算法，效率为O(n log n)。1945年由约翰·冯·诺伊曼首次提出。该算法是采用分治法（Divide and Conquer）的一个非常典型的应用，且各层分治递归可以同时进行。（from zh.wikipedia.org）

我对归并排序的理解是——分而治之，就是一个问题看起来很复杂，那就将他分开处理，这也是递归...]]></description><category></category></item><item><title><![CDATA[【Jsoup】抓取文章并定制]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/72672189</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/72672189</guid><author>xiaoping0915</author><pubDate>Wed, 24 May 2017 00:54:49 +0800</pubDate><description><![CDATA[关于Jsoupjsoup 是一款Java 的HTML解析器，可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API，可通过DOM，CSS以及类似于jQuery的操作方法来取出和操作数据。同类产品横向对比，从上图咋一看感觉 Jsoup 比名声大噪的 bs 还厉害的样子。 
行吧先来试用一下看起来灰常全面的 Jsoup 。String html = "<html><head><titl]]></description><category></category></item><item><title><![CDATA[java 内存溢出解决方案]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/70221925</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/70221925</guid><author>xiaoping0915</author><pubDate>Tue, 18 Apr 2017 01:44:22 +0800</pubDate><description><![CDATA[此错误常见的错误提示
  tomcat:java.lang.OutOfMemoryError: PermGen space 
  tomcat:java.lang.OutOfMemoryError: Java heap space weblogic:Root cause 
  of ServletException java.lang.OutOfMemoryError 
  resin:java.l]]></description><category></category></item><item><title><![CDATA[Spring Cache 缓存的使用]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/70210963</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/70210963</guid><author>xiaoping0915</author><pubDate>Mon, 17 Apr 2017 14:57:24 +0800</pubDate><description><![CDATA[一句话说缓存缓存是一个能有效提升性能和节省资源的东西。Spring Cache 在Spring-context包下，所以引入了Spring Framework就可以使用Spring cache了，在maven项目中引入spring-context<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->]]></description><category></category></item><item><title><![CDATA[Spring Task 任务调度器]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/70194678</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/70194678</guid><author>xiaoping0915</author><pubDate>Sun, 16 Apr 2017 12:11:22 +0800</pubDate><description><![CDATA[一句话说spring taskspring task 是一个可以让你的程序在你规定的时机执行规定好的动作，如同古人云：万事俱备只欠东风，那么东风来时即可一战。程序中理解spring task 在spring-core包下，我们只需引入<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-conte]]></description><category></category></item><item><title><![CDATA[Spring Security 使web应用更加安全]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/70184247</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/70184247</guid><author>xiaoping0915</author><pubDate>Sat, 15 Apr 2017 14:11:02 +0800</pubDate><description><![CDATA[一句话介绍Spring Security 是基于Spring AOP和Servlet过滤器的安全框架，安全主要包括两个操作“认证”与“验证”（有时候也会叫做权限控制）开始使用引入类库，例子中使用到的security版本是3.1    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncodi]]></description><category></category></item><item><title><![CDATA[数据库连接池性能横向比对(hikari druid c3p0 dbcp jdbc)]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/70160257</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/70160257</guid><author>xiaoping0915</author><pubDate>Thu, 13 Apr 2017 17:34:51 +0800</pubDate><description><![CDATA[背景

对现有的数据库连接池做调研对比，综合性能，可靠性，稳定性，扩展性等因素选出推荐出最优的数据库连接池 。
     

NOTE: 本文所有测试均是MySQL库

测试结论

   1：性能方面 hikariCP>druid>tomcat-jdbc>dbcp>c3p0 。hikariCP的高性能得益于最大限度的避免锁竞争。

   2：druid功能最为全面，sql拦截]]></description><category></category></item><item><title><![CDATA[【设计模式】单例模式]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/69938742</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/69938742</guid><author>xiaoping0915</author><pubDate>Sun, 09 Apr 2017 22:48:25 +0800</pubDate><description><![CDATA[单例模式的作用在于保证系统中一个类只有一个实例单例模式 3 要素1.构造方法私有化 
2.在类中创建类的唯一实例 
3.给外部提供一个获取实例的方法java实现 public class Singleton {    //构造方法私有化
    private Singleton(){}    //静态的唯一实例
    private static Singleton singleton;]]></description><category></category></item><item><title><![CDATA[【图解算法】Java GC算法]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/69525632</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/69525632</guid><author>xiaoping0915</author><pubDate>Fri, 07 Apr 2017 12:16:51 +0800</pubDate><description><![CDATA[ 

GC策略解决了哪些问题？

 

     

        既然是要进行自动GC，那必然会有相应的策略，而这些策略解决了哪些问题呢，粗略的来说，主要有以下几点。

        1、哪些对象可以被回收。

        2、何时回收这些对象。

        3、采用什么样的方式回收。

        

GC策略采用的何种算法

      

        有关上面所提到的...]]></description><category></category></item><item><title><![CDATA[【RxJava】操作符的使用]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/65442993</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/65442993</guid><author>xiaoping0915</author><pubDate>Thu, 23 Mar 2017 14:02:50 +0800</pubDate><description><![CDATA[关于操作符操作符是为了解决对Observable对象的变换的问题，操作符用于在Observable和最终的Subscriber之间修改Observable发出的事件。 
RxJava提供了很多很有用的操作符。Subscribers更应该做的事情是“响应”，响应Observable发出的事件，而不是去修改，让专业的人去做专业的事。所以修改就交给操作符吧.map对输入做一定处理之后再进行输出原理实现代码]]></description><category></category></item><item><title><![CDATA[【Python】健壮的爬虫]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/64918545</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/64918545</guid><author>xiaoping0915</author><pubDate>Wed, 22 Mar 2017 13:54:37 +0800</pubDate><description><![CDATA[还记得上次的发车（探索）吗？小伙伴有木有出现爬虫程序出现异常停止吗？上次没上车的童靴可以点击传送门那么问题来了为啥我们的爬虫程序会中途死亡？那么我们需要了解的是如何反制爬虫？ 
知道了他们的防守方式才能使我们的进攻更为有效！ 
通常很多网站不允许非浏览器访问，还有一个 ip 频繁访问会短暂禁止该IP访问。所以我们需要做的事情就是将自己的爬虫程序伪装为浏览器访问并且在 ip 被禁的时候使用代理 ip]]></description><category></category></item><item><title><![CDATA[【问题解决】Packet for query is too large (1165 > 1024). You can change this value]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/64587042</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/64587042</guid><author>xiaoping0915</author><pubDate>Tue, 21 Mar 2017 23:05:12 +0800</pubDate><description><![CDATA[问题描述：

从字面上看max_allowed_packet 设置过小导致记录写入失败 
mysql根据配置文件会限制server接受的数据包大小。 
有时候大的插入和更新会受max_allowed_packet 参数限制，导致写入或者更新失败。



问题解决：

修改MySQL的配置文件my.cnf,如果你是使用的windows应该是my.ini文件改 
网上的方案：


  max_allo]]></description><category></category></item><item><title><![CDATA[【Python】反爬虫]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/64126575</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/64126575</guid><author>xiaoping0915</author><pubDate>Mon, 20 Mar 2017 15:30:15 +0800</pubDate><description><![CDATA[你被爬虫侵扰过么？当你看到“爬虫”两个字的时候，是不是已经有点血脉贲张的感觉了？千万要忍耐，稍稍做点什么，就可以在名义上让他们胜利，实际上让他们受损失。

一、为什么要反爬虫

1、爬虫占总PV比例较高，这样浪费钱（尤其是三月份爬虫）。

三月份爬虫是个什么概念呢？每年的三月份我们会迎接一次爬虫高峰期。

最初我们百思不得其解。直到有一次，四月份的时候，我们删除了一个url，然后有]]></description><category></category></item><item><title><![CDATA[代理加速 gradle 构建]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/64124082</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/64124082</guid><author>xiaoping0915</author><pubDate>Mon, 20 Mar 2017 12:34:50 +0800</pubDate><description><![CDATA[在项目下的 build.gradle 文件中加入（替换掉）使用阿里云镜像buildscript {
    repositories {
        maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
    }
}allprojects {
    repositories {
        maven{ ur]]></description><category></category></item><item><title><![CDATA[Java中的内存和效率优化（持续更新）]]></title><link>https://blog.youkuaiyun.com/xiaoping0915/article/details/64123754</link><guid>https://blog.youkuaiyun.com/xiaoping0915/article/details/64123754</guid><author>xiaoping0915</author><pubDate>Mon, 20 Mar 2017 11:45:44 +0800</pubDate><description><![CDATA[0.转换字符串在java开发中，经常会有数字与字符串的转换，jdk也给了我们很多转换的方式，他们的效率变现不一a.数字类型转字符串，toString(), valueOf() & + “”    public static void main(String[] args) {
        int loopTime = 100000;
        Integer i = 16516465;]]></description><category></category></item></channel></rss>