spring - combining methods with same flow in controller. -
method 1.
@requestmapping(value="/getprofessor") public @responsebody list<object> getmember(httpservletrequest request){ httpsession session = request.getsession(); hashmap user = (hashmap)session.getattribute("user_info"); map<string, object> param = new hashmap<string, object>(); param.put("phone", (string)user.get("phone"); reportmanager manager = new reportmanager(); list<object> list = manager.getprofessor(param); } method 2.
@requestmapping(value="/getmember") public @responsebody list<object> getmember(httpservletrequest request){ httpsession session = request.getsession(); hashmap user = (hashmap)session.getattribute("user_info"); map<string, object> param = new hashmap<string, object>(); param.put("phone", (string)user.get("phone"); reportmanager manager = new reportmanager(); list<object> list = manager.getmember(param); } the code above briefly describe how list of members , professors. 2 methods have same code flow except url , bottom-most methods. know, 1 of core principles in oop 'combine repeating problems'. so, point want combine these method 1 method.
public map<string, object> getparams(httpservletrequest request){ httpsession session = request.getsession(); hashmap user = (hashmap)session.getattribute("user_info"); map<string, object> param = new hashmap<string, object>(); param.put("phone", (string)user.get("phone"); } @requestmapping(value="/getprofessor") public @responsebody list<object> getmember(httpservletrequest request){ reportmanager manager = new reportmanager(); list<object> list = manager.getprofessor(this.getparams(request)); } @requestmapping(value="/getprofessor") public @responsebody list<object> getmember(httpservletrequest request){ reportmanager manager = new reportmanager(); list<object> list = manager.getprofessor(this.getparams(request)); }
Comments
Post a Comment