主頁 > 知識庫 > JSP技術(shù)實現(xiàn)RSS訂閱功能的示例

JSP技術(shù)實現(xiàn)RSS訂閱功能的示例

熱門標(biāo)簽:好操作的電話機器人廠家 南昌市地圖標(biāo)注app 如何用中國地圖標(biāo)注數(shù)字點 南京新思維電話機器人 泰州泰興400電話 怎么申請 聊城智能電銷機器人外呼 百度地圖添加標(biāo)注圖標(biāo)樣式 地圖標(biāo)注市場怎么樣 企業(yè)怎么在聯(lián)通申請400電話

RSS也叫聚合RSS是在線共享內(nèi)容的一種簡易方式(也叫聚合內(nèi)容,Really Simple Syndication)。通常在時效性比較強的內(nèi)容上使用RSS訂閱能更快速獲取信息,網(wǎng)站提供RSS輸出,有利于讓用戶獲取網(wǎng)站內(nèi)容的最新更新。同時也是醫(yī)學(xué)、物理學(xué)、數(shù)學(xué)等學(xué)科專有名詞的英文縮寫簡稱。

最初的RSS要追溯到1995年,當(dāng)Ramanathan V. Guha和其他在蘋果電腦公司的高級技術(shù)組開發(fā)了一個測試的內(nèi)容框架。更多有關(guān)RSS的資料可查看這里,下面我們來為我們的JSP網(wǎng)站生成RSS。

RSS用途:

1、訂閱BLOG

(你可以訂閱你工作中所需的技術(shù)文章;也可以訂閱與你有共同愛好的作者的Blog,總之,你對什么感興趣你就可以訂什么)

2、訂閱新聞

(無論是奇聞怪事、明星消息、體壇風(fēng)云,只要你想知道的,都可以訂閱)   你再也不用一個網(wǎng)站一個網(wǎng)站,一個網(wǎng)頁一個網(wǎng)頁去逛了。只要這將你需要的內(nèi)容訂閱在一個RSS閱讀器中,這些內(nèi)容就會自動出現(xiàn)你的閱讀器里,你也不必為了一個急切想知道的消息而不斷的刷新網(wǎng)頁,因為一旦有了更新,RSS閱讀器就會自己通知你.

用JSP技術(shù)實現(xiàn)RSS功能之最基本的RSS結(jié)構(gòu):

?xml version="1.0" encoding="UTF-8" standalone="yes"?>  
rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" 
xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" 
xmlns:wfw="http://wellformedweb.org/CommentAPI/"   
xmlns:slash="http://purl.org/rss/1.0/modules/slash/">  
/rss>  
?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
rss version="2.0"  
xmlns:dc="http://purl.org/dc/elements/1.1/"  
xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"  
xmlns:wfw="http://wellformedweb.org/CommentAPI/"  
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"> 
/rss> 

用JSP技術(shù)實現(xiàn)RSS功能其實就是一個XML文件!

在rss>/rss>之間我們可以自由配置自己要發(fā)布的RSS的格式。例如此次我們要發(fā)布的RSS是這樣的:

?xml version="1.0" encoding="UTF-8" standalone="yes"?>  
rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" x  
mlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"  
xmlns:wfw="http://wellformedweb.org/CommentAPI/" x  
mlns:slash="http://purl.org/rss/1.0/modules/slash/">  
channel>  
item>  
title>JSP網(wǎng)站RSS的實現(xiàn)/title>  
author>neeke/author>  
pubDate>2008-10-04/pubDate>  
description>這是來自尼克技術(shù)博客博客的RSS/description>  
category>J2EE技術(shù)/category>  
/item>  
/channel>  
/rss> 

了解了它的結(jié)構(gòu)實現(xiàn)起來就容易了。我們創(chuàng)建IO流,并從數(shù)據(jù)庫中獲取到我們要發(fā)布的RSS資源的集合,然后按照它的格式與結(jié)構(gòu)一行一行的寫入到一個RSS.XML文件中即可。

public static void publishRss(String rssPath)  
  {  
  //獲得要發(fā)布的RSS數(shù)據(jù)集合  
    ArrayList rssArticle = ArticleManager.getArticlesAll();  
    try { //創(chuàng)建輸入輸出流  
      FileWriter fw = new FileWriter(rssPath);  
      BufferedWriter bw = new BufferedWriter(fw); //開始按照格式寫入數(shù)據(jù)  
      bw.write(  
          "?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\r\n");  
      bw.write("?xml-stylesheet type=\"text/xsl\" href=\"CSS/rss.xslt\"?>");  
      bw.write("rss version=\"2.0\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\"  
 xmlns:trackback=\"http://madskills.com/public/xml/rss/module/trackback/\"  
 xmlns:wfw=\"http://wellformedweb.org/CommentAPI/\"  
 xmlns:slash=\"http://purl.org/rss/1.0/modules/slash/\">\r\n");  
      bw.write("channel>\r\n");  
      for (int i = 0; i  rssArticle.size(); i++) {  
        ArticleBean article = (ArticleBean) rssArticle.get(i);  
        bw.write("item>\r\n");  
        bw.write("title>" + article.getTitle() + "/title>\r\n");  
        bw.write("author>" + article.getAuthorId() + "/author>\r\n");  
        bw.write("pubDate>" + article.getPostTime() + "/pubDate>\r\n");  
        bw.write("description>" + article.getIntro() +  
             "/description>\r\n");  
        bw.write("category>" + article.getCateId() + "/category>\r\n");  
        bw.write("/item>\r\n");  
      }  
      bw.write("/channel>\r\n");  
      bw.write("/rss>");  
      //關(guān)閉流,RSS發(fā)布完畢。  
      bw.close();  
      fw.close();  
    } catch (IOException ex) {  
      ex.printStackTrace();  
    }  
  } 

這樣用JSP實現(xiàn)RSS就發(fā)布完畢了,經(jīng)過我的測試打開后會提示出錯,用記事本打開生成的源文件,然而我們的RSS文件是一點問題都沒有的哇,怎么可能呢?接著又用JBuilder打開這個XML文件,暈倒~漢字全是亂碼,立刻意識到問題出在了哪里了。在哪呢?其實就是文件的編碼問題!將原先bw.write("?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\r\n");該行代碼中的UTF-8改為GBK,重新跑一次程序,一切OK!

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 基于JSP的RSS閱讀器的設(shè)計與實現(xiàn)方法(推薦)

標(biāo)簽:開封 銅川 自貢 山南 吉林 臨汾 烏蘭察布 白銀

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《JSP技術(shù)實現(xiàn)RSS訂閱功能的示例》,本文關(guān)鍵詞  JSP,技術(shù),實現(xiàn),RSS,訂閱,功能,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《JSP技術(shù)實現(xiàn)RSS訂閱功能的示例》相關(guān)的同類信息!
  • 本頁收集關(guān)于JSP技術(shù)實現(xiàn)RSS訂閱功能的示例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章