Spring中不同包下具有相同名称的两个控制器

13

我有两个控制器类在Spring MVC应用程序中,它们的名称相同但在不同的包中,但是当编译应用程序时,它拒绝在服务器上运行并给出错误。

有没有人知道如何允许在Spring MVC项目下具有相同控制器类名的两个(不同的包)?


发布错误信息!!! 您可以在不同的包中定义具有相同名称的两个控制器。但请求映射应该是不同的。 - Vaibhav Raj
在两个包中使用相同名称的两个控制器没有问题,只需要导入正确的包即可。请提供错误信息。 - Hussain Akhtar Wahid 'Ghouri'
2个回答

25

使用控制器注释的value属性

@Controller("controller1")

@Controller("controller2")

非常感谢您提供专业和正确的答案,非常感激。 - MChan

2

补充Bassem的回答,

如果你有两个控制器在2个包中:

  • pkg1

    • myController
  • pkg2

    • myController

你可以使用@Controller注解:

@Controller("pkg1 myController")
@Controller("pkg2 myController")

这样可以使得代码更有组织性。在@Controller("THIS VALUE")中不能使用相同的值。

例如:

pkg1 - myController1 - myController2

你不能让它们都使用@Controller("pkg1")

相反,你可以使用@Controller("pkg1 myController1")避免冲突。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接