Java实现RSS

RSS是一个标准的XML文件,Rss阅读器可以读取这个XML文件获得文章的信息,使用户可以通过Rss阅读器
而非浏览器阅读Blog,我们只要动态生成这个XML文件便可以了。RSSLibJ是一个专门读取和生成RSS的小
巧实用的Java库,大小仅25k,可以从http://sourceforge.net/projects/rsslibj/下载rsslibj-
1_0RC2.jar和它需要的EXMLjar两个文件,然后复制到web/WEB-INF/lib/下。
  
  
  
下载下来之后把 扩张名.zip 改为 .jar 就行了。
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
import  com.rsslibj.elements.Channel;
public  class  Writer {
     public  static  void  main(String[] args)
             throws  InstantiationException, ClassNotFoundException,
             IllegalAccessException {
         Channel channel= new  Channel();
         channel.setDescription( "This is my sample channel." );
         channel.setLink( "http://localhost/" );
         channel.setTitle( "My Channel" );
         channel.setImage( "http://localhost/" ,
                 "The Channel Image" ,
                 "http://localhost/foo.jpg" );
         channel.setTextInput( "http://localhost/search" ,
                 "Search The Channel Image" ,
                 "The Channel Image" ,
                 "s" );
         channel.addItem( "http://localhost/item1" ,
                 "The First Item covers details on the first item>" ,
                 "The First Item" )
                 .setDcContributor( "Joseph B. Ottinger" );
         channel.addItem( "http://localhost/item2" ,
                 "The Second Item covers details on the second item" ,
                 "The Second Item" )
                 .setDcCreator( "Jason Bell" );
         System.out.println( "The feed in RDF: " +channel.getFeed( "rss" ));
     }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Channel channel = new  Channel();
channel.setDescription(account.getDescription());
baseUrl = baseUrl.substring( 0 , n);
channel.setLink( "http://server-name/home.c?accountId="  + accountId);
channel.setTitle(account.getTitle());
List articles = facade.getArticles(accountId, account.getMaxPerPage(), 1 );
Iterator it = articles.iterator();
while (it.hasNext()) {
     Article article = (Article)it.next();
     channel.addItem( "http://server-name/article.c?articleId="  + article.getArticleId(),
         article.getSummary(), article.getTitle()
     );
}
// 输出xml:
response.setContentType( "text/xml" );
PrintWriter pw = response.getWriter();
pw.print(channel.getFeed( "rss" ));
pw.close();

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值