<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[球长的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/itufo</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; itufo]]></copyright><item><title><![CDATA[远程登陆没有固定ip的服务器]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/78531690</link><guid>https://blog.youkuaiyun.com/itufo/article/details/78531690</guid><author>itufo</author><pubDate>Tue, 14 Nov 2017 16:14:41 +0800</pubDate><description><![CDATA[本文同步发布于墨客软件： http://www.mercs.xyz/topics/tech/243.html

项目实施中有时会遇到客户的网络没有固定的ip，这时候远程登陆就很麻烦。ip一变就登不上了，需要等待客户去机器终端或路由器上查看最新的ip，非常浪费时间。

这个问题可以用一个脚本和一个定时任务解决。客户机启一个任务，定时向一个有固定ip的服务器发一个请求；服务器的脚本]]></description><category></category></item><item><title><![CDATA[Nutch2 之 GeneratorJob]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/21520381</link><guid>https://blog.youkuaiyun.com/itufo/article/details/21520381</guid><author>itufo</author><pubDate>Wed, 19 Mar 2014 11:27:37 +0800</pubDate><description><![CDATA[版本：Nutch2.2.1

类：GeneratorJob
源码：src/java/org/apache/nutch/crawl/GeneratorJob.java

GeneratorJob从数据库中取出WebPage,执行若干处理后，更新对应的数据库记录。
重点都在这一行里：
//file: src/java/org/apache/nutch/crawl/GeneratorJob]]></description><category></category></item><item><title><![CDATA[Nutch2 之 InjectorJob]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/21519593</link><guid>https://blog.youkuaiyun.com/itufo/article/details/21519593</guid><author>itufo</author><pubDate>Wed, 19 Mar 2014 11:18:36 +0800</pubDate><description><![CDATA[版本： Nutch2.2.1
类：InjectorJob
源码：src/java/org/apache/nutch/crawl/InjectorJob.java

这个类从文本文件(seeds_file)中读取URLs，执行若干初始化操作后，插入到WebPage数据库。


一、　读取、解析种子文件
    seeds_file中每个url占一行，
    而且可以选择设定一些m]]></description><category></category></item><item><title><![CDATA[Nutch2 WebPage写入数据库的过程分析]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/20727597</link><guid>https://blog.youkuaiyun.com/itufo/article/details/20727597</guid><author>itufo</author><pubDate>Fri, 07 Mar 2014 18:56:40 +0800</pubDate><description><![CDATA[版本: Nutch 2.2.1

本文通过InjectJob来追踪webpage的定义、创建、传递、序列化、写入数据库的整个过程。从源码中摘录了重要的代码行，并标明其所在文件名、行号。



1. 定义 schema

schema直接写在源代码里面：

//file: org/apache/nutch/storage/WebPage.java
//line: 42
publi]]></description><category></category></item><item><title><![CDATA[Nutch2 WebPage 字段解释]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/20535539</link><guid>https://blog.youkuaiyun.com/itufo/article/details/20535539</guid><author>itufo</author><pubDate>Wed, 05 Mar 2014 11:53:36 +0800</pubDate><description><![CDATA[id

主键，根据网页url生成(格式：reversed domain name:protocol:port and path),因此，Nutch2只能保存当前网页的状态，而不能保存历史信息。
headers

标准的http headers ，其中包含非打印字符。Last-Modified　等信息可能于判断网页是否需要更新(仅需发一个head请求，而不是下载整个网页)

text]]></description><category></category></item><item><title><![CDATA[VC Webbrowser 控件窗口的隐藏和显示]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/9449787</link><guid>https://blog.youkuaiyun.com/itufo/article/details/9449787</guid><author>itufo</author><pubDate>Wed, 24 Jul 2013 13:45:21 +0800</pubDate><description><![CDATA[一般窗体的隐藏和显示只要这样就行：
explorer.ShowWindow(SW_HIDE);
explorer.ShowWindow(SW_SHOW);



但是如果是webbrowser对象就不行了，第二句会报错，原因是hide后，对象的m_hWnd被释放了，所以必须改成下面的方式：


::ShowWindow(explorer.GetSafeHwnd(), SW_HIDE]]></description><category></category></item><item><title><![CDATA[PHP的反射机制]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/9354561</link><guid>https://blog.youkuaiyun.com/itufo/article/details/9354561</guid><author>itufo</author><pubDate>Wed, 17 Jul 2013 14:20:38 +0800</pubDate><description><![CDATA[介绍：

PHP5添加了一项新的功能：Reflection。这个功能使得phper可以reverse-engineer class, interface,function,method and extension。通过PHP代码，就可以得到某object的所有信息，并且可以和它交互。
反射是什么？
它是指在PHP运行状态中，扩展分析PHP程序，导出或提取出关于类、方法、属性、参数等的详细信]]></description><category></category></item><item><title><![CDATA[利用webkit生成网页截图 1]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/9179611</link><guid>https://blog.youkuaiyun.com/itufo/article/details/9179611</guid><author>itufo</author><pubDate>Wed, 26 Jun 2013 17:03:06 +0800</pubDate><description><![CDATA[最近需要对网页截图，试过很工具，大多只能支持静态页面(我需要css、js、flash、cookie、html5等等统统支持)，有个chrome插件 "WebPage Screenshot"功能是挺不错的，但这种模式应用于服务器端(搜索引擎系统)实在是太丑陋。
         所以，想到利用webkit内核直接生成网页截图。
         目前来看，关键点在这个类里面WebCore::Gr]]></description><category></category></item><item><title><![CDATA[Mockito入门 ]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/83979376</link><guid>https://blog.youkuaiyun.com/itufo/article/details/83979376</guid><author>itufo</author><pubDate>Mon, 01 Aug 2011 15:59:12 +0800</pubDate><description><![CDATA[

Mockito入门

关键字: 单元测试 模拟 
简介

InfoQ-使用Mockito 1.5监视普通对象 写道
Mockito是一个针对Java的mocking框架。它与EasyMock和jMock很相似，但是
通过在执行后校验什么已经被调用，它消除了对期望行为（expectations）的需要。其它的mocking库需要你在执行前记录期望行为
（expectations...]]></description><category></category></item><item><title><![CDATA[[转]Mockito学习1]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/83979354</link><guid>https://blog.youkuaiyun.com/itufo/article/details/83979354</guid><author>itufo</author><pubDate>Mon, 01 Aug 2011 15:15:28 +0800</pubDate><description><![CDATA[
Mockito是一个流行的Mocking框架。它使用起来简单，学习成本很低，而且具有非常简洁的API，测试代码的可读性很高。因此它十分受欢迎，用
户群越来越多，很多的开源的软件也选择了Mockito。要想了解更多有关Mockito的信息，请访问它的官方网
站：http://mockito.org/

在开始使用Mockito之前，先简单的了解一下Stub和Mock的区别。

Stu...]]></description><category></category></item><item><title><![CDATA[软件测试中mock的含义]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/83979338</link><guid>https://blog.youkuaiyun.com/itufo/article/details/83979338</guid><author>itufo</author><pubDate>Mon, 01 Aug 2011 14:51:51 +0800</pubDate><description><![CDATA[        mock测试：
就是在测试过程中，对于某些不容易构造或者 不容易获取的对象，用一个虚拟的对象来创建以便测试的测试方法。
　　
 
        mock对象：
这个虚拟的对象就是mock对象。mock对象就是真实对象在调试期间的代替品。
　　
 
        mock对象使用范畴：
　　真实对象具有不可确定的行为，产生不可预测的效果，（如：股票行情，天气预报...]]></description><category></category></item><item><title><![CDATA[JUnit4 测试类运行方法]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/83979295</link><guid>https://blog.youkuaiyun.com/itufo/article/details/83979295</guid><author>itufo</author><pubDate>Mon, 01 Aug 2011 14:08:40 +0800</pubDate><description><![CDATA[测试类中不需要定义main函数，不能直接用 命令( java [classname] )来运行，以下摘录了JUnit4.8.2 cookbook 中的介绍:
 
 
How do you run your tests and collect their results?

Once you have tests, you'll want to run them. JUnit provid...]]></description><category></category></item><item><title><![CDATA[redhat5.2 下源码安装PHP5.3.3]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/5911713</link><guid>https://blog.youkuaiyun.com/itufo/article/details/5911713</guid><author>itufo</author><pubDate>Tue, 28 Sep 2010 13:05:00 +0800</pubDate><description><![CDATA[<br />      由于目前官方提供的最高版是PHP5.1.6的rpm包，这个版本缺少一些函数，如json_decode等,oracle提供了x86_64下的rpm包，需要的可以这儿下载：<br />http://oss.oracle.com/projects/php/files/EL5/x86_64/<br />      目标机是32位的redhat5.2 所以只好自已编译安装,以下是安装过程：<br /> <br />tar jxvf php-5.3.3.tar.bz2<br />cd php-5]]></description><category></category></item><item><title><![CDATA[AC_CHECK_LIB的问题]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/5891067</link><guid>https://blog.youkuaiyun.com/itufo/article/details/5891067</guid><author>itufo</author><pubDate>Fri, 17 Sep 2010 15:37:00 +0800</pubDate><description><![CDATA[<br />AC_CHECK_LIB的问题<br /><br />
AC_CHECK_LIB([A],[funA]...) 总是报错,找不到库A,可时A明明就在/usr/local/lib下面，而且用nm 可以看到funA，很是怪异，查到最后发现问题出现在libA依赖的库libB上面，相信也有其它人遇到过这类问题，在此写下也给大家提供一个解决思路...]]></description><category></category></item><item><title><![CDATA[PHP利用b+树概念实现树形数组]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/5667295</link><guid>https://blog.youkuaiyun.com/itufo/article/details/5667295</guid><author>itufo</author><pubDate>Sat, 12 Jun 2010 18:44:00 +0800</pubDate><description><![CDATA[PHP利用b+树概念实现树形数组<br />算法特点：利用b+树概念，只用一次循环就可生成树形数组<br /><? <br />
//测试数据 <br />
$ar = array( <br />
array(id=>1,pid=>0), <br />
array(id=>2,pid=>0), <br />
array(id=>3,pid=>2), <br />
array(id=>4,pid=>0), <br />
array(id=>5,pid=>3), <br />
array(id=]]></description><category></category></item><item><title><![CDATA[FreeBSD 7.0 内核源代码 下载]]></title><link>https://blog.youkuaiyun.com/itufo/article/details/3595946</link><guid>https://blog.youkuaiyun.com/itufo/article/details/3595946</guid><author>itufo</author><pubDate>Wed, 24 Dec 2008 13:45:00 +0800</pubDate><description><![CDATA[这是我从FreeBSD 7.0的光盘中提取的 内核源代码，由于限制上传文件大小为15M，所以就分为两部分了，下载后解压到同一目录SYS下……  第一部分： http://d.download.youkuaiyun.com/down/903363/itufo 第二部分： http://d.download.youkuaiyun.com/down/903977/itufo （下不了的话请留言！）]]></description><category></category></item></channel></rss>