当前位置: 代码迷 >> J2EE >> 大家觉得Service是否有必要设计层范型呢?该怎么处理
  详细解决方案

大家觉得Service是否有必要设计层范型呢?该怎么处理

热度:35   发布时间:2016-04-22 01:50:18.0
大家觉得Service是否有必要设计层范型呢?
例如说:
Java code
public interface IBaseEntityService<T extends BaseEntity<?>> {        public void save(T entity);    public void update(T entity);        public void delete(HashMap<String, ? extends Object> condition);    public List<? extends T> get(HashMap<String, ? extends Object> condition, CurrentPage currentPage);

我的问题是:

如果想接口通用,那get来说,参数肯定只能设计成一个类似HashMap的形式,不然各种getById、getByName之类的就无法统一。但是设计成一个HashMap之后,感觉调用起来有很晦涩,如果象getById(String id),getByName(String name)之类的,调用起来就很清晰,而且规约了get函数的获取方式就是那几种。

大家是怎么看这个设计问题的呢?

------解决方案--------------------
你是要设计一个介于 hibernate 和 ibatis的东西么?
------解决方案--------------------
dao层设计成泛型是很好的选择,但这要求设计者要有足够的经验,不然很容易出问题
service设计成泛型什么样子啊?
------解决方案--------------------
我覺得必要性主要取決於getById,getByName之類的數量
------解决方案--------------------
参数可以是bean
根据bean中有值的部分进行比对
  相关解决方案