`
summeryhrb
  • 浏览: 20284 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

为网站增加订阅——Rss实战

阅读更多

要说rssN年前就知道这个东西了,曾经也用foxmal订阅过新闻,到底rss是怎么回事,一直没好好研究,这回研究了一下,相当简单,但是思想非常好,应用模式非常便利。越来越多的例子证明,思想是多么重要啊。

Rss是什么就不用在这里赘述了,从开发的角度,rss就是以xml的形式表示网站的内容的链接信息,客户端工具(比如foxmail)和抓虾或google reader通过访问提供的xml,对其解析出超级链接,访问链接对应的页面,该xml数据就是rss,值得一提的是客户端工具对rss的解析是增量式的。

下面是一个典型的rss文件

<rss version="2.0"> 
	<channel> 
		<title><![CDATA[JavaEI热点精华索引--数据库开发精华]]></title>
		<link>http://www.javaei.com</link>
		<description><![CDATA[JavaEI热点精华索引--数据库开发精华]]></description>
	      <item> 
	           <title><![CDATA[javaei 2009/5/3-2009/5/9 第19周 数据库开发精华]]></title> 
	           <link>http://www.javaei.com/content/more/2009/5/19/peCDapG534WRRw8e0875.html</link> 
	           <author>javaei</author> 
	           <pubDate>2009-5-9</pubDate> 
	           <description><![CDATA[javaei 2009/5/3-2009/5/9 第19周 数据库开发精华]]></description> 
	           <comments>http://www.javaei.com/content/split/2009/5/index2009519.html</comments> 
	      </item>                
	</channel>
</rss>

 

 

 

各标签的意义在网上搜一下就明白了,如果不想整明白,直接把163sohurss复制下来改造一下就可以了。

Rss其实就是xml,那么rss的生成可以采用一切用之于xml的技术,我一般输出xml的方式无非是dom输出和直接用输出流输出文本,这次我采用的是jsp,用jsp做模板输出可以充分利用jsp标签,把响应内容保存为xml即可。

<?xml version="1.0" encoding="UTF-8"?>
<%@ page language="java"  pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="/mytag" prefix="yjf" %>
<rss version="2.0"> 
	<channel> 
		<title><![CDATA[JavaEI热点精华索引]]></title>
		<link>http://www.javaei.com</link>
		<description><![CDATA[JavaEI热点精华索引]]></description>
               <jsp:include flush="true" page="/rss.do?method=main"></jsp:include>
               <c:forEach items="${allitem}" var="item">
	               <item> 
	                     <title>${item.title}</title> 
	                     <link>${item.link}</link> 
	                     <author>${item.author}</author> 
	                     <pubDate>${item.pubDate}</pubDate> 
	                     <description>${item.description}</description> 
	                     <comments>${item.comments}</comments> 
	               </item> 
               </c:forEach>
	</channel>
</rss>

 

 

 感觉这种方式有时候是最简单的。

在这里可以把三种生成xml的方式做一对比:

Dom方式:需要构造完整的文档结构树,如果节点的嵌套层次不确定,最适合采取这种方式。

输出流直接输出文本:这种方式最原始,需要在java中拼接节点字符串,如果节点嵌套层次不确定,需要递归或借助栈来实现,这时候就相对麻烦些。

Jsp输出:这种方式在web开发实现最简单,可以充分利用jsp标签,适用于嵌套层次确定的xml结构。

Rss虽然技术原理很简单,但是应用模式确实非常优秀的,对客户来说,体现在“订阅”上,对提供商来说,就涉及到信息的整合了。

Javaei实现的效果在文章《www.javaei.com网站建设手记——11)增加rss订阅》中有简要描述。

 

 

 

 

分享到:
评论

相关推荐

    Google.Android开发入门与实战第12章.Android综合案例一——RSS阅读器实例

    在本章节中,“Google.Android开发入门与实战第12章.Android综合案例一——RSS阅读器实例”主要聚焦于Android应用程序开发中的一个实际应用场景——构建一个RSS阅读器。这个实例将帮助初学者理解如何将Android SDK的...

    Android源码——Rss订阅源码Demo.zip

    这个"Android源码——Rss订阅源码Demo.zip"是一个实例,它可以帮助开发者理解如何在Android应用中实现RSS订阅功能。接下来,我们将详细讨论RSS订阅的基本概念以及这个Demo中的关键知识点。 RSS,全称“Really ...

    Windows Mobile 实战——RSS阅读器

    RSS是一种XML格式,用于发布和订阅网站内容,如新闻、博客文章或播客。RSS阅读器允许用户在一个地方聚合和管理来自多个来源的这些内容,使得信息获取更加便捷。 开发Windows Mobile上的RSS阅读器,我们主要会涉及...

    安卓Android源码——Rss订阅源码Demo.zip

    这个“安卓Android源码——Rss订阅源码Demo.zip”是一个示例项目,它展示了如何在Android应用中实现RSS订阅功能。下面我们将深入探讨这个Demo中涉及的关键知识点。 首先,RSS(Really Simple Syndication)是一种...

    Android源码——Rss订阅源码Demo.7z

    通过RSS订阅,用户可以无需访问各个网站就能获取最新的内容更新。在Android应用中,我们可以利用RSS解析库,如RSSParser或TinyRSSParser,将RSS源数据转换为易于处理的对象模型。 在这个Demo中,首先我们需要创建一...

    ASP.NET源码——网站RSS订阅功能插件RSSMaker ASP.net版.zip

    本项目提供了一款基于ASP.NET的RSS订阅功能插件——RSSMaker ASP.NET版,它可以帮助开发者轻松地为自己的网站添加RSS输出功能。 首先,让我们了解ASP.NET。ASP.NET是微软开发的一款用于构建动态Web应用程序的服务器...

    JSP实例开发源码——网站RSS订阅功能插件RSSMaker JSP版.zip

    【JSP实例开发源码——网站RSS订阅功能插件RSSMaker JSP版】 RSS(Really Simple Syndication)是一种网络内容发布格式,它允许用户通过RSS阅读器或聚合器订阅网站的更新内容,如新闻、博客文章等。RSSMaker JSP版...

    Android源码——RSS阅读器的源码.7z

    在Android平台上,RSS阅读器是一种常见的应用,它允许用户订阅并获取各种网站的RSS(Really Simple Syndication) feed,以方便地浏览新闻、博客和其他在线内容。本篇将基于提供的"Android源码——RSS阅读器的源码.7...

    JSP源码——网站RSS订阅功能插件RSSMaker JSP版 v1.0_rssmaker_jsp.zip

    RSSMaker JSP版 v1.0是一个专门用于为网站添加RSS订阅功能的JSP插件,它简化了RSS Feed的生成过程,使得开发者能够快速地将动态内容转化为RSS格式,便于用户订阅。 ### JSP基础 JSP(JavaServer Pages)是Java平台...

    ASP.NET源码——RSS模块实现源码和工具包下载.zip

    在这个“ASP.NET源码——RSS模块实现源码和工具包下载.zip”压缩包中,包含的是一个用于实现RSS模块的源代码和相关工具,这将有助于开发者学习和理解如何在ASP.NET环境中处理RSS(Really Simple Syndication) feeds...

    安卓Android源码——RssReader.zip

    【安卓Android源码——RssReader.zip】是一个包含Android应用程序源代码的压缩包,主要功能是实现RSS阅读器。RSS(Really Simple Syndication)是一种内容发布格式,常用于新闻、博客和其他在线内容的聚合,使得用户...

    安卓Android源码——RSS阅读器的源码.zip

    【安卓Android源码——RSS阅读器的源码.zip】是一个包含安卓应用开发的源代码,主要功能是实现RSS(Really Simple Syndication)订阅和阅读。RSS是一种内容发布格式,允许用户订阅并获取网站的更新信息,如新闻、...

    CONFLUENCE 订阅网络 RSS 源 - CWIKIOSSEZ

    标题“CONFLUENCE 订阅网络 RSS 源 - CWIKIOSSEZ”直指Atlassian Confluence平台中的一项重要功能——RSS源订阅。RSS(Really Simple Syndication)是一种用于聚合网络内容的标准XML格式,允许用户从多个网站获取...

    Android源码——RSS阅读器的源码.zip

    在Android平台上,RSS阅读器是一种常见的应用,它允许用户订阅并获取各种网站的RSS(Really Simple Syndication) feed,从而方便地浏览新闻、博客和其他在线内容。本篇将基于提供的"Android源码——RSS阅读器的源码...

    Android综合案例——RSS阅读器实源代码+讲解

    RSS阅读器可以帮助用户订阅并集中阅读这些内容,无需逐个网站访问。下面,我们将讨论实现这样一个应用的关键技术和步骤。 1. **理解RSS Feed**: - RSS feed是一种XML格式,包含文章标题、摘要、链接等信息。 - ...

    使用RSS订阅喜欢的bilibiliup主和番剧

    在IT行业中,RSS(Really Simple Syndication)是一种广泛使用的数据格式,它允许用户订阅并获取网站更新,无需频繁地手动检查。在这个场景中,我们关注的是如何利用RSS订阅B站(哔哩哔哩,bilibili)上的UP主(内容...

Global site tag (gtag.js) - Google Analytics