问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java中dao层和service层的区别是什么?

发布网友 发布时间:2022-04-26 20:32

我来回答

8个回答

热心网友 时间:2022-04-09 11:17

至于为什么service层要使用接口来定义有以下几点好处: 

扩展资料:

Java Web,是用Java技术来解决相关web互联网领域的技术总和。web包括:web服务器和web客户端两部分。Java在客户端的应用有java applet,不过使用得很少,Java在服务器端的应用非常的丰富,比如Servlet,JSP和第三方框架等等。Java技术对Web领域的发展注入了强大的动力。

参考资料:Web Service百度百科 数据访问层百度百科

热心网友 时间:2022-04-09 12:35

层:层叫数据访问层,全称为data access object,属于一种比较底层,比较基础的操作,具体到对于某个表、某个实体的增删改查

service层:service层叫服务层,被称为服务,肯定是相比之下比较高层次的一层结构,相当于将几种操作封装起来。

至于为什么service层要使用接口来定义有以下几点好处:

在java中接口是多继承的,而类是单继承的,如果你需要一个类实现多个service,你用接口可以实现,用类定义service就没那么灵活

要提供不同的数据库的服务时,我们只需要面对接口用不同的类实现即可,而不用重复地定义类

编程规范问题,接口化的编程为的就是将实现封装起来,然调用者只关心接口不关心实现,也就是“高内聚,低耦合”的思想。

热心网友 时间:2022-04-09 14:10

首先解释面上意思,service是业务层,是数据访问层。
呵呵,这个问题我曾经也有过,记得以前刚学编程的时候,都是在service里直接调用,service里面就new一个类对象,调用,其他有意义的事没做,也不明白有这个有什么用,参加工作久了以后就会知道,业务才是工作中的重中之重。
我们都知道,标准主流现在的编程方式都是采用MVC综合设计模式,MVC本身不属于设计模式的一种,它描述的是一种结构,最终目的达到解耦,解耦说的意思是你更改某一层代码,不会影响我其他层代码,如果你会像spring这样的框架,你会了解面向接口编程,表示层调用控制层,控制层调用业务层,业务层调用数据访问层。初期也许都是new对象去调用下一层,比如你在业务层new一个DAO类的对象,调用DAO类方法访问数据库,这样写是不对的,因为在业务层中是不应该含有具体对象,最多只能有引用,如果有具体对象存在,就耦合了。当那个对象不存在,我还要修改业务的代码,这不符合逻辑。好比主板上内存坏了,我换内存,没必要连主板一起换。我不用知道内存是哪家生产,不用知道多大容量,只要是内存都可以插上这个接口使用。这就是MVC的意义。
接下来说你感觉service的意义,其实因为你现在做东西分层次不是那么严格,在一个你们做东西业务本身也少,举个最简单的例子,你做一个分页的功能,数据1000条,你20条在一个页,你可以把这个功能写成工具类封装起来,然后在业务层里调用这个封装的方法,这才是业务里真正干得事,只要没访问数据库的,都要在业务里写。
再有不明白的追问,这是经验问题,呵呵,其实以后你就会懂。只是刚开始写的代码都是有个请求,我就去数据库取,业务几乎没有。

热心网友 时间:2022-04-09 18:09

虽然每分,但还是把自己的理解给LZ说说。
怎么说呢,我不是理论帝。所以我讲讲自己的理解
比说你现在用的是SSH框架,做一个用户模块:
1、假设现在你做这个功能会用到user表和权限表,那么你前台的页面访问action,action再去调用用户模块service,用户模块service判断你是操作user表还是权限表,如果你操作的是user表则service的实现类就去调用userDAO。如果是操作的是权限表则调用权限的DAO
2、也就是说DAO一定是和数据库的每张表一一对应,而service则不是。明白的没?其实你一个项目一个service和一个DAO其实也一样可以操作数据库,只不过那要是表非常多,出问题了,那找起来多麻烦,而且太乱了
3、好处就是你的整个项目非常系统化,和数据库的表能一致,而且功能模块化,这样以后维护或者改错比较容易,性能也高一些

热心网友 时间:2022-04-09 20:34

全称Data Access Object,数据访问对象,是一种设计模式。
程序里是专门负责与数据库进行交互,进行增删改查的部分。
service层则是处理业务需求的部分。
之所以不把这两部分写在一起是为了解耦和
举个例子,有很多不同的功能可能会用到相同的访问数据库的方法
后台接收到前台传来的参数,分给不同的service层方法进行实现
service层方法再根据业务需求调用层的方法访问数据库获取数据
分成service和两层可以使得一些方法不用重复写,提高代码复用性

热心网友 时间:2022-04-09 23:15

简单的说DAO层是跟数据库打交道的,service层是处理一些业务流程的,

至于你说的为什么要用service层封装,我认为:一般来说,某一个程序的有些业务流程需要连接数据库,有些不需要与数据库打交道而直接是一些业务处理,这样就需要我们整合起来到service中去,这样可以起到一个更好的开发与维护的作用,同时也是MVC设计模式中model层功能的体现

热心网友 时间:2022-04-10 02:13

而且一个1⃣️?在你?这一

热心网友 时间:2022-04-10 05:28

处理业务相关内容,通常也可以在这一层控制事务
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
14岁每天做多少蹲起和提踵不影响长高 每天晚上提踵来练弹跳会影响长高吗? 提踵和练肌肉会不会长不高? 提踵(抬脚跟)训练会影响长个吗 求高人指点 提踵 会不会影响身高的增长? 我现在15岁 提踵有利于长高吗 提踵影响长高吗 win10可不可以玩盗版的中2,帝战,拿战 沧州蓝海光伏设备有限公司怎么样? 为什麽女巫要骑扫帚不骑板凳。。。 Java里面DAO是什么东西???DAO是什么东西 java中为什么大家都喜欢取StudentDAO这个名字,DAO具体是什么意思? 请问java项目 里的DAO,model,service, IMPL 是什么意思,以及有什么关系 顾北城和苏眠是哪部小说主人公? Java中为什么要把接口叫dao? 我想找一本书,好多年了,我只记得男主姓萧是个少年将军,女主叫宁初什么的(一个数字),有一个哥哥一个_百度问一问 Java开发“dao”“model”“service”“impl”“util”通常是什么意思? 云桑什么时候知道陆眠 JAVA里的domain和dao都是指什么啊 求 陆眠萧祁墨小说 百度云资源,谢谢 陆眠萧祁墨第几章确定关系 java中的action是什么,DAO又是什么? java中dao类是什么 周公解梦 梦到上厕所 说话不清楚是什么问题 说不清楚话怎么办? win10怎么还原成win7 360 说话说不清楚怎么办 win10系统360浏览器怎么降到win7 从360下载的win10怎么换回win7 换了之后软件还在吗 java中的dao是什么意思,三个单词分别是什么?? 谁能详细的给我讲述一下java里分dao,biz,util,web的包的含义么?详细解释。每个包都什么意思,做什么用的 java里ssh框架,通用dao接口是什么意思 三菱PLC结构化文本ST语言编程问题,上升沿触发用什么语句? plc的编程原则和方法 PLC的结构化文本ST语言编程,请教一个简单的例子。 施耐德plc st语言编程 ST语言编程学习,怎么样调用FC st语言怎样控制三菱plc 各位学习三菱PLC ST编程,请问有ST的函数详细说明吗 用三菱plc中的st语言如何区域复位? 我女朋友的男朋友女主角是谁? 我的女朋友的男朋友 歌词 我女友的男朋友的剧情简介 我的女朋友有男朋友了我该怎么办 我女朋友的男朋友的导演是谁? <我女友的男朋友>韩国~ 电影简介发来~ 我的女友有了一个特殊的男性朋友,该怎么办? 每次我女朋友的男性朋友(女朋友认识的都是男的百分之八十都是男性朋 我的女朋友男性朋友很多而且关系都很好怎么办