第一种:
@RequestMapping("/methods1")
public String methods1(){
return "methods1";
}
@RequestMapping("/methods2")
public String methods2(){
return "methods2";
}
第二种:
@RequestMapping("/method")
public String method(@RequestParam String params){
JSONObject json = JSONObject.parseObject(params);
String method = json.getString("method");
String str = "";
switch (method){
case "method1":
str = "method1";
break;
case "method2":
str = "method2";
break;
default:
}
return str;
}
哪一种更好一点?各有什么优缺点呢?大家平时开发使用什么方法呢?
我的个人见解:
第一种在方法很多时稍麻烦些,需要写很多的方法,但是条理清晰,如果每个接口地址都要开通防火墙等就更麻烦了。
第二种在方法多,很多参数可以公共使用时更为方便,但是条理不清晰,而且一个方法过于长了。
希望听听大家的意见。
一般来说,当然是第一种好,单一职责,高内聚,低偶合,符合软件设计思想;但是像你这种一个接口需要再开个防火墙的映射确实麻烦,可以统一入口,然后内部使用策略模式做分流