<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    瘋狂

    STANDING ON THE SHOULDERS OF GIANTS
    posts - 481, comments - 486, trackbacks - 0, articles - 1
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    Spring rss 實例

    Posted on 2012-05-09 10:01 瘋狂 閱讀(2901) 評論(0)  編輯  收藏 所屬分類: spring

    Spring rss 實例

    從spring 3 開始可以使用內置的方法來實現實現rss或者atom
    org.springframework.web.servlet.view.feed.AbstractRssFeedView
    org.springframework.web.servlet.view.feed.AbstractAtomFeedView

     

    本實例使用org.springframework.web.servlet.view.feed.AbstractRssFeedView來實現rss

    步驟

    1:加入相關jar

    加入rome-x.jarjdom.jar

    2:加入視圖解析(這里使用BeanNameViewResolver,此resolver的原理是返回的viewNamespringcontext里面的name相同),如果有多個resolver需要設置order

    <bean class="org.springframework.web.servlet.view.BeanNameViewResolver">
           
    <property name="order" value="0"/>
        
    </bean>
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/WEB-INF/view/" p:suffix=".jsp">
           
    <property name="order" value="1"/>
    </bean>


    3:實現RssView,繼承自AbstractRssFeedView

    @Component("rssView")//這個地方的配置要和后面controller的viewName一樣
    public class RssView extends AbstractRssFeedView {   
            @Override 
            
    protected void buildFeedMetadata(Map<String,Object> model, Channel feed,   
                    HttpServletRequest request) 
    {   
                String feedTitle 
    = (String)model.get("feedTitle");   

                String feedDesc 
    = (String)model.get("feedDesc");   

                String feedLink 
    = (String)model.get("feedLink");   
                feed.setTitle(feedTitle);  
                feed.setDescription(feedDesc);  
                feed.setLink(feedLink);   
            }
        

          @Override 
            
    protected List<Item> buildFeedItems(Map<String, Object> model,   

                    HttpServletRequest request, HttpServletResponse response)   

                    
    throws Exception {      

                @SuppressWarnings(
    "unchecked")   
                List
    <RssItem> rssItems = (List<RssItem>) model.get("rssItemList");       
                List
    <Item> feedItems = new ArrayList<Item>();   
                
    for (RssItem rssItem : rssItems) {   

                    Item feedItem 
    = new Item();   
                    feedItem.setTitle(rssItem.getTitle());   
                    feedItem.setAuthor(rssItem.getAuthor());   
                    feedItem.setPubDate(rssItem.getDatePublished());       
                    Description desc 
    = new Description();   
                    desc.setValue(rssItem.getDescription());   
                    feedItem.setDescription(desc);   
                    feedItem.setLink(rssItem.getLink());   
                    feedItems.add(feedItem);   
                }
           
                
    return feedItems;   
            }
       
        }

     


     4 Controller

    @Controller
    @RequestMapping(value 
    = "rss")
    public class RssMgr {
        @RequestMapping(value 
    = "test_rss.htm")
        
    public String testRss(Model model) {
           List
    <RssItem> rssItems = new ArrayList<RssItem>();
           
    for (int i = 0; i < 5; i++{
               RssItem n 
    = new RssItem();
               n.setTitle(
    "第【"+i+"】條spring Rss測試消息標題");
               n.setDescription(
    "第【"+i+"】測試消息內容說明");
             n.setLink(
    "http://localhost:8080/springdemo/someurl.html");
               n.setAuthor(
    "作者:瘋狂");
               n.setDatePublished(
    new Date());
               rssItems.add(n);
           }

           model.addAttribute(
    "rssItemList", rssItems);   
           
    // 頻道的相關信息
           model.addAttribute(
    "feedTitle""spring RSS 測試");
           model.addAttribute(
    "feedDesc""spring RSS 測試頭條新聞");
           model.addAttribute(
    "feedLink",
           http:
    //localhost:8080/springdemo/rss/test_rss.htm);

           
    return "rssView";
        }


    }

     

    訪問:http://localhost:8080/springdemo/rss/test_rss.htm

    返回:

     

     

    主站蜘蛛池模板: 亚洲精品国产综合久久久久紧 | 午夜成年女人毛片免费观看| 亚洲国产精品无码久久SM| 一区二区在线免费视频| 亚洲av无码乱码在线观看野外| 亚洲AV色欲色欲WWW| 国产精品国产自线拍免费软件| 在线综合亚洲欧洲综合网站| 成人毛片18岁女人毛片免费看| 亚洲精品无码中文久久字幕| 免费鲁丝片一级观看| 国产精品亚洲精品日韩动图 | 青青久在线视频免费观看| 亚洲日本va在线观看| 国产成人免费网站| 亚洲国产精品无码久久98| 九月婷婷亚洲综合在线| 成年女人A毛片免费视频| 亚洲国产精品免费视频| 一个人免费观看视频www| 狠狠综合亚洲综合亚洲色| 亚洲国产成人久久精品99| a级大片免费观看| 亚洲理论精品午夜电影| 国产在线国偷精品产拍免费| 日韩色日韩视频亚洲网站| 亚洲人成人无码网www电影首页| 亚洲一区二区在线免费观看| 亚洲中文字幕AV在天堂| 亚洲av午夜精品一区二区三区 | 亚洲一区二区三区免费观看| 亚洲AV无码一区二区三区人| 国产乱子伦精品免费女| 波多野结衣免费一区视频| 亚洲av无码一区二区三区观看| 免费在线不卡视频| 永久在线免费观看| 免费国产va视频永久在线观看| 亚洲国产精品久久久久久| 在线日韩av永久免费观看| 免费一级毛片无毒不卡|