关于dao层和service的问题
1、个人对于dao和service的作用没有理顺,不知道具体这样定义的意义在哪,是否能举个例子来说明
2、为什么dao和sevice都是interface但是dao确实xml配置,而非service一样impl实现
在此先谢谢拉 O(∩_∩)O
正在回答
同学你好:
因为随着项目的增多,我们的代码也越来越多,为了让代码更加清晰,我们一般采用三层架构的思想去写代码:让他们各司其职:(Servlet和controller的作用一样)
把业务处理都交给service。把查询交给dao。把参数的接收等交给controller。
拿本项目举例:
分为了三层:controller层就只管接收参数,封装实体类,然后调用service层的方法等做一些简单的逻辑。
service层就做一些业务逻辑上的处理,由于本案例设计的比较简单没有设计到业务代码,但是开发中是会有公司的业务逻辑的:
而dao层,就单纯的对数据库进行操作,与数据库打交道。
这样分工明确,如果业务逻辑修改了,直接去改service层的代码就可以了。
2、而为什么service等有写接口和实现类而dao层没有写
是因为按道理来说,我们应该面向接口编程,都应该写实现类和接口,但mybatis为了和代码解耦合,可以使sql代码写到xml里,于是,他底层为接口做了映射,使其可以关联上xml,底层就自动为dao层写一个实现类(底层实现,咱们看不到)。
所以,都是有实现类的,只是dao的是mybatis帮我们底层进行实现了。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
- 参与学习 人
- 提交作业 323 份
- 解答问题 8263 个
本阶段将带你学习主流框架SSM,以及SpringBoot ,打通成为Java工程师的最后一公里!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星