JAVA—咖啡館

          ——歡迎訪問rogerfan的博客,常來《JAVA——咖啡館》坐坐,喝杯濃香的咖啡,彼此探討一下JAVA技術,交流工作經驗,分享JAVA帶來的快樂!本網站部分轉載文章,如果有版權問題請與我聯系。

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            447 Posts :: 145 Stories :: 368 Comments :: 0 Trackbacks

          06 2010 檔案

               摘要: 1.ibatis中使用緩存
          首先設置SqlMapConfig.xml中節點的屬性cacheModelsEnabled="true"

          然后在具體sqlmap文件中書寫

          Xml代碼







          posted @ 2010-06-30 16:58 rogerfan 閱讀(194) | 評論 (0)  編輯

               摘要: 最近開始重構公司一套手機論壇系統(為什么我不說wap論壇,是因為需要針對不同的手機瀏覽器,實現自動適配成wap、html以及wap2.0版本的頁面)。原系統存在架構層次不清晰(表現層全jsp,直接配合數據層獲取數據),訪問速度慢的問題。其使用的OR映射框架是Hibernate,鑒于Hibernate的一些不滿足需要情況下,我們在重構的時候換成了iBatis,為了加快訪問速度,采用了iBatis的緩存技術。

          iBatis的緩存配置比較簡單易懂,以我使用的iBatis2.3為例,做以下配置即可實現對某些查詢進行緩存:

          1、在sqlMap文件中加入cacheModel的配置:





          閱讀全文
          posted @ 2010-06-29 21:55 rogerfan 閱讀(917) | 評論 (0)  編輯

               摘要: 1.1. 設置結果頁面路徑
          默認所有的結果頁面都存儲在WEB-INF/content下,你可以通過設置struts.convention.result.path這個屬性的值來改變到其他路徑。如:

          Xml代碼:






          則將路徑配置到了WEB-INF/page 下。

          1.2. 設置Convention搜索包
          默認包路徑包含action,actions,struts,struts2的所有包都會被struts作為含有Action類的路徑來搜索。你可以通過設置struts.convention.package.locators屬性來修改這個配置。如:


            閱讀全文
          posted @ 2010-06-21 10:16 rogerfan 閱讀(661) | 評論 (0)  編輯

          posted @ 2010-06-21 10:15 rogerfan 閱讀(404) | 評論 (0)  編輯

          posted @ 2010-06-21 10:13 rogerfan 閱讀(328) | 評論 (0)  編輯

          posted @ 2010-06-21 10:11 rogerfan 閱讀(289) | 評論 (0)  編輯

               摘要: 支持英文、數字、中文(簡體)混合分詞
          常用的數量和人名的匹配
          超過22萬詞的詞庫整理
          實現正向最大匹配算法

          //采用正向最大匹配的中文分詞算法,相當于分詞粒度等于0
          MMAnalyzer analyzer = new MMAnalyzer();

          //參數為分詞粒度:當字數等于或超過該參數,且能成詞,該詞就被切分出來
          MMAnalyzer analyzer = new MMAnalyzer(2);


          //增加一個新詞典,采用每行一個詞的讀取方式
          MMAnalyzer.addDictionary(reader);

          //增加一個新詞
          MMAnalyzer.addWord(newWord);
            閱讀全文
          posted @ 2010-06-21 10:10 rogerfan 閱讀(3010) | 評論 (0)  編輯

               摘要: 1. 禁止右鍵點擊
          view plaincopy to clipboardprint?

          1. $(document).ready(function(){

          2. $(document).bind("contextmenu",function(e){

          3. return false;

          4. });

          5. });


          2. 隱藏搜索文本框文字view plaincopy to clipboardprint?

          1. $(document).ready(function() {

          2. $("input.text1").val("Enter your search text here");

          3. textFill($('input.text1'));   閱讀全文
          posted @ 2010-06-21 10:09 rogerfan 閱讀(252) | 評論 (0)  編輯

               摘要: 1. 各種Query
          1.1. 概述
          query.toString()查看原子查詢

          1.2. 使用特定的分析器搜索
          IndexSearcher searcher = new IndexSearcher(path );

          Hits hits = null;

          Query query = null;

          QueryParser parser =new QueryParser("contents", new StandardAnalyzer());

          query =parser.parse("11 a and hello");

          hits=searcher.search(query); //查找 name:11 name:hello 共1個結果

          System.out.println("查找 "+query.toString()+" 共" + hits.length() + "個結果");
            閱讀全文
          posted @ 2010-06-21 10:07 rogerfan 閱讀(323) | 評論 (0)  編輯

               摘要: 1. 排序
          1.1. Sort類
          public Sort()

          public Sort(String field)

          public Sort(String field,Boolean reverse) //默認為false,降序排序

          public Sort(String[] fields)

          public Sort(SortField field)

          public Sort(SortField[] fields)

          Sort sort=new Sort(“bookname”);按照“bookname“這個Field值進行降序排序

          Sort sort=new Sort(“bookname”,true) //升序排序

          Sort sort=new Sort(new String[]{“bookNumber”,”bookname”,”publishdate”});按照三個Field進行排序,但無法指定升序排序,所以用SortField <  閱讀全文
          posted @ 2010-06-21 10:06 rogerfan 閱讀(603) | 評論 (0)  編輯

               摘要: 1. lucene中主要的類
          1.1. Document文檔類
          1.1.1.常用方法
          方法
          描述

          void add(Field field)
          往Document對象中添加字段

          void removeField(String name)
          刪除字段。若多個字段以同一個字段名存在,則刪除首先添加的字段;若不存在,則Document保持不變

          void removeFields(String name)
          刪除所有字段。若字段不存在,則Document保持不變

          Field getField(String name)
          若多個字段以同一個字段名存在,則返回首先添加的字段;若字段不存在,則Document保持不變

          Enumeration fields()
          返回Document對象的所有字段,以枚舉類型返回

          Field [] getFields(String name)
          根據名稱得到一個F  閱讀全文
          posted @ 2010-06-21 10:05 rogerfan 閱讀(320) | 評論 (0)  編輯

               摘要: 1. 概述
          Lucene是一個全文檢索引擎的架構,提供了完整的查詢引擎和索引引擎。Lucene以其方便使用、快速實施以及靈活性受到廣泛的關注。它可以方便地嵌入到各種應用中實現針對應用的全文索引、檢索功能,本總結使用lucene--2.3.2。

          2. lucene 的包結構
          1、org.apache.lucene.analysis對需要建立索引的文本進行分詞、過濾等操作, 語言分析器,主要用于的切詞Analyzer是一個抽象類,管理對文本內容的切分詞規則。

          2、org.apache.lucene.analysis.standard是標準分析器

          3、org.apache.lucene.document提供對Document和Field的各種操作的支持。索引存儲時的文檔結構管理,類似于關系型數據庫的表結構。Document相對于關系型數據庫的記錄對象,Field主要負責字段的管理。

          4、org.apache.lucene.index是最重要的包,用于向Lucene提供建立索引時各種操作的支持。  閱讀全文
          posted @ 2010-06-21 10:04 rogerfan 閱讀(210) | 評論 (0)  編輯

               摘要: 4 索引是如何創建的
          為了使用Lucene來索引數據,首先你比把它轉換成一個純文本(plain-text)tokens的數據流(stream),并通過它創建出Document對象,其包含的Fields成員容納這些文本數據。一旦你準備好些Document對象,你就可以調用IndexWriter類的addDocument(Document)方法來傳遞這些對象到Lucene并寫入索引中。當你做這些的時候,Lucene首先分析(analyzer)這些數據來使得它們更適合索引。詳見《Lucene In Action》
            閱讀全文
          posted @ 2010-06-21 09:58 rogerfan 閱讀(258) | 評論 (0)  編輯

               摘要: 1 什么是索引
          為了使用Lucene來索引數據,首先你得把它轉換成一個純文本(plain-text)tokens的數據流(stream),并通過它創建出Document對象,其包含的Fields成員容納這些文本數據。一旦你準備好些Document對象,你就可以調用IndexWriter類的addDocument(Document)方法來傳遞這些對象到Lucene并寫入索引中。當你做這些的時候,Lucene首先分析(analyzer)這些數據來使得它們更適合索引。詳見《Lucene In Action》

          下面先了解一下索引結構的一些術語。

          1.1 索引數據結構介紹
          1.1.1 術語定義
          Lucene中基本的概念(fundamental concepts)是index、Document、Field和term。

          ú 一條索引(index)包含(contains)了一連串(a sequence of)文檔(documents)。

          ú   閱讀全文
          posted @ 2010-06-21 09:58 rogerfan 閱讀(283) | 評論 (0)  編輯

               摘要: 3 索引類關系圖
          下面逐個介紹與建立索引有關的一些類及它們的關系。



          3.1 org.apache.lucene.store.IndexWriter
          一個IndexWriter對象只創建并維護一個索引。IndexWriter通過指定存放的目錄(Directory)以及文檔分析器(Analyzer)來構建,direcotry代表索引存儲(resides)在哪里;analyzer表示如何來分析文檔的內容;similarity用來規格化(normalize)文檔,給文檔算分(scoring);IndexWriter類里還有一些SegmentInfos對象用于存儲索引片段信息,以及發生故障回滾等。以下是它們的類圖:
            閱讀全文
          posted @ 2010-06-21 09:56 rogerfan 閱讀(228) | 評論 (0)  編輯

               摘要: 1 Lucene是什么
          Apache Lucene是一個高性能(high-performance)的全能的全文檢索(full-featured text search engine)的搜索引擎框架庫,完全(entirely)使用Java開發。它是一種技術(technology),適合于(suitable for)幾乎(nearly)任何一種需要全文檢索(full-text search)的應用,特別是跨平臺(cross-platform)的應用。

          Lucene 通過一些簡單的接口(simple API)提供了強大的特征(powerful features):

          可擴展的高性能的索引能力(Scalable, High-Performance Indexing)

          ü 超過20M/分鐘的處理能力(Pentium M 1.5GHz)

          ü 很少的RAM內存需求,只需要1MB heap

          ü 增量索引(incremental indexi  閱讀全文
          posted @ 2010-06-21 09:53 rogerfan 閱讀(207) | 評論 (0)  編輯

          主站蜘蛛池模板: 淳化县| 德保县| 庆城县| 开鲁县| 文成县| 大荔县| 探索| 姜堰市| 武定县| 陆良县| 宣威市| 郁南县| 志丹县| 罗定市| 安乡县| 裕民县| 镇坪县| 盈江县| 商河县| 洪泽县| 铁力市| 左贡县| 弥渡县| 巴彦淖尔市| 玉溪市| 黑河市| 什邡市| 和硕县| 万安县| 塔城市| 岱山县| 志丹县| 阿拉善右旗| 罗甸县| 静海县| 松江区| 大庆市| 宜丰县| 三明市| 南靖县| 龙海市|