浏览模式: 标准 | 列表分类:系统工程师

nutch 本地调试通过

1.下载cygwin(貌似有1.2G)

2.设置环境变量NUTCH_JAVA_HOME

3.跳转目录在unix下面用的是cd  到上一级是/

4.bin/nutch 测试安装

5.在nutch的根目录下添加文档url.txt,里面写个url,比如http://blog 01webspace.com 

6.修改conf下面的crawl-urlfilter.txt文件,在# accept hosts in MY.DOMAIN.NAME
+^http://blog.01webspace.com/,改成如是!

7.运行bin/nutch crawl url.txt -dir crawled -depth 3 - threads 4 >& test.log   ,crawled是生成的索引的目录 ,depth为索引深度,threads为线程,text.log是日志放置的地方。

8.等待索引的生成。

9.copy 目录下war文件到web-app,改名为ROOT,改掉以前的ROOT的名字。

10.修改nutch-site.xml ,<nutch-conf>
<property>
<name>searcher.dir</name>
<value>K:\xml\nutch\nutch\crawled</value>
</property>
</nutch-conf>, 该文件在classes里面。

11.访问Http://127.0.0.1:8080 查看效果。

如果出现空指针错误,请查看nutch-site.xml的文件设置。如果出现类似于noclassdef什么的错误,请调整环境变量。

ok,打完收工!下一步,可以修改其中的中文分词的模块了。

BTW:lunece貌似是二元分词法,然后建立索引,如何让中科院的那个分词适用其中,还是一个问题!

Tags: nutch lucene

程序的对接

前台struts,数据处理为hibernate。索引选用的lucene,分词用的中科院的版本,定时为quartz,xml生成为jdom,静态生成选用的freemarker。反正东西是蛮多的,我负责的最为轻松,就是quartz的调试和xml的生成!今天可以开始和他的hibenate对接试试!

统一数据库生成beans,共通没什么问题。

hibernate中一定有一些get方法把数据返回给struts显示。

看样子我只要写一个类。

传给他一个hsql语句,一个生成的xml的文件名称,就可以把数据洗出来。

public Iterator getData throws HibernateException
{
String queryString = "select c from Course as c;

beginTransaction();

Query query = session.createQuery(queryString);

Iterator it= query.iterate();


return it;
}

其实还要sql语句,只是有点地方的方言的味道。

如果我的猜测到这里还没有出错,那么毕业设计中的我的模块就没事情了。

剩下的只是论文的撰写!

ps:居然没有拿到applelew的后台的hibernate的src,失败!

 

quartz常用的时间格式

quartz的介绍就不多说了。

java的timer,在被集成到Spring里面了。

在毕业设计中,可以用这一块来出发页面的静态生成,索引的生成,xml的静态生成。

Expression Meaning
0 0 12 * * ? Fire at 12pm (noon) every day
0 15 10 ? * * Fire at 10:15am every day
0 15 10 * * ? Fire at 10:15am every day
0 15 10 * * ? * Fire at 10:15am every day
0 15 10 * * ? 2005 Fire at 10:15am every day during the year 2005
0 * 14 * * ? Fire every minute starting at 2pm and ending at 2:59pm, every day
0 0/5 14 * * ? Fire every 5 minutes starting at 2pm and ending at 2:55pm, every day
0 0/5 14,18 * * ? Fire every 5 minutes starting at 2pm and ending at 2:55pm, AND fire every 5 minutes starting at 6pm and ending at 6:55pm, every day
0 0-5 14 * * ? Fire every minute starting at 2pm and ending at 2:05pm, every day
0 10,44 14 ? 3 WED Fire at 2:10pm and at 2:44pm every Wednesday in the month of March.
0 15 10 ? * MON-FRI Fire at 10:15am every Monday, Tuesday, Wednesday, Thursday and Friday
0 15 10 15 * ? Fire at 10:15am on the 15th day of every month
0 15 10 L * ? Fire at 10:15am on the last day of every month
0 15 10 ? * 6L Fire at 10:15am on the last Friday of every month
0 15 10 ? * 6L Fire at 10:15am on the last Friday of every month
0 15 10 ? * 6L 2002-2005 Fire at 10:15am on every last friday of every month during the years 2002, 2003, 2004 and 2005
0 15 10 ? * 6#3 Fire at 10:15am on the third Friday of every month
0 0 12 1/5 * ? Fire at 12pm (noon) every 5 days every month, starting on the first day of the month.
0 11 11 11 11 ? Fire every November 11th at 11:11am.

这是官方介绍时间的一个表格,简单易懂,可以用xml进行配置。

ps:xml的生成已经搞定,现在就是要从hibernate的后台取出数据了。

idea快捷键

快捷键,这玩意儿比eclipse要省那么一点内存!

最常用快捷键
1.Ctrl+E,可以显示最近编辑的文件列表
2.Shift+Click可以关闭文件
3.Ctrl+[或]可以跳到大括号的开头结尾
4.Ctrl+Shift+Backspace可以跳转到上次编辑的地方
5.Ctrl+F12,可以显示当前文件的结构
6.Ctrl+F7可以查询当前元素在当前文件中的引用,然后按F3可以选择
7.Ctrl+N,可以快速打开类
8.Ctrl+Shift+N,可以快速打开文件
9.Alt+Q可以看到当前方法的声明
10.Ctrl+W可以选择单词继而语句继而行继而函数
11.Alt+F1可以将正在编辑的元素在各个面板中定位
12.Ctrl+P,可以显示参数信息
13.Ctrl+Shift+Insert可以选择剪贴板内容并插入
14.Alt+Insert可以生成构造器/Getter/Setter等
15.Ctrl+Alt+V 可以引入变量。例如把括号内的SQL赋成一个变量
16.Ctrl+Alt+T可以把代码包在一块内,例如try/catch
17.Alt+Up and Alt+Down可在方法间快速移动
下面的不是很有用
18.在一些地方按Alt+Enter可以得到一些Intention Action,例如将”==”改为”equals()”
19.Ctrl+Shift+Alt+N可以快速打开符号
20.Ctrl+Shift+Space在很多时候都能够给出Smart提示
21.Alt+F3可以快速寻找
22.Ctrl+/和Ctrl+Shift+/可以注释代码
23.Ctrl+Alt+B可以跳转到抽象方法的实现
24.Ctrl+O可以选择父类的方法进行重写
25.Ctrl+Q可以看JavaDoc
26.Ctrl+Alt+Space是类名自动完成
27.快速打开类/文件/符号时,可以使用通配符,也可以使用缩写
28.Live Templates! Ctrl+J
29.Ctrl+Shift+F7可以高亮当前元素在当前文件中的使用
30.Ctrl+Alt+Up /Ctrl+Alt+Down可以快速跳转搜索结果
31.Ctrl+Shift+J可以整合两行
32.Alt+F8是计算变量值

Ctrl+D // 复制上一行或复制选定
Ctrl+Alt+L // 格式化代码
Alt+Shift+Insert // 列编辑

装上UpperLowerCapitalize后
Alt+P // to uppercase
Alt+L // to lowercase
Alt+C // 首字母大写  

Tags: idea

CST格式转GMT格式

在rss2.0的规范中,对于时间的要求比较苛刻,只能是gmt的时间格式。
格林威治时间,而在java的1.5的版本中,并没有toGMTString()这个方法
(以前有,现在没了,让取消了)。
那么,怎样让他按照格式输出呢。

首先来试试util包中的Date这个方法能得到什么东西。
Wed Mar 15 02:02:14 CST 2006

这个是CST的时间格式

ww-mm-dd-hh-mm-ss-yy CST

分析下GMT的时间格式

ww-dd-mm-yy-hh-mm-ss GMT

查api,1.5的,没有看到关于取这些值的函数。或者是我不会找:(

于是没办法了,

只好取得了字符串一个字一个字的取。

这个方法很死板,但是目前我只能想到这个解决方案。

Wed, 15 Mar 2006 03:32:25 GMT

这个是输出的结果,而在date的标准输出里面

输出结果是这个

Wed Mar 15 03:41:34 CST 2006

问题解决一个。rss的输出的时间的一个问题。

import java.util.Date;

/**
 * Created by IntelliJ IDEA.
 * User: Stringlew
 * Date: 2006-3-15
 * Time: 0:38:00
 * To change this template use File | Settings | File Templates.
 */


public class testtime {
    public testtime() {
        Date date = new Date();
        String angel = date.toString();
        String test[] = angel.split(" ");
        int j = test.length;
        String GMT = test[0] + ", " + test[2] + " " + test[1] + " " + test[5] + " " + test[3] + " GMT";
        System.out.print(GMT);


    }
    public static void main(String[] args){
          testtime ts=new testtime();
    }
}

Tags: cst gmt time