-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Lucene搜索引擎開發進階實戰

( 簡體 字)
作者:成龍 著類別:1. -> 程式設計 -> 搜索引擎
譯者:
出版社:機械工業出版社Lucene搜索引擎開發進階實戰 3dWoo書號: 40757
詢問書籍請說出此書號!

缺書
NT售價: 295

出版日:1/1/2015
頁數:216
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787111488422
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

網技術的發展,搜索引擎相關的應用也越來越普遍。很多開發人員開始不僅僅是關注如何在一個簡單的頁面中輸入“廈深高鐵開通”點擊“百度一下”查詢自己想要的結果了,而且對網頁背后的搜索引擎技術產生了濃厚的興趣,Lucene等一系列相關的搜索引擎原理和技術應用吸引了他們的目光。目前很多學校還沒有專門開設搜索引擎相關的專業,隨著市場需求越來越大,開發人員甚至需要從零基礎開始去探索并應用此技術開發搜索引擎,眾多企業、政府機關、學校等也紛紛借助此項技術開發出適合自身單位性質的搜索模塊,進而為更便捷、更準確、更專業地獲取資訊提供了更好的平臺。

為什么寫這本書

隨著信息時代的快速發展,搜索引擎相關技術也越來越受到關注。小至個人,大至集團,甚至一些國家,都投入了大量的人力、物力和財力來研究相關技術,尋找技術性的突破,因此也導致了市場需求越來越大,很多公司都在尋求相關的技術人員來開發符合自身要求的搜索引擎。搜索引擎的廣泛開發和使用,致使網上出現了越來越多的搜索引擎相關實例、說明及介紹,部分對此技術感興趣的讀者(特別是一些初學者)常會從別人的博客或者論壇中“挖掘”可用代碼或文章,但由于未思考和驗證,從而導致應用實例出現一大堆錯誤,這時,他們卻不知道如何改正和完善,浪費了寶貴的時間。

目前市面上關于搜索引擎的書已有不少,比如很經典的《Lucene實戰》,已經出版了第二版,主要是寫給對搜索技術比較熟悉的開發人員的;《搜索引擎基礎教程》,給讀者提供了入門的基礎知識,包括很多概念性的東西,但沒有將進階的系統性方法展示給讀者。當有些讀者急需進行開發時,他們需要一個系統性的方法,但找不到一本合適的書。此時,他們可能需要在了解概念的基礎上掌握開發技巧,快速上手,而這正是筆者編寫本書的出發點。

本書將通過系統化的概念進行引導,然后提供基礎性開發的實戰,最后深入分析一些重要代碼的組成,幫助讀者真正掌握搜索引擎開發技術。本書更重要的一個特點是,筆者將通過自己的開發經驗給廣大的讀者提供一些經過實踐驗證的正確結論,以及個人在實踐中的一些心得和體會,希望給大家帶來觸發和靈感。

本書面向的讀者

有人可能會擔心,我只是對Lucene搜索引擎技術有興趣或略懂皮毛,不知是否能看懂這本書?如果你屬于以下學習者中的任一類,那么恭喜你,你可以以本書作為參考,進行相關的學習和研究。

有Java基礎,剛接觸搜索引擎開發的在校學生和編程者

本書針對有Java基礎,且剛接觸搜索引擎的學習者(包括企業員工和在校學生),旨在提供一個持續的、能從基礎知識著手并逐步深入學習的過程。讓你輕松地面對基礎問題和學習過程中遇到的難點,從而提高對搜索引擎的認知和實際應用能力,進入到一個相對比較深入的研究中去。

在Lucene搜索引擎開發過程中遇到疑問的編程者

書中內容包括筆者從切身的實戰中不斷領悟和總結出來的一些疑難解答。從筆者了解到的情況來看,部分初學者在遇到問題時,會去論壇或者別人的文章中尋找解決辦法,但有時候,事與愿違,他們花費了不少時間,卻沒找到正確答案,沒有找到問題的根結所在。而本書正好針對此類“疑難雜癥”提供了代碼和錯誤分析,旨在提供一個清晰的解決思路,在幫助他們找到方法的同時,也希望給開發人員提供新的靈感。

在探索搜索引擎中層技術的開發人員

筆者在書中提出了一些建設性的意見和方向,希望以書為媒介,與大家共同探討和研究,從而發現新的問題,提出新的解決方案。

如何閱讀本書

本書采用的編寫模式是逐層深入,從基礎,到技術,到疑點難點的剖析,其中最大的特色是筆者結合了自身的實戰,筆者在實際的開發過程中結合開發實例,總結了一些新的開發技巧,整合了開發思路,更對以前一些錯誤的技術點和代碼文章等進行了驗證并更正說明。所以讀者閱讀時,只要按照本書的編排順序,從基礎知識逐層深入學習,從基礎到疑難技術,就一定能在夯實基礎的同時,很快掌握好知識。相信大家通過這個清晰、完整、簡潔易懂的指導手冊能更好地把此技術應用到實際工作中,享受開發的樂趣!

致謝

本書能夠順利完成且與大家如期見面,要感謝很多單位和個人。首先要感謝機械工業出版社,給予這樣一次與大家分享和共同學習的機會,同時非常感謝楊繡國編輯,有她不斷的幫助和支持,才能讓這本書順利完成。還要感謝在此書寫作過程中給予我鼓勵的家人和朋友,以及給予我技術幫助的同事,感謝此書的校對和審稿老師,最后還要感謝默默支持本書寫作的人士。

搜索引擎本來就是一門新興的技術,我和大家一樣,也是在學習中不斷提升。本書的內容源于自己的切身實踐,在編寫過程中,難免有不成熟和不完善的地方,衷心地希望能得到大家的支持,熱忱地歡迎并期望廣大的同行和學者能給予寶貴意見或建議。可以通過以下方式聯系筆者:

電子郵箱:longer200707@126.com

博客地址:www.baidu.com/p/jisiwoa

微信二維碼:
內容簡介:

信息時代的快速發展,搜索引擎的相關技術也越來越受到關注。各個領域都在爭相引入和開發符合自身需求的搜索引擎,并投入大量人力、物力和財力來對其進行研究,從而尋找技術性的突破。對于開發人員來說,如何高效、順利地實現搜索引擎開發,如何正確地應用搜索引擎開發符合需求的產品,如何快速地學習和提升自身的技能等是他們希望了解和掌握的內容。本書立足于這些疑問,通過系統化的概念引導,輔以開發實戰案例,并結合一些代碼片段,來幫助讀者掌握并運用Lucene進行搜索引擎開發。

本書主要內容和特色:
結合筆者自身的開發經歷對Lucene搜索引擎開發進行系統全面講解,從基礎到技巧,從概念到疑難解析,從現狀到未來展望,循序漸進,逐層深入。
涵蓋理論與實戰內容,結合實踐經驗,整理開發思路,指導零基礎的讀者盡快入門,縮短其學習和開發時間,并快速把Lucene搜索引擎運用于實際工作。
不僅介紹實踐中常見的開發實用技巧,還從思路和方法上給出詳細的總結和歸納,同時給出大量實踐案例。
針對網上流傳的技術問題進行驗證,對Lucene搜索引擎開發中的難點和疑點進行剖析,幫助廣大Lucene愛好者少走彎路,學習到更多的知識。

本書結合筆者的實際開發經驗,總結了一些新的開發技巧和開發思路,并對網上流傳的一些錯誤技術點和代碼進行驗證,同時給出正確的思路,旨在給開發者提供一本清晰、完整、易懂的指導手冊。本書既可為零起點的Lucene初學者提供系統全面的學習指導,也可幫助有相關經驗的開發者解決在開發過程中遇到的一些難題和疑惑。
全書共12章,分為四部分,第一部分首先介紹網絡爬蟲和Web搜索,然后講述Lucene的概念和架構;第二部分通過一個小實例,并結合為文本創建索引來講解其中的一些方法和類;第三部分主要基于數據庫搜索創建搜索引擎實例,闡述技術疑難問題,討論如何建立工程類的索引,如何使用分詞技術等,并對創建索引過程中的jar包進行解析,然后介紹搜索引擎開發中關鍵的查詢方法和高亮顯示技術,以及查詢結果排序和詞頻統計的相關知識,最后概述性能優化(包括代碼優化、索引優化以及備份和恢復)等相關知識;第四部分總結目前的一些技術,并對未來的一些技術發展進行展望。
目錄:

前 言

第1章 網絡爬蟲策略 1

1.1 信息時代的飛躍 1

1.1.1 搜索引擎的出現 1

1.1.2 搜索之網絡爬蟲的由來 4

1.2 網絡爬蟲 6

1.2.1 網絡爬蟲的基礎框架 6

1.2.2 網絡爬蟲的策略分析 8

1.2.3 暗網獲取 11

1.2.4 分布式爬蟲 12

1.3 實現Web搜索 13

1.3.1 Web搜索的概念 13

1.3.2 經典小實例展示 13

1.4 疑難解析 18

1.4.1 本節技術概念 18

1.4.2 實例疑難解析 19

1.5 實踐心得 19

1.5.1 如何快速實現Web搜索 19

1.5.2 如何解決和發現代碼錯誤 20

1.6 本章小結 21

第2章 搜索引擎技術中的Lucene 22

2.1 Lucene到底是什么 22

2.1.1 Lucene的由來 22

2.1.2 Lucene的概念 23

2.1.3 Lucene的適用范圍 23

2.2 Lucene的架構 24

2.2.1 Lucene=“完整的搜索程序”嗎 26

2.2.2 搜索和索引組件介紹 27

2.2.3 其他模塊 28

2.2.4 Lucene與應用的完美結合 29

2.3 Lucene小程序 29

2.3.1 創建索引 29

2.3.2 搜索索引 34

2.4 實踐心得 35

2.4.1 實現創建和搜索的技術解析 36

2.4.2 實例創建過程中的個人心得 36

2.5 本章小結 36

第3章 創建索引實例 37

3.1 開發前的軟硬件準備 37

3.1.1 開發語言和專業基礎 37

3.1.2 開發環境基礎 38

3.2 對文本文檔進行索引 41

3.2.1 新建文本文檔 41

3.2.2 基礎的索引代碼 43

3.2.3 索引結果 43

3.3 實例中用到的類和關鍵詞 44

3.3.1 實例中涉及的類 44

3.3.2 實例中涉及的關鍵詞 46

3.4 本章技術要點和關鍵點 51

3.4.1 本章技術要點 51

3.4.2 本章關鍵點 52

3.4.3 技術突破點 52

3.5 開發中的個人心得分享 53

3.6 本章小結 53

第4章 初建索引 54

4.1 建立數據庫索引的前提和意義 54

4.1.1 建立數據庫索引的前提 54

4.1.2 建立數據庫索引的基本條件 55

4.1.3 建立數據庫索引的意義 57

4.2 建立數據庫索引實例 58

4.2.1 新建索引類 58

4.2.2 實例核心代碼示例 66

4.3 實例中重要的工具:Luke 70

4.3.1 什么是Luke 70

4.3.2 Luke的作用 70

4.4 解決疑難問題的個人心得 71

4.4.1 多樣化實例的參考 72

4.4.2 案例分析 74

4.5 SQL Server 2005、SQL Server 2008以及Oracle數據庫的區別 75

4.6 本章小結 76

第5章 分詞技術詳解 77

5.1 分詞的定義和意義 77

5.2 英文分詞介紹 78

5.3 中文分詞解析 80

5.3.1 中文分詞的目的 80

5.3.2 中文分詞的意義 80

5.3.3 中文分詞的方法 82

5.4 實例的分詞方法剖析 86

5.4.1 IKAnalyzer的誕生 86

5.4.2 IKAnalyzer的配置方法 86

5.4.3 IKAnalyzer的使用 88

5.5 分詞技術的廣泛應用 89

5.5.1 搜索引擎網站的分詞技術應用 90

5.5.2 分詞技術深入各個領域 91

5.6 實踐見解 92

5.6.1 關于分詞的問題 92

5.6.2 關于搜索引擎分詞和查找的個人心得 93

5.7 本章小結 94

第6章 jar包應用詳解 95

6.1 jar包的定義 95

6.2 基本的jar包介紹 96

6.2.1 連接SQL Server的jar包 97

6.2.2 Lucene常用的jar包 98

6.3 實例中的分詞jar包IKAnalyzer3.2.8 98

6.3.1 概念 98

6.3.2 適用范圍和基本配置要求 99

6.3.3 使用案例分析 100

6.4 實例中的其他jar包應用 102

6.4.1 實例包含的其他jar包 102

6.4.2 適用范圍和案例分析 103

6.5 jar包的調用方法 103

6.6 擴展:如何生成jar包和運行jar包 104

6.7 實踐分享 106

6.7.1 如何在自己的項目中靈活運用jar包 106

6.7.2 jar的路徑問題 107

6.7.3 jar包中class文件的反編譯 108

6.8 本章小結 109

第7章 構建應用程序的實現 110

7.1 建立實例的項目 110

7.1.1 src目錄 110

7.1.2 webroot目錄 116

7.2 詳解擴展詞典和停止詞 121

7.2.1 為什么需要擴展詞典和停止詞 121

7.2.2 擴展詞典的應用 122

7.2.3 停止詞應用 122

7.3 應用程序測試 124

7.3.1 應用程序在MyEclipse下的調試 124

7.3.2 搜索結果的分頁技術 125

7.3.3 實現界面搜索 129

7.4 開發過程中的疑難問題分享 129

7.4.1 停止詞的準確應用 130

7.4.2 擴展詞典問題 130

7.4.3 界面分頁顯示的實例分析 131

7.4.4 localhost與127.0.0.1的異同 131

7.4.5 src目錄和webroot目錄 132

7.5 本章小結 132

第8章 查詢方法的實現 133

8.1 查詢的概念和意義 133

8.1.1 搜索引擎實現查詢的概念 133

8.1.2 搜索引擎查詢的意義 136

8.2 查詢的分類 136

8.2.1 完全匹配查詢 136

8.2.2 模糊查詢 137

8.2.3 多域查詢 138

8.2.4 通配符查詢 140

8.2.5 其他查詢 140

8.2.6 組合查詢 142

8.3 實例分析 142

8.3.1 完全匹配查詢實例解析 142

8.3.2 模糊查詢實例分析 143

8.3.3 多域查詢實例分析 144

8.3.4 通配符查詢實例分析 145

8.3.5 其他查詢實例及分析 146

8.3.6 組合查詢實例及分析 146

8.4 實踐過程中的重難點解析 148

8.4.1 使用什么查詢方法 148

8.4.2 模糊查詢案例剖析 149

8.4.3 Occur.MUST與Occur.SHOULD 150

8.5 本章小結 150

第9章 高亮顯示技術 151

9.1 高亮顯示的概念和目的 151

9.1.1 高亮顯示的概念 151

9.1.2 高亮顯示的目的 152

9.2 高亮顯示的模塊介紹 152

9.2.1 高亮顯示的步驟 152

9.2.2 高亮顯示的重要模塊 154

9.2.3 其他相關內容 155

9.3 高亮實現搜索結果 156

9.3.1 高亮顯示的實例 156

9.3.2 高亮顯示的搜索結果 159

9.3.3 高亮顯示界面效果 161

9.4 高亮顯示的應用 162

9.5 高亮顯示的技術疑難分析 163

9.5.1 如何解決高亮查詢結果顯示不完全的問題 163

9.5.2 高亮顯示的對應問題解析 164

9.6 本章小結 165

第10章 結果排序和詞頻統計 166

10.1 排序和詞頻統計概念 166

10.1.1 什么是搜索結果排序 166

10.1.2 搜索結果排序的意義 167

10.1.3 什么是詞頻統計 168

10.1.4 詞頻統計的意義何在 168

10.2 排序分類 169

10.2.1 根據域值排序 169

10.2.2 索引順序排序 170

10.2.3 根據相關性排序 170

10.2.4 根據詞頻率排序 171

10.2.5 其他 172

10.3 實例分析 172

10.3.1 根據域值排序的實例解析 172

10.3.2 根據索引順序排序的實例分析 173

10.3.3 根據相關性排序的實例分析 173

10.3.4 根據詞頻排序實例分析 175

10.3.5 其他排序方法實例分析 177

10.4 實踐心得 178

10.4.1 查詢結果排序的問題 178

10.4.2 關于詞性處理的問題解析 181

10.5 本章小結 183

第11章 開發中的性能優化概述 184

11.1 代碼的優化 184

11.1.1 什么是代碼優化 184

11.1.2 代碼優化的意義 185

11.1.3 如何實現代碼的優化 185

11.2 索引優化 189

11.2.1 索引優化的目的 189

11.2.2 索引優化的方法和途徑 189

11.2.3 索引優化的效果 192

11.3 索引的備份和錯誤修復 192

11.3.1 如何實現索引備份 193

11.3.2 恢復索引的實現 193

11.3.3 修復索引 194

11.4 本章小結 195

第12章 對瓶頸技術的未來設想 196

12.1 海量數據庫資源搜索 196

12.1.1 什么是海量數據庫 196

12.1.2 海量數據庫資源搜索的現狀和瓶頸 197

12.1.3 海量數據庫搜索的未來設想 197

12.2 高亮顯示查詢結果的未來設想 199

12.2.1 高亮顯示出現的意義 199

12.2.2 高亮顯示目前現狀 199

12.2.3 黃褪技術概述 200

12.2.4 對高亮顯示查詢結果的未來展望 200

12.3 搜索引擎開發的規范性約束 201

12.3.1 搜索引擎開發的現狀 201

12.3.2 版本的控制 202

12.3.3 未來國際規范性約束的展望 202

12.4 本章小結 202

附錄A Java安裝詳解 203

附錄B SQL Server 2005安裝詳解 207

附錄C MyEclipse 安裝詳解 213

附錄D Lukeall在本書中的應用 215

附錄E MyEclipse快捷鍵詳解 218
序: