目的
- 把我的所有博客全部变成rss订阅源,以便别人订阅。
- 当我有博客更新时,会自定更新订阅源,或者省事一点每隔30分钟自动更新一次。
大致步骤
- 查询所有博客。
- 遍历所有博客,按
rss规范
组装成xml。 - 把组装好的xml写入服务器某个位置,比如放在:
/rss/blog.xml
- 在rss阅读器中添加订阅源,url为:
http://cdn.kangyonggan.com/rss/blog.xml
- 订阅成功,阅读器会把所有博客缓存到本地,离线也可阅读。
按照rss规范组装xml
使用第三方jar包rsslibj
,它依赖exml
,如下:
1 | <rsslibj.version>1.0RC2</rsslibj.version> |
代码如下:
1 | Channel channel = new Channel(); |
但是有个问题,那就是Item
不能设置发布时间,订阅后在阅读器里看不到文章的发布时间或者更新时间,所以我就从网上重新找了一个,它不去用任何jar包。
解决发布时间问题
Feed.java
:
1 | package com.kangyonggan.blog.model.rss; |
FeedMessage.java
:
1 | package com.kangyonggan.blog.model.rss; |
RSSFeedWriter.java
:
1 | package com.kangyonggan.blog.biz.util; |
使用如下:
1 | Feed feed = new Feed(); |