使用java SSH写通用dao层和service层。
答案:3 悬赏:10 手机版
解决时间 2021-02-04 19:10
- 提问者网友:谁的错
- 2021-02-03 20:14
使用ssh做项目,但是发现dao层和service层,每一个对象要写一个dao和service,比如有student和teacher,那么student要写一个dao和service,teacher也要写一个dao和service,但是它们的功能都类似,无非就是查询,插入,更新和删除,但是如果有很多个对象那么就要写很多个这样的dao和service,不仅很麻烦,而且都是重复性的代码很多。怎么样把这些dao和service封装好?然后就是写一个就可以了,其他对象都可以通用封住好的dao和service。最好能给一个例子……谢谢
最佳答案
- 五星知识达人网友:刀戟声无边
- 2021-02-03 20:56
import java.io.Serializable;
import java.util.List;
import java.util.Map;
public interface ICommonDao {
public Serializable save(Object entity);
public void update(Object entity);
public void merge(Object entity);
public void delete(Object entity);
public Object findObject(Class clazz, Serializable id);
public List findList(String queryString);
public List findList(String queryString, Map args);
public Object findUniqueResult(String hql);
public List findList(final String hql, final int num);
}
import java.io.Serializable;
import java.util.List;
import java.util.Map;
public interface ICommonService {
public Serializable save(Object entity);
public void update(Object entity);
public void merge(Object entity);
public void delete(Object entity);
public Object findObject(Class clazz, Serializable id);
public List findList(String queryString);
public List findList(String queryString, Map args);
public Object findUniqueResult(String hql);
public List findList(final String hql, final int num);
}
实现类,用CommonDaoImpl实现ICommonDao
用CommonServiceImpl实现ICommonService
实现的时候直接调用hibernateTemplate中的方法就行,或者自己写点儿,都不难
import java.util.List;
import java.util.Map;
public interface ICommonDao {
public Serializable save(Object entity);
public void update(Object entity);
public void merge(Object entity);
public void delete(Object entity);
public Object findObject(Class clazz, Serializable id);
public List findList(String queryString);
public List findList(String queryString, Map args);
public Object findUniqueResult(String hql);
public List findList(final String hql, final int num);
}
import java.io.Serializable;
import java.util.List;
import java.util.Map;
public interface ICommonService {
public Serializable save(Object entity);
public void update(Object entity);
public void merge(Object entity);
public void delete(Object entity);
public Object findObject(Class clazz, Serializable id);
public List findList(String queryString);
public List findList(String queryString, Map args);
public Object findUniqueResult(String hql);
public List findList(final String hql, final int num);
}
实现类,用CommonDaoImpl实现ICommonDao
用CommonServiceImpl实现ICommonService
实现的时候直接调用hibernateTemplate中的方法就行,或者自己写点儿,都不难
全部回答
- 1楼网友:玩家
- 2021-02-03 23:15
把他们抽成接口
- 2楼网友:雪起风沙痕
- 2021-02-03 21:48
dao 通常是不处理异常的,否则在 service 这层事物拦截会出问题
至于 service 到 action 是不是抛看设计,通常是抛,但应该不是最初的那一个
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯