写个支持RSS输出的网站

去年做了个项目,要求支持RSS输出,郁闷老找不到支持RSS输出的方法,后来仔细一想,RSS输出其实也就是在服务器生成一个XML文件,以后把信息写到服务器就行了。这又涉及到读写XML文件了,后来我选择了JDOM。代码如下,看不明白的可以跟我联系:danke  QQ:56355337

package music;
import org.jdom.*;
import org.jdom.output.*;
import org.jdom.input.*;
import java.io.*;
import java.util.*;
import java.text.DateFormat;
public class RSSCreater
{
    AlbumDto dto=null;
    public RSSCreater(AlbumDto dto,String dir)//往Rss文件中添加信息
    {
        Date date=new Date();
        this.dto=dto;
        String albumName=dto.getAlbumName();
        String artistName=dto.getArtistName();//艺术家的名字
        DateFormat format=DateFormat.getDateTimeInstance();
        String time=format.format(date);//日期
        int albumId=dto.getAlbumId().intValue();//专辑的id
        String id=String.valueOf(albumId);
        String url="http://localhost:8080/musicWeb/getSongAction.do?categoryId="+id;
        System.out.println("现在时间是:"+time);
        String atitle=artistName+"的新专辑-- "+albumName+"--已经到达本站,欢迎查看";
        try
        {
            String truePath=dir+"/"+"index.xml";
            SAXBuilder sb = new SAXBuilder();
            Document doc = sb.build(new FileInputStream(truePath));
            Element root = doc.getRootElement();
            java.util.List books = root.getChildren("channel");
            Element item=(Element)books.get(0);

            Element it=new Element("item");
            Element title=new Element("title").setText(atitle);
            Element lint=new Element("link").setText(url);
            Element datetime=new Element("pubDate").setText(time);
            Element guid=new Element("guid").setText(url);

            it.addContent(title);
            it.addContent(lint);
            it.addContent(guid);
            it.addContent(datetime);
            item.addContent(it);

             File files=new File(truePath);
            Writer xmlwriter=new FileWriter(files);
            FileOutputStream outstream=new FileOutputStream(files);
            XMLOutputter fmt=new XMLOutputter();
            fmt.output(doc,xmlwriter);
            fmt.output(doc,outstream);


        }
        catch(Exception e)
        {
            System.out.println(e);
        }
    }
}

附一个Rss文件的样本:

 <?xml version="1.0" encoding="utf-8" ?> 
<rss version="2.0">
<channel>
<title>CSDN技术文档中心</title>
<description>CSDN技术文档中心</description>
<link>http://dev.csdn.net/</link>
<language>zh-cn</language>
<docs>CSDN.NET Develop Article</docs>
<generator>Rss Generator By CSDN.NET</generator>
<item>
<title>DIY有创意的网站错误信息</title>
<link>http://dev.csdn.net/article/74387.shtm</link>
<author>nbpig</author>
<pubDate>Fri, 05 Aug 2005 00:17:00 GMT</pubDate>
</item>
<item>
<title>一个封装了Java改变LookAndFeel的JAVA菜单,可直接在可视化编辑拖拉(原创)</title>
<link>http://dev.csdn.net/article/74380.shtm</link>
<author>badqiu</author>
<pubDate>Thu, 04 Aug 2005 20:18:00 GMT</pubDate>
</item>
<item>
<title>非java.util.zip,使用ant.jar制作zip压缩文件,以及相关中文解决方法</title>
<link>http://dev.csdn.net/article/74374.shtm</link>
<author>thefirstwind</author>
<pubDate>Thu, 04 Aug 2005 17:40:00 GMT</pubDate>
</item>
<item>
<title>Apache Ant 初步体验(小记)</title>
<link>http://dev.csdn.net/article/74371.shtm</link>
<author>fly__dragon</author>
<pubDate>Thu, 04 Aug 2005 16:07:00 GMT</pubDate>
</item>
<item>
<title>Java程序员面试三十二问</title>
<link>http://dev.csdn.net/article/74364.shtm</link>
<author>gqy789</author>
<pubDate>Thu, 04 Aug 2005 15:18:00 GMT</pubDate>
</item>
<item>
<title>Eclipse快速上手指南之使用Ant</title>
<link>http://dev.csdn.net/article/74362.shtm</link>
<author>gqy789</author>
<pubDate>Thu, 04 Aug 2005 15:10:00 GMT</pubDate>
</item>
</channel>
</rss>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值