锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲色av性色在线观无码,内射无码专区久久亚洲,中文字幕亚洲精品无码http://www.tkk7.com/RongHao/category/19517.html蹇冩湁澶氬ぇ錛岃垶鍙板氨鏈夊澶?/description>zh-cnThu, 05 Apr 2007 22:32:57 GMTThu, 05 Apr 2007 22:32:57 GMT60Jackrabbbit鏁版嵁婧愭敼涓簀ndihttp://www.tkk7.com/RongHao/archive/2007/04/05/108765.htmlronghaoronghaoThu, 05 Apr 2007 10:44:00 GMThttp://www.tkk7.com/RongHao/archive/2007/04/05/108765.htmlhttp://www.tkk7.com/RongHao/comments/108765.htmlhttp://www.tkk7.com/RongHao/archive/2007/04/05/108765.html#Feedback0http://www.tkk7.com/RongHao/comments/commentRss/108765.htmlhttp://www.tkk7.com/RongHao/services/trackbacks/108765.html闇瑕乯ackrabbit-core.jar錛宩ackrabbit-api.jar, jackrabbit-jcr-commons.jar涓変釜鍖呮潵鏇夸唬錛涘彟澶栵紝鍏惰姹侺ucene 鐨勭増鏈2.0錛屼笅浜嗕釜2.1涓嶈銆?br>鐒跺悗灝辨槸鏀歸厤緗枃浠躲?br>鍘熷厛鐨勯厤緗?br>
        <PersistenceManager class="org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager">
        
<param name="driver" value="com.newatlanta.jturbo.driver.Driver"/>
        
<param name="url" value="jdbc:JTurbo://192.168.0.2:1433/bizfocus50"/>
        
<param name="schema" value="mssql"/>
        
<param name="user" value="sa"/>
        
<param name="password" value="sa"/>
        
<param name="schemaObjectPrefix" value="${wsp.name}_"/>
        
<param name="externalBLOBs" value="false"/>
    
</PersistenceManager>

鐜板湪鐨勯厤緗細
    <PersistenceManager class="org.apache.jackrabbit.core.persistence.db.JNDIDatabasePersistenceManager">
      
<param name="dataSourceLocation" value="java:comp/env/jdbc/wfmsDataSource" />
      
<param name="schemaObjectPrefix" value="DEFAULT_" />
      
<param name="externalBLOBs" value="false" />
  
</PersistenceManager>

榪樻湁灝辨槸錛氫笉瑕佷粎浠呬慨鏀逛綘鎬葷殑閭d釜閰嶇疆鏂囦歡錛屾瘡涓伐浣滃尯闂翠笅鐨勯厤緗枃浠墮兘瑕佸悓鏃朵慨鏀癸紝鍗磋鍗磋鍟婏紒


ronghao 2007-04-05 18:44 鍙戣〃璇勮
]]>
浠涔堟槸JAVA鍐呭浠撳簱(Java Content Repository錛?4瀹?http://www.tkk7.com/RongHao/archive/2007/01/28/96417.htmlronghaoronghaoSun, 28 Jan 2007 15:55:00 GMThttp://www.tkk7.com/RongHao/archive/2007/01/28/96417.htmlhttp://www.tkk7.com/RongHao/comments/96417.htmlhttp://www.tkk7.com/RongHao/archive/2007/01/28/96417.html#Feedback2http://www.tkk7.com/RongHao/comments/commentRss/96417.htmlhttp://www.tkk7.com/RongHao/services/trackbacks/96417.html鑾峰緱鍒楄〃
鍦ㄤ笂涓姝ヤ腑鎴戜滑宸茬粡鎶婃暟鎹繚瀛樺埌浜嗗唴瀹逛粨搴撲腑錛岄偅鎴戜滑濡備綍紜畾鏁版嵁紜疄淇濆瓨榪涘幓浜嗗憿錛焔etBlogList() 榪欎釜鏂規硶灝嗚繑鍥炴牴鑺傜偣涓嬫墍鏈夊悕涓篵logEntry.鐨勫瓙鑺傜偣銆?br />
public聽ArrayList聽getBlogList()聽throws聽BlogApplicationException聽{
聽聽聽聽Session聽session聽
=聽JackrabbitPlugin.getSession();
聽聽聽聽ArrayList聽blogEntryList聽
=new聽ArrayList();
聽聽聽聽Node聽rootNode聽
=聽session.getRootNode();
聽聽聽聽NodeIterator聽blogEntryNodeIterator聽
=聽rootNode.getNodes();

聽聽聽聽
while聽(blogEntryNodeIterator.hasNext())聽{
聽聽聽聽聽聽聽聽Node聽blogEntry聽
=聽blogEntryNodeIterator.nextNode();
聽聽聽聽聽聽聽聽
if聽(blogEntry.getName().equals("blogEntry")聽==false)
聽聽聽聽聽聽聽聽聽聽聽聽
continue;
聽聽聽聽聽聽聽聽String聽title聽
=聽blogEntry.getProperty("title").getString();
聽聽聽聽聽聽聽聽String聽blogContent聽
=聽blogEntry.getProperty("blogContent").getString();
聽聽聽聽聽聽聽聽Value聽creationTimeValue聽
=聽(Value)聽blogEntry.getProperty(
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
"creationTime").getValue();
聽聽聽聽聽聽聽聽String聽userName聽
=聽blogEntry.getProperty("userName").getString();
聽聽聽聽聽聽聽聽BlogEntryDTO聽blogEntryDTO聽
=new聽BlogEntryDTO(userName,聽title,
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽blogContent,聽creationTimeValue.getDate());
聽聽聽聽聽聽聽聽blogEntryList.add(blogEntryDTO);
聽聽聽聽}
聽聽聽聽
return聽blogEntryList;
}

涓鏃︿綘鑾峰緱浜嗘牴鑺傜偣榪欎釜瀵硅薄錛屼綘灝卞彲浠ラ氳繃璋冪敤getNodes()榪欎釜鏂規硶鏉ヨ幏鍙栧畠鎵鏈夌殑瀛愯妭鐐廣傚鏋滆繖涓妭鐐規病鏈夊瓙鑺傜偣錛屽皢榪斿洖涓涓┖鐨凬odeIterator 瀵硅薄銆傛垜浠彲浠ラ亶鍘嗚繖涓狽odeIterator 瀵硅薄鏉ヨ幏寰楀悕涓篵logEntry 鐨勮妭鐐歸泦鍚堬紝鐒跺悗閫氳繃getProperty()鏂規硶鏉ヨ幏寰楄妭鐐逛笂鐨勫睘鎬э紝鍗蟲垜浠繚瀛樼殑鐪熷疄鏁版嵁銆俫etProperty()鏂規硶榪斿洖Value瀵硅薄鐨勪竴涓疄渚嬨傚洜涓哄瓨鍌ㄦ暟鎹被鍨嬬殑涓嶅悓錛屾墍浠ヨ繑鍥炵殑Value瀵硅薄瀹炰緥鏄笉鍚岀殑銆傛牴鎹笉鍚岀殑鏁版嵁綾誨瀷錛屼綘搴旇璋冪敤鐗瑰畾鐨勬柟娉曟潵鑾峰彇鏁版嵁錛屾瘮濡俫etString()鏉ヨ幏鍙栧瓧絎︿覆錛岃実etDate()鑾峰緱涓涓棩鏈熴?br />
鏌ユ壘鍐呭錛堢敤XPath鐨勬柟寮忥級
JSR-170瀹氫箟浜嗕袱縐嶆柟寮忔潵鏌ユ壘鍐呭錛堜篃鍙互鐞嗚В涓烘煡鎵捐妭鐐癸級銆備竴縐嶄嬌鐢╔Path璇硶錛屽彟涓縐嶄嬌鐢⊿QL璇硶銆侸SR-170瑕佹眰Level 1蹇呴』瀹炵幇XPath鐨勬柟寮忥紝鑰孲QL鐨勬柟寮忓垯浣滀負涓涓彲閫夌殑鍔熻兘銆?br />
XPath鍘熸湰鏄竴縐嶈璁$敤鏉ユ煡鎵綳ML鍏冪礌鐨勮璦銆傚洜涓烘垜浠殑workspace鏄爲鐘剁殑緇撴瀯錛屽緢鍍廥ML銆傛墍浠Path璇硶闈炲父閫傚悎浜庡湪榪欓噷鏌ユ壘鍐呭銆備笅闈㈢殑浠g爜婕旂ず浜嗛氳繃浣滆呭悕鏉ユ煡鎵捐妭鐐廣?br />
Session聽session聽=聽JackrabbitPlugin.getSession();
聽聽聽聽Workspace聽workSpace聽
=聽session.getWorkspace();
聽聽聽聽QueryManager聽queryManager聽
=聽workSpace.getQueryManager();

聽聽聽聽StringBuffer聽queryStr聽
=new聽StringBuffer(
聽聽聽聽聽聽聽聽聽聽聽聽
"//blogEntry[@"+PROP_BLOGAUTHOR聽+"=聽'");
聽聽聽聽queryStr.append(userName);
聽聽聽聽queryStr.append(
"']");
聽聽聽聽Query聽query聽
=聽queryManager.createQuery(queryStr.toString(),
聽聽聽聽聽聽聽聽聽聽聽聽Query.XPATH);

聽聽聽聽QueryResult聽queryResult聽
=聽query.execute();

聽聽聽聽NodeIterator聽queryResultNodeIterator聽
=聽queryResult.getNodes();
聽聽聽聽
while聽(queryResultNodeIterator.hasNext())聽{

聽聽聽聽聽聽聽聽Node聽blogEntry聽
=聽queryResultNodeIterator.nextNode();
聽聽聽聽聽聽聽聽String聽title聽
=聽blogEntry.getProperty(PROP_TITLE).getString();
聽聽聽聽聽聽聽聽String聽blogContent聽
=聽blogEntry.getProperty(PROP_BLOGCONTENT).getString();
聽聽聽聽聽聽聽聽Value聽creationTimeValue聽
=聽(Value)聽blogEntry.getProperty(
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽PROP_CREATIONTIME).getValue();
聽聽聽聽聽聽聽聽BlogEntryDTO聽blogEntryDTO聽
=new聽BlogEntryDTO(userName,聽title,
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽blogContent,聽creationTimeValue.getDate());
聽聽聽聽聽聽聽聽blogEntryList.add(blogEntryDTO);
聽聽聽聽}

棣栧厛鑾峰緱session 瀵硅薄錛岄氳繃瀹冭幏寰楀畠榪炴帴鐨剋orkspace錛岀劧鍚庡氨鍙互閫氳繃workspace鑾峰緱榪欎釜workspace鐨凲ueryManager 銆俀ueryManager 鎺ュ彛瀹氫箟浜嗗緢澶氱敤鏉ユ煡璇㈢殑鏂規硶銆傛帴涓嬫潵鎴戜滑瑕佸仛鐨勬槸鍒涘緩涓鏉℃煡璇㈣鍙ャ傛垜浠繖閲岃繖鏍峰啓"http://blogEntry[@blogAuthor='<bloggerName>'"銆傝繖鍙ヨ瘽鐨勬剰鎬濇槸鏌ユ壘鎵鏈夊悕涓篵logEntry 錛屽惈鏈塨logAuthor 灞炴т笖灞炴у間負<bloggerName>鐨勮妭鐐廣傚叿浣撳彲浠ョ湅JSR-170瑙勮寖銆?br />
閫氳繃queryManager's createQuery()鏂規硶鍒涘緩涓涓煡璇㈠璞★紝榪欎釜鏂規硶闇瑕佷袱涓弬鏁幫紝涓涓槸鎴戜滑鐨勬煡璇㈣鍙ワ紝鍙︿竴涓槸鏌ヨ鐨勬柟寮忥紝榪欓噷浣跨敤XPath銆傝幏寰楄繖涓猀uery 鏌ヨ瀵硅薄鍚庯紝璋冪敤瀹冪殑execute() 鏂規硶寮濮嬫墽琛屾煡璇紝榪斿洖涓涓猀ueryResult 瀵硅薄銆傛敞鎰忥紝鏌ヨ鐨勭粨鏋滃彈鍒板綋鍓峴ession鐨勯檺鍒訛紝鎹㈠彞璇濊錛屽氨鏄鏋滆繖涓猻ession娌℃湁鏉冮檺鏌ョ湅涓涓壒瀹氱殑鑺傜偣錛屽摢鎬曡繖涓妭鐐規弧瓚蟲垜浠煡璇㈢殑鏉′歡錛屽湪鎴戜滑鐨勬煡璇㈢粨鏋滈噷涔熸槸鐪嬩笉鍒拌繖涓妭鐐圭殑銆傛墍鏈夌殑鏌ヨ鏁版嵁鏉ヨ嚜浜庤workspace宸茬粡鎸佷箙鍖栫殑鏁版嵁錛屽摢浜涘凡緇忔敼鍙樹絾榪樻病鏈夐氳繃session.save()(item.save())鎸佷箙鍖栧埌workspace鐨勬暟鎹笉鍦ㄦ煡璇箣鍒椼傝幏寰桻ueryResult 瀵硅薄鍚庯紝鎴戜滑灝卞彲浠ラ氳繃璋冪敤getNodes()鏂規硶鏉ヨ幏寰楃鍚堟煡璇㈡潯浠剁殑鑺傜偣鐨勪竴涓亶鍘嗐?br />
鍓╀笅鐨勪袱涓湭瀹炵幇鐨勬柟娉曟槸updateBlogEntry() 鍜?removeBlogEntry()錛屽畠浠疄鐜拌搗鏉ラ兘寰堢畝鍗曘傛垜浠妸BOLG 鏍囬浣滀負涓婚敭錛岄氳繃鏍囬鏉ヨ幏寰楃浉鍏崇殑鑺傜偣銆傚湪updateBlogEntry()鏂規硶閲岋紝鎴戜滑鐩存帴璁懼畾闇瑕佹敼鍙樼殑灞炴э紱鍦?removeBlogEntry()鏂規硶閲岋紝鎴戜滑鑾峰緱鐩爣鑺傜偣鍚庣洿鎺ュ湪鑺傜偣涓婅皟鐢╮emove()鏂規硶銆傛渶鍚庡埆蹇樹簡涓瀹氳璋冪敤session.save()鏂規硶鎶婃垜浠敼鍙樼殑鏁版嵁鎸佷箙鍖栥?br />
澶勭悊浜岃繘鍒跺唴瀹?/b>
瀵瑰唴瀹逛粨搴撴潵璇達紝澶勭悊浜岃繘鍒跺唴瀹規槸涓緢鍩烘湰鐨勮姹傦紝姣斿璇村浘鐗囥傜幇鍦ㄦ垜浠殑紺轟緥紼嬪簭瀹硅緇欐瘡涓狟LOG闄勫姞涓寮犲浘鐗囥備笅闈㈠垎鍒槸闄勫姞鍥劇墖鍜岃幏鍙栧浘鐗囩殑鏂規硶銆?br />
publicvoid聽attachFileToBlogEntry(String聽blogTitle,
聽聽InputStream聽uploadInputStream)聽
throws聽BlogApplicationException聽{
聽聽聽聽Session聽session聽
=聽JackrabbitPlugin.getSession();
聽聽聽聽Node聽blogEntryNode聽
=聽getBlogEntryNode(blogTitle,聽session);
聽聽聽聽blogEntryNode.setProperty(PROP_ATTACHMENT,聽uploadInputStream);
聽聽聽聽session.save();

}
public聽InputStream聽getAttachedFile(String聽blogTitle)聽throws聽BlogApplicationException聽{
聽聽聽聽InputStream聽attachFileIS聽
=null;
聽聽聽聽Node聽blogEntryNode聽
=聽getBlogEntryNode(blogTitle);
聽聽聽聽Value聽attachFileValue聽
=聽(Value)聽blogEntryNode.getProperty(PROP_ATTACHMENT).getValue();
聽聽聽聽attachFileIS聽
=聽attachFileValue.getStream();
聽聽
return聽attachFileIS;
}

姝e浣犵湅鍒扮殑閭f牱錛屾垜浠殑浠g爜鍦ㄥ鐞嗕簩榪涘埗鍐呭鍜屼竴鑸唴瀹歸棿騫舵病鏈変粈涔堝お澶х殑鍖哄埆銆備粎浠呬竴鐐逛笉鍚岀殑鏄綘瑕侀氳繃InputStream 瀵硅薄鏉ヤ繚瀛樺拰鑾峰彇浜岃繘鍒舵暟鎹傚湪鎴戜滑鐨勯厤緗枃浠墮噷鍏充簬persistent manager浼氭湁涓涓猠xternalBLOBs 灞炴с傛妸榪欎釜灞炴ц涓簍rue, 鍥劇墖灝嗕細淇濆瓨鍦ㄦ枃浠墮噷錛岀浉鍙嶅垯浼氫繚瀛樺湪鏁版嵁搴撶殑blob瀛楁閲屻?br />
鎬葷粨
鍒拌繖閲岋紝鎴戜滑瀵?JSR-170, Jackrabbit浠ュ強濡備綍浣跨敤 JSR-170 API寮鍙戜竴涓畝鍗曠殑搴旂敤紼嬪簭閮芥湁浜嗗ぇ姒傜殑浜嗚В銆傛垜浠殑璁ㄨ鏇村鐨勫湪浜庡熀紜銆傜浉淇″ぇ瀹朵竴瀹氫細瀵瑰唴瀹逛粨搴撴湁涓垵姝ョ殑璁よ瘑銆?img src ="http://www.tkk7.com/RongHao/aggbug/96417.html" width = "1" height = "1" />

ronghao 2007-01-28 23:55 鍙戣〃璇勮
]]>
浠涔堟槸JAVA鍐呭浠撳簱(Java Content Repository錛?3)http://www.tkk7.com/RongHao/archive/2007/01/25/96065.htmlronghaoronghaoThu, 25 Jan 2007 15:12:00 GMThttp://www.tkk7.com/RongHao/archive/2007/01/25/96065.htmlhttp://www.tkk7.com/RongHao/comments/96065.htmlhttp://www.tkk7.com/RongHao/archive/2007/01/25/96065.html#Feedback0http://www.tkk7.com/RongHao/comments/commentRss/96065.htmlhttp://www.tkk7.com/RongHao/services/trackbacks/96065.html寮鍙戞垜浠殑渚嬪瓙紼嬪簭
jackrabbit宸茬粡閰嶇疆濂戒簡錛岀幇鍦ㄨ鎴戜滑鏉ュ垱寤烘垜浠殑紺轟緥紼嬪簭銆傝繖涓緥瀛愮▼搴忓皢璋冪敤JCR-170 API銆傚緢鏄劇劧錛屾垜浠渶瑕佸仛涓や歡浜嬫儏錛氫竴涓槸浣滀負鍚庡彴鐨勫鏁版嵁榪涜澧炲垹鏀規煡錛堟寔涔呭眰錛夛紝鍙︿竴涓槸寮鍙戠浉瀵瑰簲鐨刄I鐣岄潰錛圵EB 灞傦級銆傞鍏堬紝璁╂垜浠畾涔変竴涓狣AO鎺ュ彛銆傝繖涓帴鍙logEntryDAO.java 濡備笅錛?br />
publicinterface聽BlogEntryDAO聽{
聽聽聽聽
publicvoid聽insertBlogEntry(BlogEntryDTO聽blogEntryDTO)
聽聽聽聽聽聽聽聽
throws聽BlogApplicationException;
聽聽聽聽
publicvoid聽updateBlogEntry(BlogEntryDTO聽blogEntryDTO)
聽聽聽聽聽聽聽聽
throws聽BlogApplicationException;
聽聽聽聽
public聽ArrayList聽getBlogList()
聽聽聽聽聽聽聽聽
throws聽BlogApplicationException;
聽聽聽聽
public聽BlogEntryDTO聽getBlogEntry(String聽blogTitle)
聽聽聽聽聽聽聽聽
throws聽BlogApplicationException;
聽聽聽聽
publicvoid聽removeBlogEntry(String聽blogTitle)
聽聽聽聽聽聽聽聽
throws聽BlogApplicationException;
聽聽聽聽
public聽ArrayList聽searchBlogList(String聽userName)
聽聽聽聽聽聽聽聽
throws聽BlogApplicationException;
聽聽聽聽
publicvoid聽attachFileToBlogEntry(String聽blogTitle,聽InputStream聽uploadInputStream)
聽聽聽聽聽聽聽聽
throws聽BlogApplicationException;
聽聽聽聽
public聽InputStream聽getAttachedFile(String聽blogTitle)
聽聽聽聽聽聽聽聽
throws聽BlogApplicationException;
}

姝e浣犵湅鍒扮殑錛岃繖涓帴鍙f彁渚涗簡澧炲垹鏀規煡鐨勬柟娉曪紝鍚屾椂榪樻彁渚涗簡涓や釜鏂規硶鏉ュ鐞嗛檮浠躲傛帴涓嬫潵錛屾垜浠渶瑕佷竴涓狣TO瀵硅薄鐢ㄦ潵鍦ㄤ袱涓眰涔嬮棿浼犻掓暟鎹?br />
publicclass聽BlogEntryDTO聽{

聽聽聽聽
private聽String聽userName;
聽聽聽聽
private聽String聽title;
聽聽聽聽
private聽String聽blogContent;
聽聽聽聽
private聽Calendar聽creationTime;

聽聽聽聽
//Getter聽and聽setter聽methods聽for聽each聽of聽these聽properties聽聽聽聽聽聽聽聽
}

榪欓噷鎴戜滑灝嗕粎浠呰璁烘寔涔呭眰銆?br />
榪炴帴jackrabbit
鐜板湪錛岀涓浠朵簨鎯呮槸寮鍙戜竴涓粍浠訛紝鑾峰緱涓涓埌jackrabbit鍐呭浠撳簱鐨勮繛鎺ャ備負浜嗙畝鍗曪紝鎴戜滑灝嗗湪紼嬪簭鍚姩鐨勬椂鍊欒幏寰楄繖涓繛鎺ワ紝鐒跺悗鍦ㄧ▼搴忓仠姝㈢殑鏃跺欓噴鏀捐繖涓繛鎺ャ傝繖閲屾垜浠嬌鐢ㄤ簡Struts 錛屾墍浠ユ垜浠渶瑕佸紑鍙戜竴涓狿lugIn 綾匯傚涓嬶細
publicclass聽JackrabbitPlugin聽implements聽PlugIn{
聽聽聽聽
publicstatic聽Session聽session;
聽聽聽聽
publicvoid聽destroy()聽{
聽聽聽聽聽聽聽聽session.logout();
聽聽聽聽}
聽聽聽聽
publicvoid聽init(ActionServlet聽actionServlet,聽ModuleConfig聽moduleConfig)聽
聽聽聽聽
throws聽ServletException聽{
聽聽聽聽聽聽聽聽
try聽{
聽聽聽聽聽聽聽聽聽聽聽聽System.setProperty(
"org.apache.jackrabbit.repository.home",
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
"c:/temp/Blogging");
聽聽聽聽聽聽聽聽聽聽聽聽Repository聽repository聽
=new聽TransientRepository();
聽聽聽聽聽聽聽聽聽聽聽聽session聽
=聽repository.login(new聽SimpleCredentials("username",
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
"password".toCharArray()));
聽聽聽聽聽聽聽聽}聽
catch聽(LoginException聽e)聽{
聽聽聽聽聽聽聽聽聽聽聽聽
thrownew聽ServletException(e);
聽聽聽聽聽聽聽聽}聽
catch聽(IOException聽e)聽{
聽聽聽聽聽聽聽聽聽聽聽聽
thrownew聽ServletException(e);
聽聽聽聽聽聽聽聽}聽
catch聽(RepositoryException聽e)聽{
聽聽聽聽聽聽聽聽聽聽聽聽
thrownew聽ServletException(e);聽聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽}
聽聽聽聽}
聽聽聽聽
publicstatic聽Session聽getSession()聽{
聽聽聽聽聽聽聽聽
return聽session;
聽聽聽聽}
}

init()鏂規硶灝嗕細鍦ㄧ▼搴忓惎鍔ㄧ殑鏃跺欒皟鐢紝destroy()灝嗕細鍦ㄧ▼搴忓仠姝㈢殑鏃跺欒皟鐢ㄣ傛垜浠湪init()鏂規硶閲岃幏寰椾簡鍒癹ackrabbit鍐呭浠撳簱鐨勮繛鎺ャ傜湅鐪嬩唬鐮侊紝鎴戜滑鍋氱殑絎竴浠朵簨鏄瀹氫簡org.apache.jackrabbit.repository.home榪欎釜緋葷粺灞炴э紝鍦ㄤ笂綃囨枃绔犻噷鎻愬埌錛岃繖涓睘鎬ф槸鐢ㄦ潵鎸囧悜鎴戜滑鐨勫唴瀹逛粨搴撲富鐩綍銆傝繖閲屾垜浠瀹氬畠涓篶:/temp/blogging銆傛帴涓嬫潵錛屾垜浠垱寤轟簡TransientRepository鐨勪竴涓疄渚嬨傝繖鏄痡ackrabbit鎻愪緵鐨勭被錛屽畠鎻愪緵浜嗕竴涓埌鍐呭浠撳簱鐨勪唬鐞嗐傚畠鍦ㄧ涓涓猻ession 鎵撳紑鐨勬椂鍊欒嚜鍔ㄥ惎鍔ㄥ唴瀹逛粨搴擄紝鍦ㄦ渶鍚庝竴涓猻ession 鍏抽棴鐨勬椂鍊欒嚜鍔ㄥ叧闂唴瀹逛粨搴撱?br />涓鏃︽垜浠幏寰椾簡涓涓唴瀹逛粨搴撳璞★紝鎴戜滑灝卞彲浠ヨ皟鐢ㄥ畠鐨刲ogin() 鏂規硶鏉ユ墦寮涓涓繛鎺ャ俵ogin() 鏂規硶闇瑕佷竴涓狢redential 瀵硅薄浣滀負鍙傛暟銆傚鏋淐redential 瀵硅薄鏄疦ULL錛宩ackrabbit浼氳涓哄叾浠栫殑鏈哄埗鍋氫簡榪欎釜楠岃瘉錛堟瘮濡侸AAS錛夈俵ogin() 鏂規硶榪樺彲浠ヤ紶鍏ヤ竴涓獁orkspace鍚嶅瓧浣滀負鍙傛暟錛屽鏋滀笉浼犲叆榪欎釜鍙傛暟錛宩ackrabbit浼氳繑鍥炰竴涓猻ession瀵硅薄鎸囧悜榛樿鐨剋orkspace銆傛敞鎰弚orkspace鍜宻ession鏄竴瀵逛竴鐨勶紝鍗充竴涓猻ession浠呭搴斾竴涓獁orkspace銆傦紙娉細濡傛灉涓嶄紶鍏redential瀵硅薄錛岃繑鍥炵殑session瀵箇orkspace鏄彧璇葷殑錛?br />
澧炲姞鍐呭
榪炴帴宸茬粡寤虹珛璧鋒潵浜嗭紝涓嬮潰璁╂垜浠疄鐜癇logEntryDAO榪欎釜鎺ュ彛銆傜涓涓垜浠兂瀹炵幇鐨勬柟娉曟槸鎻掑叆鏁版嵁 insertBlogEntry()
publicvoid聽insertBlogEntry(BlogEntryDTO聽blogEntryDTO)
聽聽聽聽聽聽聽聽聽聽聽聽
throws聽BlogApplicationException聽{
聽聽聽聽聽聽聽聽Session聽session聽
=聽JackrabbitPlugin.getSession();
聽聽聽聽聽聽聽聽Node聽rootNode聽
=聽session.getRootNode();
聽聽聽聽聽聽聽聽Node聽blogEntry聽
=聽rootNode.addNode("blogEntry");
聽聽聽聽聽聽聽聽blogEntry.setProperty(
"title",聽blogEntryDTO.getTitle());
聽聽聽聽聽聽聽聽blogEntry.setProperty(
"blogContent",聽blogEntryDTO.getBlogContent());
聽聽聽聽聽聽聽聽blogEntry.setProperty(
"creationTime",聽blogEntryDTO.getCreationTime());
聽聽聽聽聽聽聽聽blogEntry.setProperty(
"userName",聽blogEntryDTO.getUserName());聽聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽session.save();
}

棣栧厛鑾峰緱session 瀵硅薄錛屽嵆鍒板唴瀹逛粨搴撶壒瀹歸orkspace鐨勮繛鎺ャ傜劧鍚庯紝鎴戜滑鍦ㄨ繖涓猻ession 瀵硅薄涓婅皟鐢╣etRootNode() 鏂規硶錛岃幏寰楄繖涓獁orkspace鐨勬牴鑺傜偣錛岃繖涓牴鑺傜偣鐨勮礬寰勬槸錛?/"錛?涓鏃︽垜浠幏寰楄繖涓牴鑺傜偣錛屾垜浠氨鍙互閫氳繃addNode()鏂規硶鍦ㄨ繖涓牴鑺傜偣涓嬪鍔犳柊鐨勫瓙鑺傜偣銆傛柊鑺傜偣鐨勫悕瀛楁槸blogEntry. 閫氳繃setProperty() 鏂規硶鎴戜滑鎶婃暟鎹瓨鍌ㄥ埌鑺傜偣鐨刾roperty閲屻傛濡傛垜浠厛鍓嶈鏄庣殑錛岀湡瀹炵殑鏁版嵁鏄瓨鍌ㄥ湪property鍏冪礌閲岋紝property鍏冪礌鏄彾瀛愩?br />娉ㄦ剰session.save() 榪欒浠g爜銆傝繖涓柟娉曟槸蹇呴』璋冪敤鐨勶紝榪欎釜鏂規硶璋冪敤涔嬪墠錛屼換浣?Node,Property鐨勬敼鍙橀兘琚繚瀛樺湪榪欎釜session鐨勪竴涓復鏃跺尯鍩熼噷錛屽叾浠栫殑鍜岃session榪炴帴鍒扮浉鍚寃orkspace鐨剆ession閮界湅涓嶅埌榪欎簺鏀瑰彉銆傚綋榪欎釜鏂規硶琚皟鐢ㄥ茍琚垚鍔熸墽琛屽悗錛岃繖浜汵ode,Property鐨勬敼鍙樻墠浼氳鎸佷箙鍖栧埌榪欎釜session鍏寵仈鐨剋orkspace閲岋紝鍚屾椂鎵鏈変笌榪欎釜workspace鍏寵仈鐨剆ession鎵嶅彲瑙佽繖浜涘彉鍖栥傜浉瀵瑰簲鐨勶紝Session.refresh(false)灝嗕細涓㈠純鎵鏈夎繖浜涙敼鍙樸俰tem.save()鍜孖tem.refresh(false)浣滅敤鐩鎬技錛屽彧鏄獎鍝嶈寖鍥撮檺瀹氬湪鍗曚釜Item涓婏紙娉ㄦ剰錛屽寘鎷畠鐨勫瓙鑺傜偣錛?img src ="http://www.tkk7.com/RongHao/aggbug/96065.html" width = "1" height = "1" />

ronghao 2007-01-25 23:12 鍙戣〃璇勮
]]>
浠涔堟槸JAVA鍐呭浠撳簱(Java Content Repository錛?2)http://www.tkk7.com/RongHao/archive/2007/01/23/95637.htmlronghaoronghaoTue, 23 Jan 2007 15:57:00 GMThttp://www.tkk7.com/RongHao/archive/2007/01/23/95637.htmlhttp://www.tkk7.com/RongHao/comments/95637.htmlhttp://www.tkk7.com/RongHao/archive/2007/01/23/95637.html#Feedback2http://www.tkk7.com/RongHao/comments/commentRss/95637.htmlhttp://www.tkk7.com/RongHao/services/trackbacks/95637.html鍐呭浠撳簱妯″瀷
JSR-170 鏄繖鏍峰畾涔夊唴瀹逛粨搴撶殑錛屽唴瀹逛粨搴撶敱涓緇?workspace錛堝伐浣滅┖闂達級緇勬垚錛岃繖浜泈orkspace閫氬父搴旇鍖呭惈鐩鎬技鐨勫唴瀹廣備竴涓唴瀹逛粨搴撴湁涓涓埌澶氫釜 workspace銆傛瘡涓獁orkspace閮芥槸涓涓爲鐘剁粨鏋勶紝閮芥湁涓涓敮涓鐨勬爲鏍硅妭鐐癸紙root node錛夈傛爲涓婄殑item錛堝厓绱狅級鎴栬呮槸涓猲ode錛堣妭鐐癸級鎴栬呮槸涓猵roperty錛堝睘鎬э級銆傛瘡涓猲ode閮藉彲浠ユ湁闆朵釜鍒板涓瓙鑺傜偣鍜岄浂涓埌澶氫釜瀛愬睘鎬с傚彧鏈夋牴鑺傜偣娌℃湁鐖惰妭鐐癸紝鍏朵綑鎵鏈夌殑鑺傜偣閮芥湁涓涓埗鑺傜偣銆俻roperty 涔熷繀欏繪湁涓涓埗鑺傜偣錛屼絾瀹冩病鏈夊瓙鑺傜偣鎴栨槸瀛愬睘鎬э紝property 鏄彾瀛愬厓绱犮俻roperty鏄湡姝e瓨鍌ㄦ暟鎹殑鍏冪礌銆?br />
涓嬪浘鎻忚堪浜嗕竴涓猙log搴旂敤紼嬪簭鐨勫唴瀹逛粨搴撴ā鍨嬨傛瘡涓猺oot node錛堟牴鑺傜偣錛夌殑瀛愯妭鐐歸兘浠h〃浜嗕竴涓猙log瀹炰綋銆備笌榪欎釜blog瀹炰綋鏈夊叧鐨勬暟鎹兘瀛樺偍鍦?bolgEntry 鑺傜偣鐨勫睘鎬ч噷錛屽叾涓竴涓?blogAttachment property 瀛樺偍浜嗕竴涓簩榪涘埗鍥劇墖鏂囦歡銆?br />repositorymodel3.gif
鏍規嵁鍐呭浠撳簱瀹炵幇鐨勫姛鑳斤紝JSR-170瀹氫箟浜嗕笁縐嶇駭鍒細
Level 1錛氬畾涔変簡涓涓彧璇葷殑鍐呭浠撳簱銆傚姛鑳藉寘鎷鍙栧唴瀹癸紝灝嗗唴瀹瑰鍑轟負XML鍜屾煡鎵懼唴瀹廣?br />Level 2錛氬畾涔変簡鍙啓鐨勫唴瀹逛粨搴撱侺evel 2鏄疞evel 1鐨勬墿灞曪紝鏂板鐨勫姛鑳藉寘鎷線鍐呭浠撳簱閲屽啓鍏ュ唴瀹癸紝鍜屼粠XML瀵煎叆鏁版嵁鍒頒粨搴撱?br />Advanced options錛氬畾涔夊疄鐜頒簲縐嶉檮鍔犲姛鑳斤紝鐗堟湰鎺у埗銆丣TA銆丼QL鏌ヨ銆佹竻鏅扮殑鍐呭閿佸畾鍜岀洃瑙嗐?br />
浠涔堟槸Apache JackRabbit錛?/b>
Apache JackRabbit鏄竴涓紑鏀炬簮鐮佺殑JSR-170 瀹炵幇錛屽疄鐜頒簡Level 2錛屼絾瀹冭繕鏈夎澶氭墿灞曠殑鍔熻兘銆傝緇嗗彲浠ュ幓瀹冪殑瀹樻柟緗戠珯銆?br />
涓嬮潰鎴戜滑鍐沖畾鐢ˋpache JackRabbit鏉ヤ綔涓烘垜浠ず渚嬬▼搴忕殑鍐呭浠撳簱銆?br />
濡備綍閰嶇疆Apache JackRabbit
JackRabbit闇瑕佷袱涓弬鏁版潵閰嶇疆涓涓唴瀹逛粨搴撳疄渚嬨?br />1.鍐呭浠撳簱涓葷洰褰曪細榪欎釜鏂囦歡鐩綍涓嬮氬父鍖呭惈浜嗘墍鏈夌殑鍐呭錛屾悳绱㈢儲寮曪紝鍐呴儴閰嶇疆鏂囦歡鍜屽叾浠栨寔涔呭寲淇℃伅銆傚畠鐨勭粨鏋勭湅璧鋒潵浼氬儚涓嬮潰榪欎釜鏍峰瓙錛?br />
聽聽聽c:/temp
聽聽聽聽聽聽聽聽
|
聽聽聽聽聽聽聽聽
|--Blogging
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
|
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
|-repository
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
|聽聽聽聽聽聽聽|
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
|聽聽聽聽聽聽聽|-index
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
|聽聽聽聽聽聽聽|-meta
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
|聽聽聽聽聽聽聽|-namespaces
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
|聽聽聽聽聽聽聽|-nodetypes聽聽聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
|
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
|-version
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
|
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
|-workspace
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
|
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
|--default

聽 鍦ㄤ笂闈㈢殑鎯呭喌涓嬶紝鍐呭浠撳簱涓葷洰褰曟槸c:/temp/Blogging.
2.鍐呭浠撳簱閰嶇疆鏂囦歡錛氫竴涓吀鍨嬬殑閰嶇疆鏂囦歡濡備笅錛?br />
<Repository>
<FileSystem聽class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
聽聽
<param聽name="path"聽value="${rep.home}/repository"/>
</FileSystem>
<Security聽appName="Jackrabbit">
聽聽
<AccessManager聽class="org.apache.jackrabbit.core.security.SimpleAccessManager"/>
聽聽
<LoginModule聽class="org.apache.jackrabbit.core.security.SimpleLoginModule">
聽聽聽聽
<param聽name="anonymousId"聽value="anonymous"/>
聽聽
</LoginModule>
</Security>
<Workspaces聽rootPath="${rep.home}/workspaces"聽defaultWorkspace="default"/>
<Workspace聽name="${wsp.name}">
聽聽
<FileSystem聽class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
聽聽聽
<param聽name="path"聽value="${wsp.home}"/>
聽聽
</FileSystem>
聽聽
<PersistenceManager聽
聽聽聽聽聽聽聽聽
class="org.apache.jackrabbit.core.state.db.DerbyPersistenceManager">
聽聽聽
<param聽name="url"聽value="jdbc:derby:${wsp.home}/db;create=true"/>
聽聽聽
<param聽name="schemaObjectPrefix"聽value="${wsp.name}_"/>
聽聽
</PersistenceManager>
聽聽
<SearchIndex聽class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
聽聽聽
<param聽name="path"聽value="${wsp.home}/index"/>
聽聽
</SearchIndex>
</Workspace>
<Versioning聽rootPath="${rep.home}/version">
聽聽
<FileSystem聽class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
聽聽聽
<param聽name="path"聽value="${rep.home}/version"/>
聽聽
</FileSystem>
聽聽
<PersistenceManager聽
聽聽聽聽聽聽聽聽
class="org.apache.jackrabbit.core.state.db.DerbyPersistenceManager">
聽聽聽
<param聽name="url"聽value="jdbc:derby:${rep.home}/version/db;create=true"/>
聽聽聽
<param聽name="schemaObjectPrefix"聽value="version_"/>
聽聽
</PersistenceManager>
聽聽
</Versioning>
聽聽
<SearchIndex聽class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
聽聽聽
<param聽name="path"聽value="${rep.home}/repository/index"/>
聽聽
</SearchIndex>
</Repository>


聽 鍦ㄨ繖涓厤緗枃浠墮噷錛?lt;Repository>鍏冪礌鏄牴鍏冪礌錛屽畠鍖呭惈浜嗕笅闈㈣繖浜涘厓绱狅細
a錛?lt;FileSystem>: 璇ュ厓绱犻厤緗簡鍐呭浠撳簱鐨勫叏灞鏁版嵁瀛樺偍浣嶇疆錛岃繖浜涘叏灞鏁版嵁鍖呮嫭宸叉敞鍐岀殑鍛藉悕絀洪棿錛屽畾鍒剁殑鑺傜偣綾誨瀷絳夌瓑銆偮犅犅?聽聽聽 JackRabbit 鎻愪緵浜嗗嚑縐嶉夋嫨錛屼竴縐嶆槸鍍忎笂闈緥瀛愰噷閰嶇疆鐨勫瓨鍌ㄥ湪鏈湴鏂囦歡閲岋紝LocalFileSystem. 濡傛灉浣犳兂鎶婂畠浠瓨鍌ㄥ湪鏁版嵁搴撻噷錛屼綘鍙互浣跨敤 DbFileSystem.
b錛?lt;Security>:鍐呭浠撳簱鐨勫畨鍏ㄩ厤緗紝瀹冩湁涓や釜瀛愬厓绱狅細<AccessManager>鍜?lt;LoginModule>銆?lt;AccessManager>閰嶇疆鐨勭被鐢ㄦ潵鍒ゆ柇鐢ㄦ埛鏈夋病鏈夋潈闄愭潵瀵圭壒瀹氭暟鎹墽琛岀壒瀹氱殑鎿嶄綔銆?br />聽 c錛?lt;Workspaces>:榪欎釜鍏冪礌鐨勯厤緗鎵鏈夌殑workspace閮介氱敤銆傚畠鐨剅ootPath 灞炴ф槸鎵鏈墂orkspace鏂囦歡澶圭殑鏍圭洰褰曪紝鍦ㄦ垜浠殑渚嬪瓙閲屽畠鏄痗:/temp/Blogging/Workspace錛沝efaultWorkspace 灞炴у垯鍖呭惈浜唚orkspace鐨勯粯璁ゅ悕銆?br />聽 d錛?lt;Workspace>:榪欎釜鍏冪礌鏄墍鏈墂orkspace鐨勯粯璁ら厤緗ā鏉褲傚幓姣忎釜workspace鏂囦歡澶逛笅浣犻兘浼氬彂鐜頒竴涓獁orkspace.xml鏂囦歡錛岃繖涓枃浠跺拰榪欎釜鍏冪礌鐨勯厤緗竴妯′竴鏍楓備笁涓瓙鍏冪礌錛?lt;FileSystem>錛屽拰榪欎釜workspace鐩稿叧鏁版嵁鐨勫瓨鍌ㄤ綅緗紱<PersistenceManager> 錛岃繖涓獁orkspace鍐呭鑺傜偣瀛樺偍絳栫暐錛?lt;SearchIndex>錛屽彲閫夛紝鍏ㄦ枃媯绱€?br />聽 e錛?lt;Versioning>:閰嶇疆涓涓増鏈浉鍏崇殑瀵硅薄銆傚叾瀹濲ackRabbit涔熸槸鎶婂畠浣滀負鑺傜偣鏉ュ鐞嗙殑銆?br />
榪欎袱涓弬鏁板彲浠ラ氳繃涓ょ鏂瑰紡璁劇疆錛屼竴縐嶆槸鍦ㄤ粨搴撳疄渚嬪垱寤烘椂鐩存帴浼犲埌Jackrabbit閲屽幓錛屼竴縐嶆槸闂存帴鐨勯氳繃璁劇疆JNDI object factory銆?br />浣犲彲浠ヨ緗畂rg.apache.jackrabbit.repository.home 榪欎釜緋葷粺灞炴х殑鍊兼潵鎸囧畾浣犵殑鍐呭浠撳簱涓葷洰褰曪紱涔熷彲浠ヨ緗?br />org.apache.jackrabbit.repository.conf 榪欎釜緋葷粺灞炴х殑鍊兼潵鎸囧畾浣犵殑鍐呭浠撳簱閰嶇疆鏂囦歡repository.xml銆傚鏋滀綘涓嶈瀹氳繖涓や釜
鍙傛暟錛孞ackrabbit浼氭妸褰撳墠鐩綍浣滀負鍐呭浠撳簱涓葷洰褰曪紝鍚屾椂錛屽畠鏈変竴涓粯璁ょ殑鍐呭浠撳簱閰嶇疆鏂囦歡銆?img src ="http://www.tkk7.com/RongHao/aggbug/95637.html" width = "1" height = "1" />

ronghao 2007-01-23 23:57 鍙戣〃璇勮
]]>
浠涔堟槸JAVA鍐呭浠撳簱(Java Content Repository錛?1)http://www.tkk7.com/RongHao/archive/2007/01/23/95547.htmlronghaoronghaoTue, 23 Jan 2007 07:13:00 GMThttp://www.tkk7.com/RongHao/archive/2007/01/23/95547.htmlhttp://www.tkk7.com/RongHao/comments/95547.htmlhttp://www.tkk7.com/RongHao/archive/2007/01/23/95547.html#Feedback1http://www.tkk7.com/RongHao/comments/commentRss/95547.htmlhttp://www.tkk7.com/RongHao/services/trackbacks/95547.htmlJSR-170鎶婅嚜宸卞畾涔変負涓涓兘涓庡唴瀹逛粨搴撲簰鐩歌闂殑錛岀嫭绔嬬殑錛屾爣鍑嗙殑鏂瑰紡銆傚悓鏃跺畠涔熷鍐呭浠撳簱鍋氬嚭浜嗚嚜宸辯殑瀹氫箟錛屽畠璁や負鍐呭浠撳簱鏄竴涓珮綰х殑淇℃伅綆$悊緋葷粺錛岃緋葷粺鏄槸浼犵粺鐨勬暟鎹粨搴撶殑鎵╁睍錛屽畠鎻愪緵浜嗚濡傜増鏈帶鍒躲佸叏鏂囨绱紝璁塊棶鎺у埗錛屽唴瀹瑰垎綾匯佽闂帶鍒躲佸唴瀹逛簨浠剁洃瑙嗙瓑鍐呭鏈嶅姟銆?br />
Java Content Repository聽 API錛圝SR-170錛夎瘯鍥懼緩绔嬩竴濂楁爣鍑嗙殑API鍘昏闂唴瀹逛粨搴撱傚鏋滀綘瀵瑰唴瀹圭鐞嗙郴緇燂紙CMS錛変笉鐔熸倝鐨勮瘽錛屼綘涓瀹氫細瀵瑰唴瀹逛粨搴撴槸浠涔堟劅鍒扮枒鎯戙備綘鍙互榪欐牱鍘葷悊瑙o紝鎶婂唴瀹逛粨搴撶悊瑙d負涓涓敤鏉ュ瓨鍌ㄦ枃鏈拰浜岃繘鍒舵暟鎹紙鍥劇墖錛寃ord鏂囨。錛孭DF絳夌瓑錛夌殑鏁版嵁瀛樺偍搴旂敤紼嬪簭銆備竴涓樉钁楃殑鐗圭偣鏄綘涓嶇敤鍏沖績浣犵湡姝g殑鏁版嵁鍒板簳瀛樺偍鍦ㄤ粈涔堝湴鏂癸紝鏄叧緋繪暟鎹簱錛熸槸鏂囦歡緋葷粺錛熻繕鏄疿ML錛熶笉浠呬粎鏄暟鎹殑瀛樺偍鍜岃鍙栵紝澶у鏁扮殑鍐呭浠撳簱榪樻彁渚涗簡鏇村姞楂樼駭鐨勫姛鑳斤紝渚嬪璁塊棶鎺у埗錛屾煡鎵撅紝鐗堟湰鎺у埗錛岄攣瀹氬唴瀹圭瓑絳夈?br />
涓孌墊椂闂翠互鏉ュ競鍦轟笂鍑虹幇浜嗗悇涓巶瀹跺紑鍙戠殑涓嶅悓鐨凜MS緋葷粺錛岃繖浜涚郴緇熼兘寤虹珛鍦ㄤ粬浠悇鑷殑鍐呭浠撳簱涔嬩笂銆?br />闂鍑虹幇浜嗭紝姣忎釜CMS寮鍙戝晢閮芥彁渚涗簡浠栦滑鑷繁鐨凙PI鏉ヨ闂唴瀹逛粨搴撱傝繖瀵瑰簲鐢ㄧ▼搴忕殑寮鍙戣呭甫鏉ヤ簡鍥版壈錛屽洜涓轟粬浠瀛︿範涓嶅悓鐨勫紑鍙戝晢鎻愪緵鐨凙PI錛屽悓鏃訛紝浠栦滑鐨勪唬鐮佷篃涓庤繖浜涚壒瀹氱殑API浜х敓浜嗙粦瀹氥?br />
JSR-170姝f槸涓鴻В鍐寵繖涓闂鑰屽嚭鐜扮殑錛屽畠鎻愪緵浜嗕竴濂楁爣鍑嗙殑API鏉ヨ闂換浣曟暟鎹粨搴撱傞氳繃JSR-170錛屼綘寮鍙戜唬鐮佸彧闇瑕佸紩鐢?javax.jcr.* 榪欎簺綾誨拰鎺ュ彛銆傚畠閫傜敤浜庝換浣曞吋瀹笿SR-170瑙勮寖鐨勫唴瀹逛粨搴撱?br />
鎴戜滑灝嗛氳繃涓涓緥瀛愭潵閫愭浜嗚ВJSR-170銆?br />
涓轟粈涔堥渶瑕?Java Content Repository API

闅忕潃鍚勪釜鍘傚鍚勮嚜鐨勫唴瀹逛粨搴撳疄鐜版暟閲忕殑澧為暱錛屼漢浠秺鏉ヨ秺闇瑕佷竴緇勯氱敤鐨勭紪紼嬫帴鍙f潵浣跨敤榪欎簺鍐呭浠撳簱錛岃繖灝辨槸JSR-170鎵瑕佸仛鐨勪笢瑗褲傚畠鎻愪緵涓緇勯氱敤鐨勭紪紼嬫帴鍙f潵榪炴帴鍐呭浠撳簱銆備綘鍙互鎶奐SR-170鐞嗚В涓哄拰JDBC綾諱技鐨凙PI錛岃繖鏍蜂綘鍙互涓嶄緷璧栦換浣曞叿浣撶殑鍐呭浠撳簱瀹炵幇鏉ュ紑鍙戜綘鐨勭▼搴忋備綘鍙互鐩存帴浣跨敤鏀寔JSR-170鐨勫唴瀹逛粨搴擄紱鎴栬呭鏋滀竴浜涘巶瀹剁殑鍐呭浠撳簱涓嶆敮鎸丣SR-170鍒欏彲浠ラ氳繃榪欎簺鍘傚鎻愪緵鐨凧SR-170椹卞姩鏉ュ畬鎴愪粠JSR-170涓庡巶瀹剁壒瀹氱殑鍐呭浠撳簱鐨勮漿鎹€?br />
涓嬮潰榪欏紶鍥炬弿榪頒簡浣跨敤JSR-170寮鍙戠殑搴旂敤緋葷粺鐨勭粨鏋勩傚湪璇ョ郴緇熻繍琛岀殑鏃跺欙紝瀹冨彲浠ユ搷浣滃唴瀹逛粨搴?錛?錛?涓殑浠繪剰涓涓傚湪榪欎簺鍐呭浠撳簱褰撲腑錛屽彧鏈?鏄洿鎺ユ敮鎸丣SR-170鐨勶紝鍓╀笅鐨勪袱涓兘闇瑕丣SR-170椹卞姩鏉ュ拰搴旂敤緋葷粺浜や簰銆傛敞鎰忥細浣犵殑搴旂敤緋葷粺瀹屽叏涓嶇敤鍏沖績浣犵殑鏁版嵁鏄浣曞瓨鍌ㄧ殑銆?鍙兘浣跨敤浜嗗叧緋繪暟鎹簱鏉ュ瓨鍌紝鑰?浣跨敤浜嗘枃浠剁郴緇燂紝鑷充簬涓婏紝瀹冪敋鑷蟲洿鍓嶅崼鐨勪嬌鐢ㄤ簡XML銆?br />
repositorymodel1.gif

JSR-170 API瀵逛笉鍚岀殑浜哄憳鎻愪緵浜嗕笉鍚岀殑濂藉銆?br />
鈼忓浜庡紑鍙戣呮棤闇浜嗚В鍘傚鐨勪粨搴撶壒瀹氱殑API錛屽彧瑕佸吋瀹笿SR-170灝卞彲浠ラ氳繃JSR-170璁塊棶鍏朵粨搴撱?br />鈼忓浜庝嬌鐢–MS鐨勫叕鍙稿垯鏃犻渶鑺辮垂璧勯噾鐢ㄤ簬鍦ㄤ笉鍚岀綾籆MS鐨勫唴瀹逛粨搴撲箣闂磋繘琛岃漿鎹€?br />鈼忓浜嶤MS鍘傚錛屾棤闇鑷繁寮鍙戝唴瀹逛粨搴擄紝鑰屼笓娉ㄤ簬寮鍙慍MS搴旂敤銆?img src ="http://www.tkk7.com/RongHao/aggbug/95547.html" width = "1" height = "1" />

ronghao 2007-01-23 15:13 鍙戣〃璇勮
]]>
浣跨敤freemarker緇檆ms鐢熸垚闈欐乭tmlhttp://www.tkk7.com/RongHao/archive/2006/11/27/83858.htmlronghaoronghaoMon, 27 Nov 2006 10:51:00 GMThttp://www.tkk7.com/RongHao/archive/2006/11/27/83858.htmlhttp://www.tkk7.com/RongHao/comments/83858.htmlhttp://www.tkk7.com/RongHao/archive/2006/11/27/83858.html#Feedback3http://www.tkk7.com/RongHao/comments/commentRss/83858.htmlhttp://www.tkk7.com/RongHao/services/trackbacks/83858.html鑰冭檻涓涓唴瀹硅妭鐐笴ontent,鍏朵腑鑺傜偣鏈変釜pagecontent鐨勫睘鎬э紝榪欎釜灞炴х敤鏉ュ瓨鍌ㄧ敤鎴峰湪鍚庡彴杈撳叆鐨勫唴瀹癸紝
鍐呭+妯℃澘=鏄劇ず錛岃繖閲屾槸錛?br />鍐呭+妯℃澘-->鏄劇ず闈欐乭tml
鍐呭鐢‵CK鏉ョ紪杈戯紝妯℃澘涔熷悓鏍風敤FCK緙栬緫錛岃繖閲岀敤freemarker鏃犵枒鏄竴涓ソ鐨勯夋嫨銆傝繖閲屾槸涓渶綆鍗曠殑渚嬪瓙銆?br />棣栧厛瀹氫箟涓涓渶綆鍗曠殑妯℃澘content.ftl
<html>
$
{content}
</html>
鐒跺悗灝辨槸鎶婂唴瀹瑰~鍏呰繘鍘伙細
聽Configuration聽cfg聽=new聽Configuration();
//妯℃澘瀛樺偍鐨勭洰褰?/span>
聽cfg.setDirectoryForTemplateLoading(Path.getTemplateDirectory());
//榛樿
聽cfg.setObjectWrapper(new聽DefaultObjectWrapper());
//濉厖鏁版嵁聽聽聽聽聽聽聽聽
Map聽root聽=new聽HashMap();
root.put(
"content",聽c.getPageContent());
聽聽聽聽聽Template聽temp聽
=聽cfg.getTemplate("content.ftl");
//鍙戝竷鏃ユ湡
String聽date=c.getActivedate();
String聽filename聽
=聽c.getId()+".html";
//鍒涘緩鐩綍
Path.createFold(Path.getWebCmsHtmlDirPath(),date);
Writer聽out聽
=new聽OutputStreamWriter(new聽FileOutputStream(Path.getWebCmsHtmlDirPath()+"/"+date+"/"+filename));
temp.process(root,聽out);
out.flush();
鍏跺疄灝辨槸榪欎箞綆鍗曪紒瀵筯tml鐨勭鐞嗗氨寰堝鏄撲簡錛屽熀鏈殑FILE鎿嶄綔

ronghao 2006-11-27 18:51 鍙戣〃璇勮
]]>
寮濮嬪紑鍙戯跡錛汲http://www.tkk7.com/RongHao/archive/2006/11/16/81638.htmlronghaoronghaoThu, 16 Nov 2006 14:55:00 GMThttp://www.tkk7.com/RongHao/archive/2006/11/16/81638.htmlhttp://www.tkk7.com/RongHao/comments/81638.htmlhttp://www.tkk7.com/RongHao/archive/2006/11/16/81638.html#Feedback6http://www.tkk7.com/RongHao/comments/commentRss/81638.htmlhttp://www.tkk7.com/RongHao/services/trackbacks/81638.html1.寰堝CMS閮藉寘鎷簡鍙戝竷妯℃澘銆佹樉紺烘ā鏉匡紝榪欓噷涓嶇敤鑰冭檻錛孋MS浠呬粎鏄唴瀹圭鐞嗭紝璐熻矗鍐呭瀛樺偍錛岃嚦浜庡睍鐜幫紝閭f槸闂ㄦ埛浜嬫儏錛庡唴瀹瑰拰灞曠幇鍒嗗紑錛嶤MS浣滀負闂ㄦ埛鏁版嵁婧愮殑涓涓夋嫨錛?br />2.涓涓畬鏁寸殑CMS騫朵笉鏄綔涓轟竴涓墍璋撶殑鏍忕洰淇℃伅錛屽畠榪樺繀欏誨寘鎷鍚勭鏂囦歡鐨勪繚瀛橈紟瀵規暣涓鉤鍙扮殑鏂囦歡鍜岄檮浠惰繘琛岀粺涓綆$悊
3.鐗堟湰綆$悊
4.鍏ㄦ枃媯绱?br />5.鏉冮檺綆$悊錛屽叿浣撳埌姣忎竴涓妭鐐圭殑閰嶇疆錛庝笉浠呬粎鏄湪CMS鍐呴儴錛岀敤鎴烽氳繃闂ㄦ埛鐪嬪埌鐨勪俊鎭篃鏄緇忚繃鏉冮檺榪囨護錛堝唴緗戦棬鎴鳳級
6.涓濂楀彲鎵╁睍鐨勭粍緇囩敤鎴鋒帴鍙o紙鐩墠鏄洿鎺ョ敤騫沖彴鍐呴儴鐨勭粍緇囩敤鎴鳳紝鑰冭檻鍒癈MS灝嗘潵鐨勭嫭绔嬫э紝榪欎釜涔熸槸蹇呰鐨勶級
7.鏂囦歡鐨剋ebdav鏀寔
澶ф灝辨槸榪欎簺浜嗭紝宸插垵姝ュ畬鎴愪簡瀵筳cr鐨勫皝瑁呭拰鏋舵瀯錛庢劅鍒皊pring鏈夊姴浣夸笉涓婏紝鍛靛懙錛?br />CMS淇℃伅鍙戝竷闇姹?br />淇℃伅鍒嗕袱縐嶏細鏈彂甯冪殑鍜屽彂甯冪殑
1銆佹湭鍙戝竷鐨勪俊鎭彲浠ヨ繘琛屽鍒犳敼鏌ャ佺増鏈鐞嗐佷笂浼犲拰涓嬭澆闄勪歡
2銆佸皢鏈彂甯冪殑淇℃伅鍙戝竷錛屼俊鎭殑鐘舵佸皢緗負鍙戝竷鐘舵佸悓鏃剁粨鍚堟ā鏉跨敓鎴愰潤鎬丠TML
3銆佸彂甯冪殑淇℃伅鏈韓浼氬鍔犱竴涓闈欐丠TNL鑱旀帴鐨勫睘鎬э紝鍦ㄥ悗鍙板嵆鍙互瀵歸潤鎬丠TML榪涜嫻忚
4銆佸彂甯冪殑淇℃伅渚濇棫鍙互榪涜鍐呭淇敼鍜岀増鏈仮澶嶏紝榪欐牱浼氬皢鐢熸垚鐨勯潤鎬丠TML鍒犻櫎鐒跺悗鍐嶉噸鏂扮敓鎴?br />5銆佸彂甯冪殑淇℃伅鍙互鍒犻櫎錛屼俊鎭繘鍏ュ洖鏀剁珯錛岄潤鎬丠TML鍚屾椂琚垹闄?br />6銆佷粠鍥炴敹绔欐仮澶嶄俊鎭紝淇℃伅閲嶆柊鍙戝竷錛岀敓鎴愰潤鎬丠TML
7銆侀氳繃鏍忕洰鐨勮緗潵鍐沖畾淇℃伅鐨勫彂甯冩槸鐩存帴鍙戝竷榪樻槸閫氳繃宸ヤ綔嫻佸彂甯?img src ="http://www.tkk7.com/RongHao/aggbug/81638.html" width = "1" height = "1" />

ronghao 2006-11-16 22:55 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 国产高清对白在线观看免费91| 又粗又黄又猛又爽大片免费| 一边摸一边爽一边叫床免费视频| 亚洲午夜精品国产电影在线观看| 亚洲一区二区三区在线观看精品中文| 麻豆成人精品国产免费| 亚洲第一网站免费视频| 免费国产午夜高清在线视频| 无码AV动漫精品一区二区免费 | 一级做a爰黑人又硬又粗免费看51社区国产精品视| 亚洲精品视频免费看| 国产亚洲精品岁国产微拍精品| 四虎影院永久免费观看| 在线成人a毛片免费播放| 手机看黄av免费网址| 1000部拍拍拍18勿入免费视频下载| 9久热这里只有精品免费 | 免费午夜爽爽爽WWW视频十八禁| 一个人看的www在线观看免费| 91人成网站色www免费下载| 国产va在线观看免费| 99久久免费国产精品热| 人体大胆做受免费视频| 免费看美女午夜大片| 污视频网站在线免费看| 黄页网址在线免费观看| 黄色网址大全免费| 成人免费网站视频www| 视频免费1区二区三区| 色屁屁在线观看视频免费| 免费亚洲视频在线观看| 免费国产污网站在线观看不要卡| 国产尤物在线视精品在亚洲| 国产精品亚洲精品爽爽| 日韩免费在线中文字幕| 精品免费久久久久国产一区 | 又粗又硬又黄又爽的免费视频 | 九九视频高清视频免费观看| 无码AV动漫精品一区二区免费| 精品无码国产污污污免费网站国产| jizz在线免费播放|