一个用于添加和更新功能的jsp
这可能是一个非常基本的问题,但仍然想知道在性能和可维护性方面,哪种方法可能更好一个用于添加和更新功能的jsp,jsp,spring-mvc,controller,java-7,Jsp,Spring Mvc,Controller,Java 7,这可能是一个非常基本的问题,但仍然想知道在性能和可维护性方面,哪种方法可能更好 我有一个需要添加和更新功能的页面,我已经在同一个jsp中处理了这个页面 例如:-manageCouriers.jsp ,但在这里,我必须编写更多的代码来检查它是更新还是添加操作,以及控制器(我使用的是SpringMVC) 如果我使用单独的jsp 例如:-addCourier.jsp和updateCourier.jsp ,这里对我来说是直截了当的,我不想检查任何条件,这里我需要更少的编码,我看到在大多数情况下两个页面都
我觉得这两种情况在某些方面似乎更好,我不知道该选择哪一种,以获得更好的性能和可维护性。感谢您的宝贵意见从支持所有当前和未来可预见用例的最小公分母开始,并在新需求迫使您进行重构时进行重构 也就是说,根据您所描述的,至少从维护的角度来看,最简单的方法是使用一个表单,两个按钮具有
name
属性,这样您就可以根据@RequestMapping
的param
属性轻松区分服务器方法,比如
<input type="submit" class="button" name="add" value="add"/>
<input type="submit" class="button" name="update" value="update"/>
和更新
@RequestMapping(method = RequestMethod.POST, params = "update")
public String update() {
...
}
从支持所有当前和未来可预见性用例的最小公分母开始,并在新需求迫使您进行重构时进行重构 也就是说,根据您所描述的,至少从维护的角度来看,最简单的方法是使用一个表单,两个按钮具有
name
属性,这样您就可以根据@RequestMapping
的param
属性轻松区分服务器方法,比如
<input type="submit" class="button" name="add" value="add"/>
<input type="submit" class="button" name="update" value="update"/>
和更新
@RequestMapping(method = RequestMethod.POST, params = "update")
public String update() {
...
}
避免重复,为了灵活性,可以创建两个页面,但对于公共共享部分使用jsp include,代码只在部署的jsp java类中重复,因此jsp端的维护更容易,性能也相同
<%@include file="common.inc"%>
在控制器中执行的逻辑越多越好,在模型中提供结果并在JSP中读取它们
例如,您可以决定向common.inc
发出信号,说明该页面是否是控制器(更好)或JSP中的插入或更新(在两个页面中的每个页面中都硬编码,或者甚至可能在common.inc
中检查ID是否存在)
我同意您应该避免在JSP中进行检查,但是“通用”JSP代码越完整,执行or之类的检查就越不可避免(只要您只是检查表示逻辑,就没有那么糟糕,例如:如果
isEdit=true
则打印不同的标题标签)避免重复,为了灵活性,可以创建两个页面,但对公共共享部分使用jsp include,代码只在部署的jsp java类中复制,因此jsp端的维护更容易,性能也相同
<%@include file="common.inc"%>
在控制器中执行的逻辑越多越好,在模型中提供结果并在JSP中读取它们
例如,您可以决定向common.inc
发出信号,说明该页面是否是控制器(更好)或JSP中的插入或更新(在两个页面中的每个页面中都硬编码,或者甚至可能在common.inc
中检查ID是否存在)
我同意您应该避免在JSP中进行检查,但是“通用”JSP代码越完整,执行or之类的检查就越不可避免(只要您只是检查表示逻辑,就没有那么糟糕,例如:如果isEdit=true
,则打印不同的标题标签)