1,比如说分三层的话,service中有注入的dao,这时候有一个BaseDao接口,很多实体Dao继承BaseDaoImpl之后,这些实体Dao具体的操作基本就是增删改查,所以只要在BaseDaoImpl实现即可,具体的实体DaoImpl基本都是空的。
但是我看到一种做法,就是service直接继承一个DaoSupportImpl,直接在service对数据库进行操作。
我倾向于第一种。第二种写法规范吗???
或者还有什么更好的做法
业务层与数据库访问层耦合度太高的话肯定对后期更改有影响,而且可扩展性实在太低。打个简单的比方,就像刚学java,你可能会写if else,所以导致你在添加一个业务逻辑的时候,你就必须再添加一个if else。如果你一开始的时候就会使用反射,关系映射的话,那么你只需要每添加一个业务逻辑,让其实现特定的接口或继承特定的类的话。你完全可以无限水平扩展,而不更改任何业务逻辑调用的方法。此处如果不是很明白,请参考SpringMVC的动态请求(浏览器输入请求URL,服务器动态的根据数据的请求RUL找到对应的控制器)
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。