编程开发 > JSP > 文章内容

JSP教程:JSP技术实现RSS订阅功能的示例

2017-7-4编辑:daibenhua

  RSS也叫聚合RSS是在线共享内容的一种简易方式(也叫聚合内容,Really Simple Syndication)。通常在时效性比较强的内容上使用RSS订阅能更快速获取信息,网站提供RSS输出,有利于让用户获取网站内容的最新更新。同时也是医学、物理学、数学等学科专有名词的英文缩写简称。

  最初的RSS要追溯到1995年,当Ramanathan V. Guha和其他在苹果电脑公司的高级技术组开发了一个测试的内容框架。更多有关RSS的资料可查看这里,下面我们来为我们的JSP网站生成RSS。

  RSS用途:

  1、订阅BLOG

  (你可以订阅你工作中所需的技术文章;也可以订阅与你有共同爱好的作者的Blog,总之,你对什么感兴趣你就可以订什么)

  2、订阅新闻

  (无论是奇闻怪事、明星消息、体坛风云,只要你想知道的,都可以订阅) 你再也不用一个网站一个网站,一个网页一个网页去逛了。只要这将你需要的内容订阅在一个RSS阅读器中,这些内容就会自动出现你的阅读器里,你也不必为了一个急切想知道的消息而不断的刷新网页,因为一旦有了更新,RSS阅读器就会自己通知你.

  用JSP技术实现RSS功能之最基本的RSS结构:

  ?

1
2
3
4
5
6
7
8
9
10
11
12
13
xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"
rss
xml version="1.0" encoding="UTF-8" standalone="yes"?>
<rss version="2.0" 
rss>

  用JSP技术实现RSS功能其实就是一个XML文件!

  在之间我们可以自由配置自己要发布的RSS的格式。例如此次我们要发布的RSS是这样的:

  ?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"
<channel
<item
<title>JSP网站RSS的实现title
<author>neekeauthor
<pubDate>2008-10-04pubDate
<description>这是来自尼克技术博客博客的RSSdescription
<category>J2EE技术category
item
channel
rss>

  了解了它的结构实现起来就容易了。我们创建IO流,并从数据库中获取到我们要发布的RSS资源的集合,然后按照它的格式与结构一行一行的写入到一个RSS.XML文件中即可。

  ?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
public static void publishRss(String rssPath) 
  
  //获得要发布的RSS数据集合 
    ArrayList rssArticle = ArticleManager.getArticlesAll(); 
    try { //创建输入输出流 
      FileWriter fw = new FileWriter(rssPath); 
      BufferedWriter bw = new BufferedWriter(fw); //开始按照格式写入数据 
      bw.write( 
          "\r\n"); 
      bw.write(""); 
      bw.write("http://purl.org/dc/elements/1.1/\" 
 xmlns:slash=\"http://purl.org/rss/1.0/modules/slash/\">\r\n"); 
      bw.write("\r\n"); 
      for (int i = 0; i < rssArticle.size(); i++) { 
        ArticleBean article = (ArticleBean) rssArticle.get(i); 
        bw.write("\r\n"); 
        bw.write("\r\n"); 
        bw.write("" + article.getAuthorId() + "\r\n"); 
        bw.write("" + article.getPostTime() + "\r\n"); 
        bw.write("" + article.getIntro() + 
             "\r\n"); 
        bw.write("" + article.getCateId() + "\r\n"); 
        bw.write("\r\n"); 
      
      bw.write("\r\n"); 
      bw.write(""); 
      //关闭流,RSS发布完毕。 
      bw.close(); 
      fw.close(); 
    } catch (IOException ex) { 
      ex.printStackTrace(); 
    
  }

  这样用JSP实现RSS就发布完毕了,经过我的测试打开后会提示出错,用记事本打开生成的源文件,然而我们的RSS文件是一点问题都没有的哇,怎么可能呢?接着又用JBuilder打开这个XML文件,晕倒~汉字全是乱码,立刻意识到问题出在了哪里了。在哪呢?其实就是文件的编码问题!将原先bw.write("\r\n");该行代码中的UTF-8改为GBK,重新跑一次程序,一切OK!

JSP教程:JavaScript实现城市选择控件的效果

热点推荐

登录注册
触屏版电脑版网站地图