spring内置的AbstractRssFeedView实现rss文档
来源:互联网 发布:有装新风后悔的吗 知乎 编辑:程序博客网 时间:2024/06/07 22:26
AbstractRssFeedView类是一个抽象类,继承了AbstractFeedView类。AbstractRssFeedView类里有一个抽象方法buildFeedItems必须自己实现。有一个newFeed方法返回一个channel需要重写。AbstractFeedView类里有一个final方法renderMergedOutputModel,这个方法是创建rss,返回rss的主要方法。这个方法如下:
@Override
protected final void renderMergedOutputModel(
Map<String, Object> model, HttpServletRequest request, HttpServletResponse response)
throws Exception {
T wireFeed = newFeed();
buildFeedMetadata(model, wireFeed, request);
buildFeedEntries(model, wireFeed, request, response);
setResponseContentType(request, response);
if (!StringUtils.hasText(wireFeed.getEncoding())) {
wireFeed.setEncoding("UTF-8");
}
WireFeedOutput feedOutput = new WireFeedOutput();
ServletOutputStream out = response.getOutputStream();
feedOutput.output(wireFeed, new OutputStreamWriter(out, wireFeed.getEncoding()));
out.flush();
}
1.加入依赖:
<dependency>
<groupId>com.rometools</groupId>
<artifactId>rome</artifactId>
<version>1.7.0</version>
</dependency>
2.重写protected Channel newFeed(){}
3实现buildFeedItems函数
4.如果想要扩展一些自定义的节点可以使用setForeignMarkup(List<Element> )方法。这个方法的参数是List<Element> 类型。具体做法是:创建一个List<Element> 变量;再创建一个自定义节点Element node;将创建的新节点add进List<Element>中;然后调用setForeignMarkup方法。
需要注意的是:rss规范中要求的一些必须的节点是必须有的,如果没有加进去运行时会报错的。
- spring内置的AbstractRssFeedView实现rss文档
- rss的实现
- RSS的实现
- 实现RSS的原理
- RSS阅读器的实现
- RSS阅读器的实现
- RSS文档
- RSS文档
- CSDN文档中心的RSS化 地址
- Java Spring 删除mongodb数组内置文档
- 关于实现rss的代理
- 实现网站的RSS应用
- Spring提供的许多内置事务管理器实现
- RSS阅读器及Java实现Rss的发布
- 实现rss
- 实现rss
- RSS 实现
- 实现rss
- CSDN博客专家纪要
- java中的增强for循环与js中的增强for循环区别
- 使用bulk collected和forall的方式批量插入数据
- Android应用更新详解,兼容7.0
- 第三方支付平台业务分析
- spring内置的AbstractRssFeedView实现rss文档
- UML常用图的几种关系的总结
- Android通过代码模拟物理、屏幕点击事件
- 试用Tinker小结
- 在已安装win10环境中利用EasyBCD引导安装Ubuntu16.04
- 深度学习在graph上的应用
- solr简介和使用
- 数据库创建表的时候,column为关键字的错误
- 【计算机视觉】 相机姿态估计之标记检测-检测ArUco板2