DSpace講座(三):API使用
這週的教學,我們簡單地來看看DSpace的JAVA程式碼結構,讓你輕鬆知道怎麼使用DSpace的API。然後帶你看看DSpace的Content(對於Community、Collection、Item等物件)的API怎麼使用,並作一個簡單的範例JSP網頁。
這次教學的附件請點選這裡下載。
這週的教學,我們簡單地來看看DSpace的JAVA程式碼結構,讓你輕鬆知道怎麼使用DSpace的API。然後帶你看看DSpace的Content(對於Community、Collection、Item等物件)的API怎麼使用,並作一個簡單的範例JSP網頁。
這次教學的附件請點選這裡下載。
布丁大大的文章真是精闢入裡,簡報裡面有說明如何從handle來取得content的網址,不過現在我想從網址,來直接取得bitstream,也就是直接從網址來取得dspace裡的實體檔案,不知道有沒有方法這樣取呢?
回覆刪除麻煩指點指點.
community、collection跟item都會擁有handle,但是bitstream會受到bundle影響,顯示的網址比較特殊,有分成從bitstream ID來retreve、還有從item去取得item之中的bitstream。
回覆刪除目前學校停電伺服器掛點我沒辦法查,晚點再回你吧。
謝謝不吝指教:)
回覆刪除原來還有分成bitstream ID 和從item 來取兩種方式...
麻煩站大幫忙囉.
DSpace 1.5版中
回覆刪除[dspace-source]/dspace-api/src/main/java/org/dspace/content/Item.java裡面已經寫了很多取用Bitstream的方法
像是
public Bundle[] getBundles()
public Bitstream createSingleBitstream()
public Bitstream[] getNonInternalBitstreams()
第一種方法:用bitstreamID來取得檔案
如果要從網址取用Bitstream的話,外部Bitsream(NonInternalBitstreams)可以用http://[dspace-網址]:8080/jspui/retrieve/[bitstreamID]/[任意檔名]來取得喔
第二種方法:從item的handle延伸
另一種的網址型態就是item本身handle碼加上編號,在display-item的sample模式下可以看到的。
例如這個網址:http://dspace.lib.fcu.edu.tw/handle/2377/1984
當中的這個檔案http://dspace.lib.fcu.edu.tw/bitstream/2377/1984/1/ce07ncs002006000124.pdf
注意到除了前面的handle改成bitstream之外,後面也加上了「1/ce07ncs002006000124.pdf」
兩種方法比較,我個人比較偏好前者,因為不需要在意檔案的順序即可取用到bitstream,但後者才是DSpace對外開放的存取方法,因此盡可能使用後者是比較合宜的作法。