网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > JAVA > 新手入门 > 基础入门 > apache lucene的一个简单实例  

apache lucene的一个简单实例

2008-07-15  作者:bitsCN整理  来源:中国网管联盟  点评 投稿 收藏

欢迎进入Java社区论坛,与200万技术人员互动交流 >>进入

    就像每个程序都有一个Hello World来让人体验它一样,lucene也可以很简单的提供一个实例。如下(来自lucene in action的例子)有两个类组成: 一个是建立索引 
    import java.io.File; 网管联盟bitsCN_com

    import java.io.FileReader;

网管网www_bitscn_com

    import java.io.IOException;

网管联盟bitsCN_com

    import java.util.Date; 网管论坛bbs_bitsCN_com

    import org.apache.lucene.analysis.standard.StandardAnalyzer; 中国网管论坛bbs.bitsCN.com

    import org.apache.lucene.document.Document; 网管网www.bitscn.com

    import org.apache.lucene.document.Field; 网管bitscn_com

    import org.apache.lucene.index.IndexWriter; 网管联盟bitsCN_com

 

中国网管联盟bitsCN.com

    public class Indexer { 网管论坛bbs_bitsCN_com

      public static void main(String[] args) throws Exception { 网管bitscn_com

        if (args.length != 2) {

网管网www.bitscn.com

          throw new Exception("Usage: java " + Indexer.class.getName() + " <index dir> <data dir>"); 网管下载dl.bitscn.com

        }

网管u家u.bitsCN.com

        File indexDir = new File(args[0]); 网管bitscn_com

        File dataDir = new File(args[1]);

中国网管论坛bbs.bitsCN.com

        long start = new Date().getTime(); 网管论坛bbs_bitsCN_com

        int numIndexed = index(indexDir, dataDir); 网管联盟bitsCN@com

        long end = new Date().getTime(); 网管u家u.bitsCN.com

        System.out.println("Indexing " + numIndexed + " files took " + (end - start) + " milliseconds");

网管联盟bitsCN@com

      } 网管论坛bbs_bitsCN_com

  网管网www.bitscn.com

      // open an index and start file directory traversal

网管联盟bitsCN_com

      public static int index(File indexDir, File dataDir) throws IOException { 网管u家u.bitscn@com

        if (!dataDir.exists() || !dataDir.isDirectory()) {

中国网管论坛bbs.bitsCN.com

          throw new IOException(dataDir + " does not exist or is not a directory"); 网管网www.bitscn.com

        }

网管bitscn_com

        IndexWriter writer = new IndexWriter(indexDir, new StandardAnalyzer(), true); 网管网www_bitscn_com

        writer.setUseCompoundFile(false); 中国网管论坛bbs.bitsCN.com

        indexDirectory(writer, dataDir);

网管论坛bbs_bitsCN_com

        int numIndexed = writer.docCount();

网管联盟bitsCN@com

        writer.optimize(); 网管论坛bbs_bitsCN_com

        writer.close();

网管联盟bitsCN@com

        return numIndexed;

中国网管联盟bitsCN.com

      }

网管联盟bitsCN_com

 

网管联盟bitsCN_com

      // recursive method that calls itself when it finds a directory 网管联盟bitsCN_com

  网管论坛bbs_bitsCN_com

网管网www.bitscn.com


TAGs   实例   简单   一个       import   new   File   indexDir   if   static      
 上一篇:Java的DES算法实现   下一篇:Java编程基础之多维数组使用示例
apache lucene的一个简单实例 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: