
java
文章平均质量分 65
itfafa
这个作者很懒,什么都没留下…
展开
-
(转)Lucene打分规则与Similarity模块详解
搜索排序结果的控制Lucnen作为搜索引擎中,应用最为广泛和成功的开源框架,它对搜索结果的排序,有一套十分完整的机制来控制;但我们控制搜索结果排序的目的永远只有一个,那就是信息过滤,让用户快速,准确的找到其想要的结果,丰富用户体验。以前看过一个牛人的博客,总结了4个地方,可对Lucene检索结果的排序进行控制,现在已经记不住。我自己简单整理了下面几个,若有疏漏,欢迎补充:1...原创 2013-02-06 14:08:29 · 204 阅读 · 0 评论 -
lucene 中一个Filed中包含多值的范围查询
package tools.lucene; import java.io.File; import org.apache.lucene.analysis.Analyzer; import org.apache.lucene.analysis.PerFieldAnalyzerWrapper; import org...原创 2013-07-09 09:45:24 · 386 阅读 · 0 评论 -
用MultiSearcher在多索引中进行搜索
/** * 多索引进行查询 */ public void testCreateIndex() { Analyzer analyzer = new IKAnalyzer(); String atext ="明年起,杭州将对两区五县(市)居民发放市民卡,实现杭州市域范围医保“一卡通”凭卡就医。12月底,首批发卡工作将...原创 2013-07-09 09:45:06 · 402 阅读 · 0 评论 -
JAVA发送EMAIL的例子
import javax.mail.*; 02import javax.mail.internet.MimeMessage; 03import javax.mail.internet.InternetAddress; 04import java.io.UnsupportedEncodingException; ...原创 2013-07-09 09:44:47 · 149 阅读 · 0 评论 -
HashSet重复元素判断
HashSet不能添加重复的元素,当调用add(Object)方法时候,首先会调用Object的hashCode方法判hashCode是否已经存在,如不存在则直接插入元素;如果已存在则调用Object对象的equals方法判断是否返回true, 如果为true则说明元素已经存在,如为false则插入元素。例如Person类,重写hashCode方法和equals方法,用以判断传入集合的...原创 2012-10-15 16:37:55 · 457 阅读 · 0 评论 -
MVC框架的映射和解耦
最近在写一个业务上用到的框架,回想起接触过的一些MVC框架,尤其是主要贡献在后端表现层上的那些,它们之间有太 多的相似,在不断解耦的过程中,层数和模块数也越来越多,需要不断引入层与层之间的映射逻辑将不同层次之间关联起来,我们不妨来查看一下这个过程,能否寻 找一些MVC框架的共性和启示。MVC 1到MVC 2模型的进化这个话题有点老。MVC 1在桌面程序中应用较多,业务逻辑当然放在Mode...原创 2013-01-25 21:37:09 · 118 阅读 · 0 评论 -
JAVA提高教程(2)-认识Set集合之HashSet
集合在Java里面的作用非凡,我们常用的有Set,List和Map三种,我们先熟悉一下Set,特别是HashSet的使用1.package collection.lession2;2.1.import java.util.HashSet;1.import java.util.Set;1.1./**1. *认识Set集合之HashSet。2. * Set用来保存不允许重复...原创 2012-10-09 09:44:01 · 99 阅读 · 0 评论 -
SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎
前两天看到了一个中国新闻网,这个网站的搜索form的action是http://search.chinanews.com/search.do便知道是struts1的产物,现在都用struts2了,所以给自己的任务是实现Struts2 SSH分页浏览新闻、Lucene分页高亮排序搜索新闻这个两个功能。 IDE使用的MyEclipse6.5,数据库使用MySQL...原创 2012-11-19 09:55:38 · 145 阅读 · 0 评论 -
Lucene多字段搜索
最近在学习Lucene的过程中遇到了需要多域搜索并排序的问题,在网上找了找,资料不是很多,现在都列出来,又需要的可以自己认真看看,都是从其他网站粘贴过来的,所以比较乱,感谢原创的作者们! 使用MultiFieldQueryParser类即可。示例代码:Java代码 收藏代码 package com.lucene.search; i...原创 2012-11-19 09:53:54 · 90 阅读 · 0 评论 -
lucene3搜索引擎,索引建立搜索排序分页高亮显示, IKAnalyzer分词
package com.zjr.service.impl; import java.io.File; import java.io.IOException; import java.io.StringReader; import java.lang.reflect.InvocationTargetException; ...原创 2013-01-27 19:17:26 · 122 阅读 · 0 评论 -
(转载)Java编程中“为了性能”尽量要做到的一些地方
最近的机器内存又爆满了,除了新增机器内存外,还应该好好review一下我们的代码,有很多代码编写过于随意化,这些不好的习惯或对程序语言的不了解是应该好好打压打压了。 下面是参考网络资源总结的一些在Java编程中尽可能要做到的一些地方。1. 尽量在合适的场合使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要...原创 2013-01-27 19:17:58 · 113 阅读 · 0 评论 -
Compass将lucene、Spring、Hibernate三者结合
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://wemyss.blogbus.com/logs/8014799.html1.概述Compass将lucene、Spring、Hibernate三者的起来,以很低很低的成本快速实现企业应用中的搜索功能。HomePage: http://www.opensymphony.com/compass/ ...原创 2013-02-01 11:02:12 · 116 阅读 · 0 评论 -
Lucene3.0详解
★第一部分:概述1. 我们在很多地方都可以看到搜索功能1, Windows系统中的有搜索功能:打开“我的电脑”,按“F3”就可以使用查找的功能,查找指定的文件或文件夹。搜索的范围是整个电脑中的文件资源。2, Eclipse中的帮助子系统:点击HelpàHelpContents,可以查找出相关的帮助信息。搜索的范围是Eclipse的所有帮助文件。3, 在BBS、BLOG等...原创 2013-02-01 10:57:45 · 154 阅读 · 0 评论 -
Java Web 用户登陆示例代码
实现功能:1、用户登陆、注销2、利用session记录用户登陆信息3、在JSP中展示已登陆用户信息实现原理:登陆后通过判断用户名和密码是否和存储的一致,如果一致,就把用户信息放到session中储存;如果不一致就提示信息,并且返回登陆页面。显示信息页面上固定从session中找用户登陆信息,找到就显示用户信息,没找到就显示登陆框。注销...原创 2013-02-01 09:56:40 · 690 阅读 · 2 评论 -
Java对数函数及Java对数运算
Java对数函数的计算方法非常有问题,然而在API中却有惊人的误差。但是假如运用了以下的方法,用Java处理数字所碰到的小麻烦就可以轻而易举的解决了。 Sun的J2SE提供了一个单一的Java对数方法——double java.lang.Math.log(double),这很轻易使用。请看如下代码: double x = Math.log(5); 等价于:x = l...原创 2013-02-01 09:47:04 · 1717 阅读 · 0 评论 -
Lucene为不同字段指定不同分词器(转)
在lucene使用过程中,如果要对同一IndexWriter中不同 Document,不同Field中使用不同的analyzer,我们该如何实现呢?通过对《lucene in action》的阅读,发现是可以解决这一问题的。lucene可以正对整个IndexWriter对象或者每一个document对象或者特定 Field使用不同的分析器。Java代码 复制代码 Anal...原创 2013-01-31 17:34:37 · 459 阅读 · 0 评论 -
域名管理与解析原理 — 《Java邮件开发详解》读书笔记
一 基本概念1. 域名:域名是由圆点分开一串单词或缩写组成的,每一个域名都对应一个唯一的IP地址,如 www.sina.com。2. DNS:Domain Name System, 域名解析系统。作用:将计算机的IP地址映射成用户友好的域名(主机名),如将 202.108.33.60 映射成 www.sina.com。3. DNS服务器:保存主机名和IP地址的映射关系...原创 2013-01-31 14:56:36 · 148 阅读 · 0 评论 -
优秀的Java工程师需要掌握的10项技能
编程专业相对于计算机领域其他专业来讲,是一门比较难以修炼的专业,此专业如果想要大成,需要修行之人心性极佳,踏踏实实,耐得住寂寞,受得住冷落。所以一位优秀的软件开发工程师是非常难得的。张老师就是编程专业出身,并且有很多从事Java编程的朋友,总结了一下,一位优秀的Java开发工程师需要身怀以下十项技能: 1、语法:必须比较熟悉,在写代码的时候,IDE(Integrated...原创 2013-01-31 14:04:34 · 1300 阅读 · 0 评论 -
Web开发入门不得不看
如今,各种互联网的Web应用程序层出不穷,那么如何快速入门,成长为一个优秀的Web开发工作者呢? 这个问题不容易回答,几乎所有的培训机构都不能清晰地解答。 所以对于Web开发刚刚入门的菜鸟们,我觉得只有通过去做,去实验,学会Web开发,可能是学着学着,实验着实验着就会了。 没有人告诉你如何去做。我学习的时候,我的导师只是给了我一堆视频,一堆文档。我们从明确一个目标开始...原创 2013-01-28 17:31:43 · 141 阅读 · 0 评论 -
lucene之sort
package cn.zqh.lucene.sort;import java.io.IOException;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import org.apache.lucene.analysis.A...原创 2012-11-16 15:06:22 · 145 阅读 · 0 评论 -
Nginx负载均衡
最近迷上了Nginx,真实麻雀虽小,五脏俱全..功能实在强大..nginx不单可以作为强大的web服务器,也可以作为一个反向代理服务器,而且nginx还可以按照调度规则实现动态、静态页面的分离,可以按照轮询、ip哈希、URL哈希、权重等多种方式对后端服务器做负载均衡,同时还支持后端服务器的健康检查。如果只有一台服务器时,这个服务器挂了,那么对于网站来说是个灾难.因此,这时候的负载均...原创 2012-11-16 11:45:20 · 80 阅读 · 0 评论 -
Lucene相关度排序的调整
Lucene的搜索结果默认按相关度排序,这个相关度排序是基于内部的Score和DocID,Score又基于关键词的内部评分和做索引时的boost。默认Score高的排前面,如果Score一样,再按索引顺序,先索引的排前面。那么有人问了,如果我要先索引的排后面怎么办呢?隐士研究了源码后发现这是相当简单的事情。以下代码基于Lucene 2.0。看Sort的默认构造函数,相关度就是SortFie...原创 2012-11-16 11:38:33 · 166 阅读 · 0 评论 -
转载--网页去重方法
在爬虫启动工作的过程中,我们不希望同一个网页被多次下载,因为重复下载不仅会浪费CPU机时,还会为搜索引擎系统增加负荷。而想要控制这种重复性下载问题,就要考虑下载所依据的超链接,只要能够控制待下载的URL不重复,基本可以解决同一个网页重复下载的问题。非常容易想到,在搜索引擎系统中建立一个全局的专门用来检测,是否某一个URL对应的网页文件曾经被下载过的URL存储库,这就是方案。接着要考...原创 2012-07-10 14:43:23 · 197 阅读 · 0 评论 -
通用 Java 文件上传和下载组件的设计与实现
概 述文件上传和下载是 Web 应用中的一个常见功能,相信各位或多或少都曾写过这方面相关的代码。但本座看过不少人在实现上传或下载功能时总是不知不觉间与程序的业务逻辑纠缠在一起, 因此,当其他地方要用到这些功能时则无可避免地 Copy / Pase,然后再进行修改。这样丑陋不堪的做法导致非常容易出错不说,更大的问题是严重浪费时间不断做重复类似的工作,这是本座绝不能容忍的...原创 2012-07-10 14:20:48 · 179 阅读 · 0 评论 -
Java高手:Java性能的十一个用法
private static Credit BaseCredit = new Credit();public static Credit getNewCredit() {return (Credit) BaseCredit.clone();}Java语言习惯用语1。循环■ 在...原创 2012-05-16 11:37:47 · 82 阅读 · 0 评论 -
Eclipse中集成和调试Ant工程
作者:cheungmine 发布于2012-5-10 摘要:使用Ant来构建 Java小型或大型项目的好处是不言而喻的。本文展示如何在Eclipse里集成Ant的工程,并配置使能调试Ant构建脚本build.xml 和.java源代码文件。一般我们把使用Ant构建的Java项目导入到Eclipse里时,会遇到这个问题:调试Ant的bui...原创 2012-05-16 11:21:10 · 88 阅读 · 0 评论 -
Eclipse调试Bug的七种常用技巧
1、条件断点 断点大家都比较熟悉,在Eclipse Java编辑区的行头双击就会得到一个断点,代码会运行到此处时停止。条件断点,顾名思义就是一个有一定条件的断点,只有满足了用户设置的条件,代码才会在运行到断点处时停止。 在断点处点击鼠标右键,选择最后一个"Breakpoint Properties"断点的属性界面及各个选项的意思如下图:2、变量断点 断点不仅能打在语...原创 2012-05-16 11:18:06 · 94 阅读 · 0 评论 -
java下载图片
public void saveToFile(String destUrl, String fileName) { FileOutputStream fos = null; BufferedInputStream bis = null; HttpURLConnection httpUrl = null; U...2012-05-15 13:36:41 · 80 阅读 · 0 评论 -
java 拆分出字符串中年份
public static void main(String[] args) { String strInt="0123456789"; String str = "prospect 772 2009 the brawler syrah-viognier (calaveras county)"; char[] tempChar ...2012-05-15 13:31:45 · 931 阅读 · 0 评论 -
过滤空格字符
public static void replaceBlank() { Pattern p = Pattern.compile("\\s*|\t|\r|\n"); String str="I am a, I am Hello ok, \n new lineffdsa!"; System.out.println("before:"+str); Ma...原创 2012-05-15 11:37:23 · 148 阅读 · 0 评论 -
Solr快速教程
Solr快速教程加载及配置步骤:1.下载最新版本的Solr(当前为v1.4); 下载地址:http://lucene.apache.org/solr/ 选择resource-download下载2.解压到随便一个地方,拿出以下两个文件:解压目录/dist/apache-solr-1.4.0.war;解压目录/example/solr;确保solr目录有以下文...原创 2012-07-17 10:38:25 · 102 阅读 · 0 评论 -
solr部署
1. 认识到solr是作为一个webapp角色;2. 找到下载solr目录dist下的war包,放到tomcat\webapps目录下面3. 启动tomcat;4. tomcat启动后会自动加载这个war包,可以看到webapps下自动生成了solr(因为我把war包名字改成了"solr")目录,打开此目录下的WEB-INF\web.xml,做以下步...原创 2012-07-17 10:41:11 · 81 阅读 · 0 评论 -
向FTP服务器上上传和下传一个文件
程序中需要引入两个库文件import sun.net.*;import sun.net.ftp.*;/**向FTP服务器上上传一个文件*/void putButton_actionPerformed(ActionEvent e) {String server=serverEdit.getText();String user=userEdit.getTex...原创 2012-04-13 13:58:57 · 149 阅读 · 0 评论 -
java环境变量配置
Microsoft Windows XP [版本 5.1.2600](C) 版权所有 1985-2001 Microsoft Corp.C:\Documents and Settings\Administrator>echo %JAVA_HOME%C:\Program Files\Java\jdk1.5.0_13C:\Documents and Settings\Admin...原创 2012-04-13 13:55:30 · 82 阅读 · 0 评论 -
java使用相对路径读取xml文件
一、xml文件一般的存放位置有三个:1.放在WEB-INF下;2.xml文件放在/WEB-INF/classes目录下或classpath的jar包中;3.放在与解析它的java类同一个包中,不一定是classpath;二、相对应的两种使用相对路径的读取方法:方法一:(未验证)将xml文件放在WEB-INF目录下,然后程序代码:InputStream i...原创 2012-04-13 13:55:09 · 246 阅读 · 0 评论 -
java实现动态切换上网IP (ADSL拨号上网) java开发
动态切换IP的实现主是也由Windows的rasdial命令提供的,其实不是java的功劳,java只是调用一下bat脚本而已:rasdial命令: 拨号Java代码 复制代码 语法: rasdial 连接名称 username password 实例: rasdial 我的宽带 hzhz1234567890 dfdfdfdfdf ...原创 2013-04-24 10:06:27 · 202 阅读 · 0 评论 -
JAVA字符串处理函数
Java中的字符串也是一连串的字符。但是与许多其他的计算机语言将字符串作为字符数组处理不同,Java将字符串作为String类型对象来处理。将字符串作为内置的对象处理允许Java提供十分丰富的功能特性以方便处理字符串。下面是一些使用频率比较高的函数及其相关说明。 substring() 它有两种形式,第一种是:String substring(int startI...原创 2013-04-12 09:21:20 · 96 阅读 · 0 评论 -
java 加密
本篇内容简要介绍BASE64、MD5、SHA、HMAC几种加密算法。 BASE64编码算法不算是真正的加密算法。 MD5、SHA、HMAC这三种加密算法,可谓是非可逆加密,就是不可解密的加密方法,我们称之为单向加密算法。我们通常只把他们作为加密的基础。单纯的以上三种的加密并不可靠。BASE64按照RFC2045的定义,Base64被定义为:Base64内容传...原创 2012-07-24 14:28:44 · 88 阅读 · 0 评论 -
使用lucene PrefixQuery 根据拼音前缀查询
PrefixQuery类似于 数据库中的 like 'a%'查询以下是测试代码,这种方式的缺陷是人为的分出了更多的term,目前还在找有没有更优的方法。测试代码: public static String index_path3="D:\\ix3"; public static void main(String[]args) throws Exception{...原创 2012-07-17 10:52:18 · 226 阅读 · 0 评论 -
lucene 中一个Filed中包含多值的范围查询
package tools.lucene; import java.io.File; import org.apache.lucene.analysis.Analyzer; import org.apache.lucene.analysis.PerFieldAnalyzerWrapper; import org...原创 2012-07-17 10:50:31 · 134 阅读 · 0 评论