对于不少基于ssh的项目都有明确的分层,通常分为action层--》 service层 --》 dao层程序员
一般来讲越往下面的dao层的提供的接口越灵活越方便咱们编程,不过对于修改表的数据的接口可能要稍微谨慎,因此dao层通常会封装好通用的查询,包含查询实体,实体列表、分页查询,日志打印等 由于对于大多数实体来讲基本是查询方式会多一些,若是一个项目是多人协做的状况下,封装通用的查询,能够造成一个标准,避免不一样程序员命名规则不同,致使代码维护不方面,通用的代码抽离出来同时方便维护,若是发现bug的时候修改对应的错误函数就能够知足需求。可是对应复杂的业务多表关联查询,不少初学者可能有一些模糊,不知道将dao操做函数对应于哪一个实体对应的dao,本人推荐将该函数放在跟实体最接近的dao中。编程
一、dao的api设计:api
对于通用的场景:ssh
public T findXXById 根据id来查询对应的实体函数
T findXXByProperty 根据实体的属性来查询对应的实体设计