我正在考虑一个一般的 RequestMapping 问题。在不选择任何特定的 MVC 框架的情况下,将基于注解的请求映射与简单的参数检查器映射进行比较,哪个更好?
假设我想创建一个 Web 服务,它应该处理例如“添加”和“删除”操作。
使用注释它看起来像这样:
@Path("/add")
public void add(String addable) {}
@Path("/remove")
public void remove(String deletable) {}
使用参数它看起来像这样:
@Path("/operation")
public void doOperation(Operation op) {
String type = op.getType();
if ("add".equals(type)) {
add(op);
} else if ("remove".equals(type)) {
remove(op);
}
}
在第二个示例中,假设 Operation 对象是从 JSON 对象构建的。所以想法是我们只有一个通用的操作,它有一个类型参数,我们总是调用相同的请求(在这种情况下是/操作),实际的请求类型在 JSON 对象中。
我知道第一个看起来更好,但是还有其他原因可以说明它是更好的解决方案吗?它有更好的性能还是其他什么?