2013年12月22日
摘要: 在eclipse中开发maven项目的时候(Spring架构),总是报这种错误,由于昨天还是好好地,今天就忽然这样了,挑了好久都没用,解决方法记录如下:严重: Error configuring application listener of class org.apache.catalina.deploy.ApplicationListener@193d548java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener at org.apache.catalina.loader. 阅读全文
posted @ 2013-12-22 21:34 瞌睡的美人鱼 阅读(413) 评论(0) 推荐(0) 编辑
2013年12月17日
摘要: 系统运行的第一个进程init(PID为1)由内核产生,以后所有的进程都由fork()创建,PID依次增加进程资源由两部分组成:内核空间进程资源,用户空间进程资源内核空间进程资源包括:进程控制块本身PCB,打开的文件表项files_struct,当前目录,当前终端tty_struct,线程基本信息,可访问的内存地址空间,PID进程号,PPID父进程号,UID用户号,EUID有效用户号等。这些资源只能通过系统调用才能访问,即当前进程退出后只能由另一进程来回收。用户空间进程资源包括:堆,栈,进程的代码段,数据段,可共享访问的库的内存空间。这些资源进程可以直接访问,在进程退出时主动释放。进程状态:内核 阅读全文
posted @ 2013-12-17 16:37 瞌睡的美人鱼 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 首先从solr的启动开始说,solr本身有很多component,在solr启动时回一个一个的调用,每个component都包含一个prepare()方法和一个process()components的逐个调用在solr/core/src/java文件夹下的org.apache.solr.handler.component包SearchHandler.javacomponent构造如下图:当然,我们要研究的纠错存在于Spellcheck Component。在SearchHandler.java中定义了两个循环,对各个component的prepare()方法和process()方法进行调用,代 阅读全文
posted @ 2013-12-17 10:38 瞌睡的美人鱼 阅读(776) 评论(0) 推荐(0) 编辑
2013年12月10日
摘要: 上一篇提到两种对于文件的操作,一种是带缓冲区的(ANSI C),在用户态实现,流的相应资源也都存在与用户空间,无论使用那种缓冲区(全缓冲/行缓冲/无缓冲),最后一定还是会通过内核实现对文件的读写控制,因此在上一张说的fopen(),fclose(),fread(),fwrite()等必然调用了对操作系统的系统调用,而这些在这里对应为open(),close(),fread(),fwrite()。文件操作:1.打开文件:open(文件路径,打开文件的方式即进程对该文件的访问权限,若有新文件创建决定新文件的权限......)成功则返回文件描述符2.关闭文件:close(调用open函数打开文件时返 阅读全文
posted @ 2013-12-10 17:53 瞌睡的美人鱼 阅读(528) 评论(0) 推荐(0) 编辑
2013年12月7日
摘要: 流的格式化输入输出是指:人输入的数据以及最终存储在磁盘上的数据格式不同,所以这些函数实现数据按照指定的格式输入输出,这里所说的指定的格式包括整形(%d)、浮点型(%f)、字符型(%c)、指针(%p)、字符串(%s)、以及忽略某些位某些位(%*,eg:abcde%d%*2d%d,忽略bc)一:printf(),scanf()针对标准输入stdin、标准输出stdoutint c=30printf("the value of c is:%d",c)scanf("%s",a)二:fprintf(),fscanf()适用于任意流FILE *fpfp=fopen( 阅读全文
posted @ 2013-12-07 22:02 瞌睡的美人鱼 阅读(351) 评论(0) 推荐(0) 编辑
2013年12月4日
摘要: 在用户传入搜索词queryString(例如:String queryString = "中国";)suggestionsNumber推荐的最大数量后,调用suggestSimilar方法返回提示词的排序结果suggestions = spellChecker.suggestSimilar(queryString,suggestionsNumber); 下面具体说suggestSimilar()方法,它主要分为以下几步(有一些还不大明白在做什么,在此列出较为明晰的)word是queryString,numSug是suggestionsNumber,ir是用户索引的Index 阅读全文
posted @ 2013-12-04 16:30 瞌睡的美人鱼 阅读(359) 评论(0) 推荐(0) 编辑
2013年12月2日
摘要: 这两个星期菜鸟一直在看solr纠错的配置,发现很多让人崩溃的地方,想请教大家的配置情况以及改进意见~看到的大神们欢迎留言,啊,不,是一定要留言,不胜感激以下是我在solrconfig.xml里面的配置 explicit 10 text spellcheck ******************************************我是华丽的分界线***********************************************************... 阅读全文
posted @ 2013-12-02 16:49 瞌睡的美人鱼 阅读(897) 评论(0) 推荐(0) 编辑
2013年11月30日
摘要: 文件流:根据应用程序对文件的访问方式,即是否存在缓冲区,对文件的访问可分为带缓冲区的文件操作和非缓冲文件操作。非缓冲文件访问方式(POSIX标准系统调用函数),每次对文件进行任意一次读写时都需要使用读写文件系统来处理该操作。执行一次系统调用将涉及CPU状态的切换(从用户太到内核态),这会损耗一定的CPU时间,频繁的磁盘访问对程序的执行效率会造成很大影响。带缓冲区的文件操作(ANSI标准C库函数)建立在底层系统调用之上,采用缓冲机制,这样对磁盘文件进行读操作时可以一次性的从文件中读出大量数据到缓冲区,以后对这部分数据的读写操作就不需要使用系统调用了,从而只需要少量的CPU状态的切换。这样只需要等 阅读全文
posted @ 2013-11-30 11:16 瞌睡的美人鱼 阅读(396) 评论(0) 推荐(0) 编辑
2013年11月27日
摘要: IK分词源代码分析学习——子分词器http://blog.chinaunix.net/uid-20761674-id-3424176.htmlIK分词源代码分析学习——歧义处理http://blog.chinaunix.net/uid-20761674-id-3424553.html创建ik对象时,调用IKSegmenter类的构造函数进行初始化IKSegmenter ik=new IKSegmenter(sr, false); //true代表调用IKSegmenter()构造函数时使用智能分词构造函数如下:public IKSegmenter(Reader input , boolean. 阅读全文
posted @ 2013-11-27 21:08 瞌睡的美人鱼 阅读(940) 评论(0) 推荐(0) 编辑
摘要: 根据在网上查找的资料总结,eclipse环境中调试solr源代码大体上分为三种方式:1.用tomcat启动;即run on server2.run as a java application3.run on jetty(需要装run-jetty-run插件)1、2、3的配置前面步骤均相似(1)下载solr4.3源代码,并编译(shift+鼠标右键->”在此处打开命令行窗口”),然后运行命令:ant eclipse(2)将solr4.3 import到eclipse(java EE IDE)General——existing progects into workplace——指向solr源 阅读全文
posted @ 2013-11-27 16:14 瞌睡的美人鱼 阅读(2139) 评论(1) 推荐(0) 编辑