使用Grails和Rome产生Rss

Grails本身好像并没有产生rss的插件。如果要用grails产生Rss,可以使用Rome。方法大概如下:

下载需要的库文件

https://rome.dev.java.net/下载Rome,之后把rome-xxx.jar放到你的grails项目的lib目录下。这里xxx是版本号。比如我的是rome-1.0RC1.jar

再到http://www.jdom.org/下载JDom。之后同样是把jdom.jar放到lib目录下。

书写代码

创建一个controller,当然你也可以在你已经有的controller里面增加相应方法。这里我们创建一个叫做FeedController的类。

 1  import  com.sun.syndication.feed.synd. * ;   
 2  import  com.sun.syndication.io.SyndFeedOutput;   
 3                 
 4  class  FeedController {   
 5         
 6      def supportedFormats  =  [  " rss_0.90 " " rss_0.91 " " rss_0.92 " " rss_0.93 " " rss_0.94 " " rss_1.0 " " rss_2.0 " " atom_0.3 " ]   
 7    
 8                    
 9                                  
10         
11      def rss  =  {   
12                 
13              render(text: getFeed( " rss_1.0 " ), contentType: " text/xml " , encoding: " UTF-8 " )   
14         
15      }   
16         
17      def atom  =  {   
18                 
19              render(text: getFeed( " atom_1.0 " ), contentType: " text/xml " , encoding: " UTF-8 " )   
20                         
21      }   
22    
23       //  or specify your own feed type   
24      def all  =  {   
25              def format  =  params.id   
26               if  (supportedFormats.contains(format)) {   
27                  render(text: getFeed(format), contentType: " text/xml " , encoding: " UTF-8 " )   
28              }  else  {   
29                  response.sendError(response.SC_FORBIDDEN);   
30              }                  
31      }   
32         
33         
34      def getFeed(feedType) {   
35             
36          def items  =  Post.list(max:  5 , sort:  " created " , order:  " desc " )   
37                 
38          def entries  =  []   
39          items.each { item  ->    
40              def desc  =   new  SyndContentImpl(type:  " text/plain " , value: item.description);   
41              def entry  =   new  SyndEntryImpl(title: item.name  +   "  -  "   +  item.summary,    
42                      link:  ' http://www.ondev.net/item/show/ '   +  item.name,   
43                      publishedDate: item.created, description: desc);   
44              entries.add(entry);   
45    
46          }   
47          SyndFeed feed  =   new  SyndFeedImpl(feedType: feedType, title:  ' 标题 ' ,   
48                  link:  ' http://www.ondev.net ' , description:  ' 说明性文字 ' ,   
49                  entries: entries);   
50             
51          StringWriter writer  =   new  StringWriter();   
52          SyndFeedOutput output  =   new  SyndFeedOutput();   
53          output.output(feed,writer);   
54          writer.close();   
55             
56           return  writer.toString();   
57    
58             
59      }   
60         
61  }  
62 

之后访问相应的页面,比如说http://www.ondev.net/feed/rss就可以了

原贴地址: http://www.ondev.net/story/show/75

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14734416/viewspace-442253/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/14734416/viewspace-442253/

数据集介绍:野生动物与家畜多目标检测数据集 数据集名称:野生动物与家畜多目标检测数据集 数据规模: - 训练集:1,540张图片 - 验证集:377张图片 - 测试集:316张图片 分类类别: Brown-bear(棕熊)、Chicken(鸡)、Fox(狐狸)、Hedgehog(刺猬)、Horse(马)、Mouse(老鼠)、Sheep(绵羊)、Snake(蛇)、Turtle(龟)、Rabbit(兔)及通用object(物体)共11个类别 标注格式: YOLO格式标注,包含归一化坐标与类别索引,支持目标检测模型训练 数据特性: 涵盖航拍与地面视角,包含动物个体及群体场景,适用于复杂环境下的多目标识别 农业智能化管理: 通过检测家畜(鸡/马/绵羊等)数量及活动状态,辅助畜牧场自动化管理 生态监测系统: 支持野生动物(棕熊/狐狸/刺猬等)识别与追踪,用于自然保护区生物多样性研究 智能安防应用: 检测农场周边危险动物(蛇/狐狸),构建入侵预警系统 动物行为研究: 提供多物种共存场景数据,支持动物群体交互行为分析 高实用性标注体系: - 精细标注包含动物完整轮廓的边界框 - 特别区分野生动物与家畜类别,支持跨场景迁移学习 多维度覆盖: - 包含昼间/复杂背景/遮挡场景 - 涵盖陆地常见中小型动物与禽类 - 提供通用object类别适配扩展需求 工程适配性强: - 原生YOLO格式适配主流检测框架(YOLOv5/v7/v8等) - 验证集与测试集比例科学,支持可靠模型评估 生态价值突出: - 同步覆盖濒危物种(龟类)与常见物种 - 支持生物多样性保护与农业生产的双重应用场景
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值