2017-06-03 75 views
0

我是一个非常非常初学Spring的人。而且我需要了解下面的问题在Spring中如何解决。如何在spring中创建模块

让我们假设我有一个两页 - carscar。在cars所有汽车的页面列表生成,用户可以应用不同的过滤器。在car页面用户可以阅读关于某辆车的信息。这些是两页的主要部分。

但是,这两个页面都包含两个附加模块,可以表示广告和最后用户评论。每个模块都有自己的逻辑,可以使用来自url/post/get的数据。我的意思是

------------------------- 
| ----------   | 
| | Ads |   | 
| ---------- Car[s] | 
| ---------- Page | 
| | Comms |   | 
| ----------   | 
------------------------- 

所以我们看到结果中有两个页面和一些共享模块。当然,这些模块的代码不能为每个页面重复。在Spring中如何创建这样的共享组件?请至少提供方法/组件的名称,其余我可以在互联网上阅读。

+0

这是视图组件的责任。你使用哪种视图技术? – Henry

+0

@Henry我打算使用JSP。但我不认为将模块逻辑放在视图中是正确的。 –

+0

不是业务逻辑,而是模块的视图部分。对于JSP,您可以使用include将模块特定的部件只包含一次。在控制器端使用通用方法构建模块视图使用的模型部件。 – Henry

回答

2

从后端侧可以创建请求映射

  1. @Path(/Cars) ModelAndView cars(...)
  2. @Path(/Car) ModelAndView car(id)
  3. @Path(/Ads) ModelAndView ads(...)

每个路径将与处理程序可能返回ModelAndView对象进行连接。当您发送/cars的请求时,您的处理程序方法将执行一些操作,并且还可以为每个/car - car(id)以及ads()调用方法处理程序。

ModelAndView cars(ids) { 
    doRequestSpecificOps() 
    result = new ModelAndView() 
    foreach id in ids 
     result put car(id) 

    result put ads() 
    return result 
} 

从前端你应该分开每个表示块。这取决于你的框架。