<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 瘋狂 閱讀(2894) 評論(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

    返回:

     

     

    主站蜘蛛池模板: 亚洲宅男永久在线| 国产亚洲色婷婷久久99精品| 亚洲免费无码在线| 亚洲精品福利网站| 亚洲精品亚洲人成在线观看下载| 久久毛片免费看一区二区三区| 亚洲成人午夜电影| 国产精品亚洲mnbav网站| 久久久久久免费视频| 男女拍拍拍免费视频网站| 亚洲精品天堂无码中文字幕| 国产亚洲精aa成人网站| 午夜两性色视频免费网站| 国产一区二区三区免费| 爱爱帝国亚洲一区二区三区| 亚洲男女一区二区三区| 免费观看a级毛片| 国产精品视频全国免费观看| 久久亚洲精品国产精品| 日韩免费毛片视频| 久9久9精品免费观看| 亚洲AV无码一区二区三区性色 | 亚洲午夜一区二区三区| 免费观看的a级毛片的网站| 老司机福利在线免费观看| 亚洲视频免费一区| 亚洲精品你懂的在线观看| 免费萌白酱国产一区二区| 成人久久免费网站| aa级女人大片喷水视频免费| 亚洲色大成网站www| 亚洲噜噜噜噜噜影院在线播放| 亚洲日韩在线第一页| 免费一级毛片在级播放| 麻豆最新国产剧情AV原创免费| 一个人看的免费高清视频日本| 亚洲精品无码久久久久牙蜜区| 久久亚洲AV成人无码| 久久亚洲国产视频| 亚洲色精品vr一区二区三区| 暖暖免费高清日本中文|