Rss 2.0 xml 文件创建实例

Item bean 类
package org.shenhongwei.createrssxml;

import java.util.Date;

/**
* Project :
* Code Name : Carbon Dioxide
*
* Description :
*
* @author shenhongwei
* @version 2009-5-21
*/
/**
* item元素bean对象
*/
public class Item {
private String link;

private String title;

private String author;

private Date PubDate;

private String guid;

private String description;

public String getAuthor() {
return author;
}

public void setAuthor(String author) {
this.author = author;
}

public String getDescription() {
return description;
}

public void setDescription(String description) {
this.description = description;
}

public String getGuid() {
return guid;
}

public void setGuid(String guid) {
this.guid = guid;
}

public String getLink() {
return link;
}

public void setLink(String link) {
this.link = link;
}

public Date getPubDate() {
return PubDate;
}

public void setPubDate(Date pubDate) {
PubDate = pubDate;
}

public String getTitle() {
return title;
}

public void setTitle(String title) {
this.title = title;
}
}


创建实现

package org.shenhongwei.createrssxml;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.text.Format;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.List;

import org.jdom.Document;
import org.jdom.Element;
import org.jdom.output.XMLOutputter;

/**
* Project :
* Code Name :
*
* Description :实现创建方法
*
* @author shenhongwei
* @version 2009-5-21
*/


public class RssXmlCreate {


/**
* 创建Rss Xml文件
* @param path 生成xml文件存放路径
* @param list Item对象列表
*/
public void CreateRssXml(String path, List list) {
Element root = new Element("rss");
root.setAttribute("version", "2.0");
Document doc;
FileOutputStream fo;
try {
Element channel = new Element("channel");
Element title = new Element("title");
title.setText("jack");

Element link = new Element("link");
link.setText("www.jack.com");

Element description = new Element("description");
description.setText("黑白电影");

Element language = new Element("language");
language.setText("en");

Element image = new Element("image");

Element url = new Element("url");
url.setText("www.jack.cn/jack.gif");

Element title1 = new Element("title");
title1.setText("jack");

Element link1 = new Element("link");
link1.setText("www.jack.com");

Element description1 = new Element("description");
description1.setText("黑白电影");
image.addContent(title1);
image.addContent(link1);
image.addContent(url);
image.addContent(description1);

Collection lists = this.getItem(list);
channel.addContent(lists);
// Element item = new Element("item");
// Element itemlink = new Element("link");
// itemlink.setText("http://www.auiou.com/relevant/00000496.jsp");
// Element itemtitle = new Element("title");
// itemtitle.setText("这年月的天");
// Element author = new Element("author");
// author.setText("黑白天涯");
// Element pubDate = new Element("pubDate");
// pubDate.setText("2009-05-03 13.30");
// Element guid = new Element("guid");
// guid.setText("http://www.auiou.com/relevant/00000496.jsp");
// Element itemdescription = new Element("description");
// item.addContent(itemlink);
// item.addContent(itemtitle);
// item.addContent(author);
// item.addContent(pubDate);
// item.addContent(guid);
// item.addContent(itemdescription);
//
// channel.addContent(item);

channel.addContent(title);
channel.addContent(link);
channel.addContent(description);
channel.addContent(language);
channel.addContent(image);
root.addContent(channel);

doc = new Document(root);
XMLOutputter out = new XMLOutputter();
fo = new FileOutputStream(path);
out.output(doc, fo);

} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

/**
* 根据Item对象列表 返回Rss Item元素列表
* @param list
* @return
*/
public Collection getItem(List list) {
Collection items = new ArrayList();
Element item, link, title, author, pubDate, description, guid;
Item it;
if (list.size() != 0 && !"".equals(list.size())) {

for (int i = 0; i < list.size(); i++) {
it = (Item) list.get(i);
link = new Element("link").setText(it.getLink());
title = new Element("title").setText(it.getTitle());
author = new Element("author").setText(it.getAuthor());
pubDate = new Element("pubDate").setText(this.format(it
.getPubDate()));
guid = new Element("guid").setText(it.getGuid());
description = new Element("description").setText(it
.getDescription());
item = new Element("Element");
item.addContent(link);
item.addContent(title);
item.addContent(author);
item.addContent(pubDate);
item.addContent(guid);
item.addContent(description);
items.add(item);
}
}
return items;
}
/**
*对日期类型数据进行格式化输出
* @param date
* @return
*/
public String format(Date date) {
Format format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String string = format.format(date);
return string;
}

}


功能方法测试
package org.shenhongwei.createrssxml;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
* Project :
* Code Name : Carbon Dioxide
*
* Description :
*
* @author shenhongwei
* @version 2009-5-21
*/
@SuppressWarnings("unchecked")
public class Test {

/**
* 不同的Item对象参数值 返回item对象列表
* @return
*/
public List getItem() {
List list = new ArrayList();
Item item;
for (int i = 1; i < 10; i++) {
item = new Item();
item.setAuthor(Integer.toString(i));
item.setLink(Integer.toString(i));
item.setGuid(Integer.toString(i));
item.setPubDate(new Date());
item.setTitle(Integer.toString(i));
item.setDescription(Integer.toString(i));
list.add(item);
}

return list;
}

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
RssXmlCreate rxc = new RssXmlCreate();
Test t = new Test();
List list = t.getItem();
String path = "src/rss.xml";
rxc.CreateRssXml(path, list);
}

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值