JSP技术实现RSS订阅功能的示例
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结构:
<?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技术实现rss功能其实就是一个xml文件!
在<rss></rss>之间我们可以*配置自己要发布的rss的格式。例如此次我们要发布的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网站rss的实现</title> <author>neeke</author> <pubdate>2008-10-04</pubdate> <description>这是来自尼克技术博客博客的rss</description> <category>j2ee技术</category> </item> </channel> </rss>
了解了它的结构实现起来就容易了。我们创建io流,并从数据库中获取到我们要发布的rss资源的集合,然后按照它的格式与结构一行一行的写入到一个rss.xml文件中即可。
public static void publishrss(string rsspath) { //获得要发布的rss数据集合 arraylist rssarticle = articlemanager.getarticlesall(); try { //创建输入输出流 filewriter fw = new filewriter(rsspath); bufferedwriter bw = new bufferedwriter(fw); //开始按照格式写入数据 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>"); //关闭流,rss发布完毕。 bw.close(); fw.close(); } catch (ioexception ex) { ex.printstacktrace(); } }
这样用jsp实现rss就发布完毕了,经过我的测试打开后会提示出错,用记事本打开生成的源文件,然而我们的rss文件是一点问题都没有的哇,怎么可能呢?接着又用jbuilder打开这个xml文件,晕倒~汉字全是乱码,立刻意识到问题出在了哪里了。在哪呢?其实就是文件的编码问题!将原先bw.write("<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>\r\n");该行代码中的utf-8改为gbk,重新跑一次程序,一切ok!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: 基于jsp的AJAX多文件上传的实例
推荐阅读
-
JSP技术实现RSS订阅功能的示例
-
JSP技术实现RSS订阅功能的示例
-
运用Servlet+JSP+MySQL+JDBCTempleat+Duird+BeanUtilS+tomcat技术。实现用户信息的增删改查操作(添加功能及界面实现)。
-
php制作基于xml的RSS订阅源功能示例
-
基于JSP和Servlet技术实现的Java Web的注册和登录的功能
-
php实现制作基于xml的RSS订阅源功能的方法
-
php实现制作基于xml的RSS订阅源功能的方法
-
php制作基于xml的RSS订阅源功能示例
-
Paypal实现循环扣款(订阅)功能的示例代码分享
-
Paypal实现循环扣款(订阅)功能的示例代码分享