摘要:
一,概念1、 Lucene相关排序流程 找到关键词匹配的文档集合---->文档集合每个文档计算检索相似度----->对文档集合进行排序2、 Lucene相关类 ① Query类:一个抽象类, Lucene检索结果最终评分的总控制中心。其它评分有关的类和对象都是由 Query类来管理和生产。② Weight类接口:定义 Query权重计算的一个实现接口,可以被重用。 Weight类可以用来生成 Scorer类,也可以解析评分的详细信息,另外还定义了获取 Query权值的方法。③ Scorer类: Lucene评分机制的核心类。类的定义是抽象类,提供的一些抽象基本的计分功能方法提供所有 阅读全文
摘要:
最近在帮同学弄一个东西,无奈需要研究一下lucene,在这里笔记一下叨。大牛绕行……一,环境搭配 下载lucene 2. 9.4解压到任何一个地方。 然后在IDE中新建一个Java工程,将之前解压的文件夹下的lucene-core-2.9.4.jar 添加到库中。(工程右键属性,库,添加jar)二,入门级例子及讲解 1)建立索引 为了对文档进行索引,Lucene 提供了五个基础的类,他们分别是 Document, Field, IndexWriter, Analyzer, Directory。下面我们分别介绍一下这五个类的用途: Docu... 阅读全文
摘要:
创建Rodent(啮齿动物):Mouse(老鼠),Gerbil(鼹鼠),Hamster(大颊鼠)等的的一个继承分级结构。在基础类中,提供适用于所有Rodent的方法,并在衍生类中覆盖它们,从而根据不同类型的Rodent采取不同的行动。创建一个Rodent数组,在其中填充不同类型的Rodent,然后调用自己的基础类方法,看看会有什么情况发生。解决方法:package com.tangle.polymorphic;class Rodent {void nightAction(){System.out.println("Rodent.neghtAction()");}}class 阅读全文
摘要:
在javascript中数组是引用传递的。先来看一段代码:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html> <head> <title>数组</title> <script type="text/javascript"> function xxx(ab) { ab = 10; } var cd = 20; xxx(cd); window.alert(cd); function yyy(arr) 阅读全文
摘要:
什么是拦截器(Interceptor)拦截器是struts2框架最重要的特性之一。它可以让你在Action 方法执行前后(Result执行之后)进行一些功能处理。在前面学习Action和学习Result的时候我们就已经开始学习拦截器了,因此现在我们对如何使用它已经不陌生了。在学习Spring的时候我们会接触到一种设计思想,叫做面向切面编程(AOP)。也就是说我们将一些通用的功能组件抽取出来,我们在功能模块中不需要编写这些与逻辑功能无关的代码,然后我们通过某种方式(动态代理)将这些通用组件的功能附加到我们的功能模块上。Struts2中的拦截器就和这种模式差不多,Strtus2框架会将我们在配置文 阅读全文
摘要:
一,概述 问题描述:如何生成0~n-1内的m个随机整数(不重复) 需求:按序输出,并且保证每个子集被选中的可能性相等。 1)给出下面代码#include "stdio.h"
#include "stdlib.h"
#include "time.h" void getRandNumber(int m,int n)//在0 -- n-1 中挑选m个 随机数 { srand(time(NULL));//这个很关键 int i,j; for(i=0;i<n;++i) { if( rand()%(n-i) < m) { printf 阅读全文
摘要:
// 判断链表中是否有环bool IsExitLoop(LinkList *head){ LinkList *pslow = head; LinkList *pfast = head; while(pfast != NULL && pfast->next != NULL) { pslow = pslow->next; // 每次前进一步 pfast = pfast->next->next; // 每次前进二步 if(pslow == pfast) // 两个指针相遇,说明存在环 return true; } return false; // 没... 阅读全文
摘要:
异常映射我们知道在action的execute方法签名中定义了可以抛出任何类型的异常。至于这个异常抛给了谁,那当然是struts2框架了,如果我们没有设置响应的策略,那么struts2也不会对异常进行处理,又直接抛给web容器了。如果我们需要Aaction在发生异常时跳转到指定的提示页面,那么我们当然可以在action中使用try..catch语句来返回不同的结果,但是Struts2为我们提供了更加方便的方式,那就是异常映射。我们只需要在配置文件中进行一些配置,就可以省去action中的try。。catch语句块。配置的方式就是在<action>元素中使用<exception 阅读全文
摘要:
Message Cursors 消息游标A common problem in previous versions of ActiveMQ wasrunning out of RAM bufferwhen using non-persistent messaging.在之前版本的ActiveMQ版本中,一个普遍的问题是使用非持久化消息传送时出现RAM缓冲耗尽的情况。Beginning with ActiveMQ 5.0.0, there is a new memory model that allowsmessages to be paged in from storage when spac 阅读全文
摘要:
大多数情况下我们的用例可以被分成两个部分。一是我们需要改变和查询应用程序的状态,而是需要呈现和更新应用程序的视图。在Struts2中Action管理应用程序的状态,Result Type管理视图。Rsult是什么简单的说Result就是Action方法执行完毕之后返回的一串字符串,他指示出Action执行完之后的下一个页面在哪里,具体页面的位置是我们在struts.xml中配置的,就是<result>子元素,例如我们在前面UserAction中配置的Result:<actionname="*User"class="action.UserActio 阅读全文
摘要:
Extjs3.3.1一个简单的布局,和样式最后完成效果:具体JS代码://初始化单选按钮组 var districtTypeRadioGroup= {xtype: 'fieldset', height:23, fieldLabel: '地域统计类型', width:260, defaultType: 'radio', layout:'column', style:'border:1px gray solid;padding:0px;margin:0px;padding-top:0px;padd... 阅读全文
摘要:
一、队列队列是一种特殊的线性表,它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。二、双端队列双端队列是只既可以在表的前端进行插入和删除操作,又可以在表的后端进行插入和删除操作。三、ArrayDeque的实现Java中的双端队列是用数组实现的,类的全限名称是java.util.ArrayDeque,该类的声明如下:public class ArrayDeque<E> extends AbstractCollection<E>implements Deque 阅读全文
摘要:
最近学习ActiveMq,昨日查看其配置文件activemq.xml的时候,被一行注释引到了http://activemq.apache.org/producer-flow-control.html页面,感觉挺有用,遂翻译之保存成文。作为自己的第一篇译作,必有诸多不妥之处,故附上原文作对照,欢迎拍砖。Producer Flow Control生产者流量控制In ActiveMQ 4.x flow control was implemented using TCP flow control. The underlying network connection of throttled consu 阅读全文
摘要:
昨天在一个群里面一个群友问道final 方法可不可以重载,我不假思索的说final 方法不能继承不能重载。后来晚上睡不着觉想想总觉得不对头,翻翻书一看自己简直就是胡说八道,才意识到这些基础概念的东西时间久了不深究很容易模糊变得模棱两可,尤其对于自己这种学东西不求甚解的人来说更是家常便饭。带着昨天血淋淋的教训,决定重头来过,今天这篇小笔记就算是一个开始吧! 一.重载 java的方法重载,就是在类中可以创建多个方法,它们具有相同的方法名,但具有不同的参数类型列表。java方法重载的典型应用就是java构造器的使用,方法重载也是java多态性的重要表现。 下面的例子援引《... 阅读全文