lucene 检索数据库索引.doc
文本预览下载声明
lucene 检索数据库索引
上篇文章提到lucene的索引与检索,但是是基于文件的,这次要说的是基于数据库的索引及检索。
进入正题:工程目录在com.lucene下建立data包
DataConnection.java相关数据库链接的信息
SqlService.java数据库操作类
index.java索引类
search.java检索类
test.java测试类
package com.lunece.data;
public class DataConnection{
public static DataConnection getDataConnection(){
return new DataConnection();
}
public static String dbDriver=com.mysql.jdbc.Driver;
public static String dbUrl=jdbc:mysql://localhost:3306/test;
public static String dbUser=root;
public static String dbPassword=*;
}
package com.lunece.data;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
public class SqlServer{
private Connection conn=null;
private Statement sta=null;
//private PreparedStatement pre=null;
//全局通用连接相关信息
public static DataConnection connection=DataConnection.getDataConnection();
public SqlServer()throws Exception{
Class.forName(connection.dbDriver);
conn=DriverManager.getConnection(connection.dbUrl,connection.dbUser,connection.dbPassword);
sta=conn.createStatement();
}
public boolean executeSQL(String sql)throws Exception{
return sta.execute(sql);
}
public ResultSet QueryData(String sql)throws Exception{
return sta.executeQuery(sql);
}
}
package com.lunece.data;
import java.io.File;
import java.io.IOException;
import java.io.Writer;
import java.sql.ResultSet;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.document.Fieldable;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.store.FSDirectory;
import org.apache.lucene.util.Version;
public class index{
public static String INDEXPATH=D:/lunece/index;
public static int createindex(ResultSet rs)throws IOException{
System.out.println(create index loading.);
IndexWriter writer=new IndexWriter(FSDirectory.open(new File(INDEXPATH)),getAnalyzer(),IndexWriter.MaxFieldLength.LIMITED);
try{
w
显示全部