在不同/多个请求映射中调用数据

时间:2013-07-22 10:00:52

标签: java javascript jsp spring-mvc tiles

我有一些情况..

我的网络服务中有2个网址,我希望从数据库中显示横幅列表..

这是我控制器中的代码。

@RequestMapping(value ="support",method = RequestMethod.GET)
 public String support(Model model){

    Banner banner = new Banner();
    List<Banner> listBannerWeb = bannerService.getBannerList(banner); 
    model.addAttribute("listBannerWeb",listBannerWeb);

    return "menu/support";
 }

@RequestMapping(value ="news",method = RequestMethod.GET)
public String news(Model model){

    Banner banner = new Banner();
    List<Banner> listBannerWeb = bannerService.getBannerList(banner); 
    model.addAttribute("listBannerWeb",listBannerWeb);

    return "menu/news";
 }

横幅广告但我不想在我的所有控制器中重复此代码以选择横幅。

    Banner banner = new Banner();
    List<Banner> listBannerWeb = bannerService.getBannerList(banner); 
    model.addAttribute("listBannerWeb",listBannerWeb);      

我使用tile(模板)这是我的jsp代码。

<c:forEach var="banner" items="${listBannerWeb}">                   
<div class="banner"><img src="${url_Upload}/${banner.name}" /></div>                
</c:forEach>

如何以最佳方式或简单方式或参考此问题?我需要帮助..谢谢你。

1 个答案:

答案 0 :(得分:0)

你必须传递一个实例才能得到你的横幅列表,这有点奇怪......如何在私有方法中使用这个代码,然后使用该方法而不是复制代码。这样的事情:

@RequestMapping(value ="support",method = RequestMethod.GET)
 public String support(Model model){

    model.addAttribute("listBannerWeb", getBannerList());

    return "menu/support";
 }

@RequestMapping(value ="news",method = RequestMethod.GET)
public String news(Model model){

    model.addAttribute("listBannerWeb", getBannerList());

    return "menu/news";
 }

private List<Banner> getBannerList() {

    Banner banner = new Banner();
    List<Banner> listBannerWeb = bannerService.getBannerList(banner); 
    return listBannerWeb;
}