´«ÖDz¥¿Íjavaѧϰ lucene³õ²½
ÒòΪ¼´½«ÒªÑ§Ï°lucene£¬ËùÒÔÎÒÌáǰԤϰÁËluceneµÄÏà¹ØÖªÊ¶£¬
1£¬luceneÊÇÖÚ¶àËÑË÷ÒýÇæÖеÄÒ»¸ö£¬¾ÍÏñ³Ö¾Ã²ã³ýÁËHibernateÍâÒ²ÓкܶàÆäËü¿ò¼Ü
Ò»Ñù¡£LuceneÊÇÒ»¸ö¿ª·¢¹¤¾ß°ü£¬ÎÒÃÇ¿ÉÒÔʹÓÃËûΪӦÓóÌÐòÌí¼ÓÈ«ÎļìË÷µÄ¹¦ÄÜ¡£
2£¬Ä¿Ç°ÒѾÓкܶàÓ¦ÓóÌÐòµÄËÑË÷¹¦ÄÜÊÇ»ùÓÚ Lucene µÄ£¬±ÈÈç Eclipse µÄ°ïÖúϵ
ͳµÄËÑË÷¹¦ÄÜ¡£ »¹ÓÐÆäËûºÜ¶àµÄÍøÕ¾µÄÓ¦ÓóÌÐòʹÓÃÁËLucene¡£
3£¬Lucene Äܹ»ÎªÎı¾ÀàÐ͵ÄÊý¾Ý½¨Á¢Ë÷Òý£¬ËùÒÔÄãÖ»ÒªÄܰÑÄãÒªË÷ÒýµÄÊý¾Ý¸ñʽת
»¯µÄÎı¾µÄ£¬Lucene ¾ÍÄܶÔÄãµÄÎĵµ½øÐÐË÷ÒýºÍËÑË÷¡£
ʹÓò½Ö裺
1£¬×¼±¸»·¾³£ºÌí¼Ójar°ü
lucene-core-2.4.0.jar£¨ºËÐÄ£©£»
lucene-analyzers-2.4.0.jar£¨·Ö´ÊÆ÷£©£»
lucene-highlighter-2.4.0.jar£¨¸ßÁÁÆ÷£©£»
a) ½¨Á¢Ë÷Òý.
b) ½øÐÐËÑË÷.
2£¬¹¹ÔìIndexWriter¡£IndexWriterÊÇLuceneÓÃÀ´´´½¨Ë÷ÒýµÄÒ»¸öºËÐĵÄÀࡣʹÓÃ
¹¹Ôì·½·¨IndexWriter(Directory d, Analyzer a, MaxFieldLength mfl); Èç¹û
Ë÷Òý²»´æÔÚ£¬¾Í»á±»´´½¨¡£
Directory£¬´ú±íÁË Lucene µÄË÷ÒýµÄ´æ´¢µÄλÖá£ÕâÊÇÒ»¸ö³éÏóÀ࣬³£ÓõÄÓÐÁ½
¸öʵÏÖ£¬µÚÒ»¸öÊÇ FSDirectory£¬Ëü±íʾһ¸ö´æ´¢ÔÚÎļþϵͳÖеÄË÷ÒýλÖᣵÚ
¶þ¸öÊÇ RAMDirectory£¬Ëü±íʾһ¸ö´æ´¢ÔÚÄÚ´æµ±ÖеÄË÷ÒýλÖá£
Analyzer£¬ÔÚÒ»¸öÎĵµ±»Ë÷Òý֮ǰ£¬Ê×ÏÈÐèÒª¶ÔÎĵµÄÚÈݽøÐзִʴ¦Àí£¬Õⲿ·Ö
¹¤×÷¾ÍÊÇÓÉ Analyzer À´×öµÄ¡£Analyzer ÀàÊÇÒ»¸ö³éÏóÀ࣬ËüÓжà¸öʵÏÖ¡£Õë¶Ô
²»Í¬µÄÓïÑÔºÍÓ¦ÓÃÐèҪѡÔñÊÊºÏµÄ Analyzer¡£Analyzer °Ñ·Ö´ÊºóµÄÄÚÈݽ»¸ø
IndexWriter À´½¨Á¢Ë÷Òý¡£
MaxFieldLength£¬ÓÃÓÚÏÞÖÆFieldµÄ´óС¡£Õâ¸ö±äÁ¿¿ÉÒÔÈÃÓû§Óмƻ®µØ¶Ô´óÎĵµ
Field½øÐнØÈ¡¡£¼ÙÈçȡֵΪ10000£¬¾ÍÖ»Ë÷Òýÿ¸öFieldµÄǰ10000¸öTerm£¨¹Ø¼ü
×Ö£©¡£Ò²¾ÍÊÇ˵ÿ¸öFieldÖÐÖ»ÓÐǰ10000¸öTerm£¨¹Ø¼ü×Ö£©½¨Á¢Ë÷Òý£¬³ý´ËÖ®Íâ
µÄ²¿·Ö¶¼²»»á±»LuceneË÷Òý£¬µ±È»Ò²²»Äܱ»ËÑË÷µ½¡£
3£¬´´½¨Ë÷Òý£¬Ê¹Ó÷½·¨IndexWriter.addDocument(Document doc)¡£
Document£¬ÊÇÓÃÀ´ÃèÊöLuceneÎĵµ½á¹¹µÄ¡£ÈκÎÐèÒª½øÐÐË÷ÒýµÄÊý¾Ý¶¼±ØÐëת»¯
³ÉDocument¶ÔÏó¡£DocumentÊÇË÷ÒýºÍËÑË÷µÄ×î»ù±¾µ¥Ôª£¬ÊÇÒ»×éFieldµÄ¼¯ºÏ¡£
Field£¬×é³ÉDocumentµÄÔªËØ£¬ÓÃÀ´ÃèÊöÒ»¸öÎĵµµÄij¸öÊôÐԵ쬱ÈÈçÒ»·âµç×ÓÓÊ
¼þµÄ±êÌâºÍÄÚÈÝ¿ÉÒÔÓÃÁ½¸öField¶ÔÏó·Ö±ðÃèÊö¡£FieldÊÇÓÉnameºÍvalue×é³ÉµÄ£¬
valueÖ»½ÓÊÜ×Ö·û´®£¨·Ç×Ö·û´®ÀàÐÍÒªÏÈת»»³É×Ö·û´®²ÅÐУ©¡£ÔÚ¹¹ÔìFieldʱ»¹
ÒªÖ¸¶¨
Ïà¹ØÎĵµ£º
±¾ÎÄÕª×Ô£º http://www.ibm.com/developerworks/cn/java/j-noaccent.html
ѧϰһÖÖеıà³ÌÓïÑÔ±ÈѧϰеĿÚÍ·ÓïÑÔÒªÈÝÒ׵öࡣȻ¶ø£¬ÔÚÕâÁ½ÖÖѧϰ¹ý³ÌÖУ¬¶¼Òª¸¶³ö¶îÍâµÄŬÁ¦È¥Ñ§Ï°²»´ø¿ÚÒôµØËµÐÂÓïÑÔ¡£Èç¹ûÄúÊìϤ C »ò C++£¬ÄÇôѧϰ Java ÓïÑÔ²¢²»À§ÄÑ£¬Õâ¾ÍÏñÊÇ»á˵ÈðµäÓïµÄÈËȥѧµ¤ÂóÓïÒ»Ñù¡£ÓïÑÔËäÓв»Í¬£¬µ«Óֱ˴˻ ......
ÔÚͨ¶ÁjdkÔ´´úÂëµÄʱºò·¢ÏÖÐí¶àjava·½·¨Ç°¶¼ÓÐnative¹Ø¼ü×ÖÐÞÊΣ¬×îºóµÃÖªnativeÊÇÓëC++ÁªºÏ¿ª·¢µÄʱºòÓõģ¬java×Ô¼º¿ª·¢²»Óá£
ʹÓÃnative¹Ø¼ü×Ö˵Ã÷Õâ¸ö·½·¨ÊÇÔÉúº¯Êý£¬Ò²¾ÍÊÇÕâ¸ö·½·¨ÊÇÓÃC/C++ÓïÑÔʵÏֵ쬲¢ÇÒ±»±àÒë³ÉÁËDLL£¬ÓÉjavaÈ¥µ÷Óá£ÕâЩº¯Êý ......
/**
* ### Õæ難µÄ題Ä¿: ¹·Æ¨ÑÝËã·¨ (測資ºÜ機車)
* 測驗結¹û: x.xx0 ms
* 測驗ÈÕÆÚ: 200y-mm-dd
* @author Raymond Wu (Сè°Íè)
*/
public class Main {
// 輸Èë緩衝區 (緩衝¿Õ ......
±à¼¹¤³ÌµÄ.projectÎļþ£º
Ìí¼Ó
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
µ½
<natures>
…
& ......
¡¡ÕâÊÇclone¼¼Êõ½éÉܵĵÚһƪ¡£±¾ÆªÖ÷Òª½éÉܶÔÏóclone¼¼ÊõµÄ»ù±¾ÖªÊ¶¡£
Clone»ù±¾ÖªÊ¶´¢±¸
ÔÚJavaÀïÌáµ½clone¼¼Êõ£¬¾Í²»Äܲ»Ìájava.lang.Cloneable½Ó¿ÚºÍº¬ÓÐclone·½·¨µÄObjectÀà¡£ËùÓоßÓÐclone¹¦ÄܵÄÀà¶¼ÓÐÒ»¸öÌØÐÔ£¬ÄǾÍÊÇËüÖ±½Ó»ò¼ä½ÓµØÊµÏÖÁËCloneable½Ó¿Ú¡£·ñÔò£¬ÎÒÃÇÔÚ³¢ÊÔµ÷ÓÃclone£¨£©·½·¨Ê±£¬½«»á´¥·¢CloneNo ......