当前位置: 首页 > 知识库问答 >
问题:

Spring MVC、JSP中的controller链接和DRY原则

马弘益
2023-03-14

我有一个带有数百个控制器的Spring MVC应用程序。在控制器中,我使用通常的@RequestMapping映射:

@RequestMapping(value="/someUrl.go")
public String myMethod () {
    // implementation here;
}
<a href="someUrl.go">Link to another page</a>

Spring MVC对此提供了任何解决方案吗?理想情况下,我希望与Spring MVC所知道的所有URL进行一些反向映射,并为每个URL提供一个唯一的名称,这样我就可以在JSP中使用该名称来获取URL,而不是硬编码它。

更新:这似乎是我如何在Spring MVC中创建基于控制器和操作方法的URL的重复?,除了在另一个关于Spring MVC3的问题中。在Spring4中,这个问题得到了解决,如下所示(https://jira.Spring.io/browse/spr-5779)

共有1个答案

羊舌旭尧
2023-03-14

我找到了解决方案,这里对其进行了解释(https://jira.spring.io/browse/spr-5779)。JSP代码如下所示:

<%@ taglib uri="http://www.springframework.org/tags" prefix="s" %>

<a href="${s:mvcUrl('AC#myMethod').build()}">Link to another page</a>

其中AC是控制器类的大小写首字母。如果因为控制器具有相似的名称而存在冲突,则可以显式地为每个带注释的方法分配一个名称,如下所示:

@RequestMapping ( name = "myName", value= ...)
 类似资料:
  • 本文向大家介绍Springmvc Controller接口代码示例,包括了Springmvc Controller接口代码示例的使用技巧和注意事项,需要的朋友参考一下 Spring MVC Controller控制器,是MVC中的部分C,为什么是部分呢?因为此处的控制器主要负责功能处理部分: 收集、验证请求参数并绑定到命令对象; 将命令对象交给业务对象,由业务对象处理并返回模型数据; 返回Mode

  • 主要内容:1.DRY 原则,2.实现逻辑重复,3.功能语义重复,4.代码执行重复,5.注释重复,6.数据重复,7.提高代码复用性1.DRY 原则 它的英文描述为:Don’t Repeat Yourself。中文直译为:不要重复自己。将它应用在编程中,可以理解为:不要写重复的代码。 很多人对这条原则存在的误解。实际上,重复的代码不一定违反 DRY 原则,而且。 DRY不是只代码重复,而是“知识”的重复,意思是指业务逻辑。例如由于沟通不足,两个程序员用两种不同的方法实现同样功能的校验。 2.实现逻辑

  • 有没有办法把这个密码转过来 变成类似这样的东西 我知道需要装饰器,但是当每个属性必须声明属性类型三次或更多次时,SSOT似乎丢失了。 有没有更简单的方法?乔伊?模式生成?

  • 本文向大家介绍SpringMVC基于注解的Controller详解,包括了SpringMVC基于注解的Controller详解的使用技巧和注意事项,需要的朋友参考一下 概述 继 Spring 2.0 对 Spring MVC 进行重大升级后,Spring 2.5 又为 Spring MVC 引入了注解驱动功能。现在你无须让 Controller 继承任何接口,无需在 XML 配置文件中定义请求和

  • 主要内容:1.Spi机制处理,2.调用onStarterup方法,3.DispatcherServlet类分析,4.web容器的准备阶段,5.Question这里的SpringMvc是基于注解版的, 在Servlet3.0之后注解版为主要的实现方式。 1.Spi机制处理 Servlet的规范ServletContainerInitializer的实现类上面的注解代表着这个接口的实现都是来自Spi机制的。 于是加载了所有实现WebApplicationInitializer的接口的类 2.调用on