lucene 4.10 檢索mysql資料庫
今天拿到一個需求,需要使用lucene 檢索mysql資料庫的一個通訊錄表,需要支援全文全欄位複合檢索.
使用者的表結構如下
(通訊錄mysql表結構)
在網上找了一些例子,由於網上這些例子都不是基於lucene 4的,需要進行改動,這裡我把這裡好的程式碼共享一下..
本專案的例子基於 lucene 4.10 也就是lucene 4.0的最後一個版本,當前最新的版本是lucene 5.0 ,沒注意看有什麼改進..但是作為一個有經驗的老員工來說,使用技術一定不要用最新的,剛釋出的,老一點的技術更穩定,資料更多..
本專案例子需要依賴如下四個jar檔案,大家自己去lucene官網下載即可
專案依賴的jar
package
com.text;
import
java.io.File;
import java.sql.Connection;
import
java.sql.DriverManager;
import
java.sql.PreparedStatement;
import
java.sql.ResultSet;
import
java.sql.SQLException; import
org.apache.lucene.analysis.Analyzer;
import
org.apache.lucene.analysis.standard.StandardAnalyzer;
import
org.apache.lucene.document.Document;
import
org.apache.lucene.document.Field;
import
org.apache.lucene.index.DirectoryReader;
import
org.apache.lucene.index.IndexReader;
import
org.apache.lucene.index.IndexWriter;
import
org.apache.lucene.index.IndexWriterConfig;
import
org.apache.lucene.index.IndexWriterConfig.OpenMode;
import
org.apache.lucene.queryparser.classic.MultiFieldQueryParser;
import
org.apache.lucene.search.BooleanClause;
import
org.apache.lucene.search.IndexSearcher;
import
org.apache.lucene.search.Query;
import
org.apache.lucene.search.ScoreDoc;
import
org.apache.lucene.search.TopDocs;
import
org.apache.lucene.store.Directory;
import
org.apache.lucene.store.FSDirectory;
import
org.apache.lucene.util.Version;
//Lucene 為mysql資料庫表 簡歷完整索引
public
class
LuceneDB {
Connection conn =
null
;
// lucene 連線mysql資料庫
private
final
String URL =
"jdbc:mysql://127.0.0.1:3306/portal?useUnicode=true&characterEncoding=UTF8"
;
相關推薦lucene 4.10 檢索mysql資料庫今天拿到一個需求,需要使用lucene 檢索mysql資料庫的一個通訊錄表,需要支援全文全欄位複合檢索. 使用者的表結構如下 (通訊錄mysql表結構) 在網上找了一些例子,由於網上這 lucene索引並搜尋mysql資料庫 由於對lucene比較感興趣,本人在網上找了點資料,終於成功地用lucene對 MySQL 資料庫 進行索引建立併成功搜尋,先總結如下: 首先介紹一個jdbc工具類,用於得到Connection物件: 告訴你10個MySQL資料庫的小技巧!無論是運維、開發、測試,還是架構師,資料庫技術是一個必備加薪神器,那麼,一直說學習資料庫、學MySQL,到底是要學習它的哪些東西呢? 1、如何快速掌握MySQL? 培養興趣 興趣是最好的老師,不論學習什麼知識,興趣都可以極大地提高學習效率。當然學習MySQL 5.6也不例外。 夯 Python學習總結筆記(10)-- MySQL資料庫操作之SQLAlchemy使用總結SQLAlchemy是一個著名的ORM框架,使用ORM操作資料庫,不用去關注SQL語句本身,這樣可以提高開發的效率。同時使用ORM框架雖然可以減少程式碼編寫的消耗,但是可能也會執行很多冗餘的資料庫操作,降低程式的執行效率。不過總的來說,合理利用ORM框架與資料庫 zabbix系列(二)zabbix3.0.4新增對mysql資料庫效能的監控zabbix3.0.4新增Mysql的監控 zabbix3.0 server已自帶mysql的模板了,只需安裝agent端,然後在web端給主機增加模板就行了。 Agent端操縱 /etc/zabbix/zabbix_agentd.d/userparameter_mysql 從Lucene 4.10.3到Lucene 7.1.0:帶你瞭解版本之間的些許差異一.環境說明: ※Windows 10 v1709 ※IDEA 2017.2.6 ※JDK 1.8.0_144 ※Lucene 7.1.0 二.哪裡有差異 因本人能力有限,所以也只是放出我在更新版本的時候,專案中用到的需要升級的地方,其他還未研究. 菜鳥學資料庫——Windows 10安裝MySQL 8.0.12 解壓版文章目錄 下載 解壓 配置環境變數 初始化 安裝、啟動服務 修改密碼 結束 下載 下載地址 解壓 解壓到你想要的位置 配置環境變數 新建 MYSQL_HOME ,對應的值為你剛剛解壓的目錄,如 ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.0.10' (111) 客戶端連線 centos 7 mysql 資料庫失敗參考 https://stackoverflow.com/questions/1673530/error-2003-hy000-cant-connect-to-mysql-server-on-127-0-0-1-111 排查了 /etc/my.cnf 裡面的 bin Mysql資料庫學習(4)階段性完結-- 倒序輸出全部使用者的許可權資訊 SELECT * from users order by powers desc -- 統計女生人數,靈活使用count,看題目要求,你要計算的是什麼? SELECT COUNT(sid) FROM `student` WHERE sse 5.4 MySql資料庫_ORM對映1. 【強制】在表查詢中,一律不要使用 * 作為查詢的欄位列表,需要哪些欄位必須明確寫明。 說明: 1 ) 增加查詢分析器解析成本。 2 ) 增減欄位容易與 resultMap 配置不一致。 3)無用欄位增加網路消耗,尤其是 text 型別的欄位。 2. 【強制】 POJO 類的布林屬性不能加 is python爬蟲系列(4.3-資料儲存到mysql資料庫中)一、如果你對mysql資料庫還不太熟悉 二、基本操作 1、在python中使用pymysql連線mysql 2、安裝包 pip3 install pymysql 3、定義一個建立資料庫的方法(或者手動、SQL語句建立資料庫) # 定義一個建立資料庫的函 MySQL資料庫(一)__2018.10.291.模糊查詢:SELECT *FROM info WHERE 密碼1 LIKE'%89%'; 資料庫通過SQL語言來管理。 DDL:資料定義語言 DML:資料操作語言 DQL:資料查詢語言 DCL:資料控制語言 整合開發環境:MAMP、MapServer。 通過寫一些SQ 絕對乾貨,4分鐘插入1000萬條資料到mysql資料庫表轉:https://www.cnblogs.com/fanwencong/p/5765136.html 我用到的資料庫為,mysql資料庫5.7版本的 1.首先自己準備好資料庫表 其實我在插入1000萬條資料的時候遇到了一些問題,現在先來解決他們,一開始我插入100萬條資料時候報錯,控制 【搞定MySQL資料庫】之事務的4種隔離級別詳解資料庫事務的隔離級別有4種,由低到高分別為Read uncommitted 、Read committed 、Repeatable read 、Serializable 。而且,在事務的併發操作中可能會出現髒讀,不可重複讀,幻讀。下面通過事例一一闡述它們的概念與聯絡。 1、讀未提交 CentOS 7.4安裝 MySQL資料庫CentOS 7 版本將MySQL資料庫軟體從預設的程式列表中移除,用MariaDB代替了,MariaDB資料庫管理系統是MySQL的一個分支,主要由開源社群在維護,採用GPL授權許可。開發這個分支的原因之一是:甲骨文公司收購了MySQL後,有將MySQL閉源的潛在風險,因此社群採用分支的方式來避開這個風險。 mysql學習(4)python操作資料庫整理了一下前面3期學的內容後,現在練習使用python去操作資料庫 #!python3# coding:utf-8import pymysqlclass mysql_option(): def __init__(self, host, port, username, pwd, **kwargs): mysql資料庫學習筆記10-事務、檢視、索引事務 ============================================ *) 事務是資料操作的最小單元 *) 多個數據增刪改操作,完成的一項業務處理 *) 如果事務事務成功,其中每一項 菜鳥學習資料庫(七)——Windows 10安裝MySQL 8.0.12 解壓版下載 下載地址 解壓 解壓到你想要的位置 配置環境變數 新建 MYSQL_HOME ,對應的值為你剛剛解壓的目錄,如D:\mysql-8.0.12-winx64。在path中新增 %MYSQL_HOME%\bin 。 初始化 在MySQL根目錄下新建 my. MYSQL資料庫事務4種隔離級別及7種傳播行為事務的特性: 原子性:事務的不可分割,組成事務的各個邏輯單元不可分割。 一致性:事務執行的前後,資料完整性保持一致。 隔離性:事務執行不應該受到其他事務的干擾。 永續性:事務一旦結束,資料就持久化到資料庫中。 檢視/設定隔離級別 檢視:SELECT @@tx mysql學習【第4篇】:資料庫之資料型別 資料庫之資料型別資料庫之資料型別 首先補充點了解的小知識; select * from mysql.user #顯示出來亂了 select * from mysql |