我可以指定控制器级别的请求映射对于到SpringMVC控制器类的特定方法无效吗?
我正在处理一个Spring MVC应用程序,在类级别用@RequestMapping(“/profilo/”)注释的控制器类中存在以下问题 所以我有这样的想法:我可以指定控制器级别的请求映射对于到SpringMVC控制器类的特定方法无效吗?,spring,spring-mvc,spring-annotations,Spring,Spring Mvc,Spring Annotations,我正在处理一个Spring MVC应用程序,在类级别用@RequestMapping(“/profilo/”)注释的控制器类中存在以下问题 所以我有这样的想法: @Controller @RequestMapping("/profilo/") public class ProfiloController extends BaseController { ..................................................................
@Controller
@RequestMapping("/profilo/")
public class ProfiloController extends BaseController {
..................................................................
..................................................................
SOME CONTROLLER METHOD THAT WORK CORRECTLY
..................................................................
..................................................................
@RequestMapping(value = "utenze/{username}/confermaEmail/{email:.+}", method = RequestMethod.GET)
public String confermaModificaEmail(@PathVariable String username, @PathVariable String email, Model model) {
logger.debug("INTO confermaModificaEmail(), indirizzo e-mail: " + email);
.......................................................................
.......................................................................
.......................................................................
}
}
因此,正如您在前面的代码片段中所看到的,我有一个用@RequestMapping(“/profilo/”)注释的ProfiloController类,这意味着该类的控制器方法处理的所有HTTP请求都必须从URL中的/profilo/开始
该类的所有方法都是如此,除了confermaModificaEmail()方法必须将URL处理为:
http://localhost:8080/my-project/utenze/mario.rossi/confermaEmail/a.nobili@siatec.net
不要用/profilo/启动
因此,我是否可以指定,对于控制器的此特定方法,@RequestMapping(“/profilo/”)控制器级映射无效,不需要考虑它?这是不可能的
Spring维护了一个适当的@Controller结构,该结构表示所有与ControllerName相关的端点(即您的案例中的公文包)都应该保留在这个类中
理想情况下,与功能无关的任何其他url都应作为不同控制器类的一部分保留
如果仍要保留在同一控制器中,请尝试通过将http调用从“/portfolio/”重定向到所需的url来调用端点url confermaModificaEmail()。但不建议这样做这是不可能的
Spring维护了一个适当的@Controller结构,该结构表示所有与ControllerName相关的端点(即您的案例中的公文包)都应该保留在这个类中
理想情况下,与功能无关的任何其他url都应作为不同控制器类的一部分保留
如果仍要保留在同一控制器中,请尝试通过将http调用从“/portfolio/”重定向到所需的url来调用端点url confermaModificaEmail()但不建议这样做不,您不能这样做。然后创建一个新的控制器您是否尝试过@RequestMapping(value={/profilo/“,“/utenze/”})或删除类级别
RequestMapping
并在方法级别复制/portfolio/
。不,您不能这样做。然后创建一个新控制器您尝试过@RequestMapping(value)吗={“/profilo/”、“/utenze/”})或删除类级别的RequestMapping
和方法级别的副本/portfolio/
。。