Spring中的RequestMapping包

时间:2016-05-20 05:50:15

标签: spring spring-mvc

所以我目前正在使用Spring MVC 3.2为我的工作开发一个平台,使用XML配置,而我正在寻找的是一些语法糖。

基本上我们有很多控制器,因为我一直是组织所有软件包的人,所以我用与Angular JS相同的方法(即相关的相关概念)打包它们。

所以现在我有一个包结构:

  • com.company.general
    • com.company.general.security
    • com.company.general.accounts
  • com.company.reports
    • com.company.reports.someReport
    • com.company.reports.anotherReport

现在我个人遇到的一个大问题(我正在寻找一种简单的方法)尝试为特定包设置标准路径。

阅读完上述内容后,我意识到它不太清楚,所以我会试着澄清一下。

现在,报告包下的每个控制器都有:

@Controller
@RequestMapping("/reports/reportName")

现在,在该代码块中唯一改变的是不同控制器的reportName。 我不确定如何,如果可能的话,我可以指定,包com.company.reports下的所有控制器都有一个默认的“/ reports /”路径,然后当我指定@RequestMapping时它简单地附加到控制器上。

我认为当我设置它时,这将是可行的,因为它在执行赋值时看起来是合乎逻辑的(或者我相信路径的分配)但是无济于事。

非常感谢任何帮助,非常感谢

1 个答案:

答案 0 :(得分:0)

你可以尝试使用抽象类:

@RequestMapping(value = "/reports")
public abstract class AbstractReportController {
    ...
}


public class MyReport extends AbstractReportController  {
    @RequestMapping(value = "/myReportName")
    public String aMethod(Model model) {
        ...
    }
 }

public class AnotherReport extends AbstractReportController  {
    @RequestMapping(value = "/anotherReportName")
    public String aMethod(Model model) {
        ...
    }
 }

这项工作。