service和Dao层有什么关系
Dao层:主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置。
dao层代码示例:

service层:主要负责业务模块的逻辑应用设计, Service层的业务实现,具体要调用到已定义的DAO层的接口,封装Service层的业务逻辑有利于通用的业务逻辑的独立性和重复利用性,程序显得非常简洁。
service层代码示例:

dao层和service层关系:service层经常要调用dao层的方法对数据进行增删改查的操作,现实开发中,对业务的操作会涉及到数据的操作,而对数据操作常常要用到数据库,所以service层会经常调用dao层的方法。
扩展资料
Service层是建立在DAO层之上的,建立了DAO层后才可以建立Service层,而Service层又是在Controller层之下的,因而Service层应该既调用DAO层的接口,它刚好处于一个中间层的位置。每个模型都有一个Service接口,每个接口分别封装各自的业务处理方法。
在实际开发中DAO层大多是对某张表进行增删改查,都是一些固定的语句,除非涉及到更复杂的service层业务逻辑,才可能要添加更复杂的DAO层方法。
Controller层一般都是写接口提供给前端或者后端其他服务使用的,一般后端的接口都是写在 Controller层,Controller层的接口里面不写业务逻辑,主要是调用Service层的业务逻辑方法,service层主要是写业务逻辑方法,service层经常要调用dao层的方法对数据进行增删改查的操作。
下面是Controller层的接口示例:
@Controller
@RequestMapping(value = "/api/platform/exceptioncenter/exceptioninfo")
public class ExceptionInfoController {
//注入
@Autowired
private ExceptionInfoBiz exceptionInfoBiz; /**
* 创建异常信息请求
* @param requestBody 请求消息内容
* @param request 请求消息头
* @return jsonObject
*/
@RequestMapping(
value="/create",
method = RequestMethod.POST
)
public ModelAndView createExceptionInfo(@RequestBody String requestBody, HttpServletRequest request) {
JSONObject jsonObject = JSONObject.fromObject(requestBody);
ComExceptionInfo comExceptionInfo = new ComExceptionInfo();
comExceptionInfo.setProjectName(jsonObject.getString("projectName"));
comExceptionInfo.setTagName(jsonObject.getString("tagName"));
exceptionInfoBiz.insert(comExceptionInfo);
//返回请求结果
JSONObject result= new JSONObject();
result.put("success", "true");
return new ModelAndView("", ResponseUtilsHelper.jsonSuccess(result.toString()));
}
}
service和Dao层有什么关系的更多相关文章
- 关于controller,service,dao层的问题记录
出错写法: 1>.AlarmRecordController art=new AlarmRecordController(); 2>.private static SystemServi ...
- DAO,Service,Controller各层之间的关系
DAO层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口 ...
- 案例48-crm练习利用spring管理service和dao层的对象
1 导包 2 将 Service 对象以及 Dao 对象配置到 spring 容器 <?xml version="1.0" encoding="UTF-8" ...
- 浅谈service、DAO层引入(转)
转自 http://www.4u4v.net/mvc-simple-enough-on-the-introduction-of-service-dao-layer.html MVC是web开发中常见的 ...
- 【service调用dao层传参的三种方式】
第一种方案:默认数组角标: service Public User selectUser(String name,String area); mapper: <select id="s ...
- model、dao、 service 和Comtroll层的关系
首先这是现在最基本的分层方式,结合了SSH架构.modle层就是对应的数据库表的实体类.Dao层是使用了Hibernate连接数据库.操作数据库(增删改查).Service层:引用对应的Dao数据库操 ...
- Mybatis系列全解(七):全息视角看Dao层两种实现方式之传统方式与代理方式
封面:洛小汐 作者:潘潘 一直以来 他们都说为了生活 便追求所谓成功 顶级薪水.名牌包包 还有学区房 · 不过 总有人丢了生活 仍一无所获 · 我比较随遇而安 有些事懒得明白 平日里问心无愧 感兴趣的 ...
- java service domain dao 分层思路
今天在开发项目的时候,对项目的java后台的分层有一些看法: 首先,鼓励使用service domain dao 层分层设计概念. 其次,对几层作用的理解: 第一:dao层操作单表,不涉及复杂逻辑,主 ...
- DAO(Repository),Service,Controller层之间的相互关系
DAO层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口 ...
随机推荐
- IntelliJ IDEA 快捷键(转载收藏)
自动代码 常用的有fori/sout/psvm+Tab即可生成循环.System.out.main方法等boilerplate样板代码 . 例如要输入for(User user : users)只需输 ...
- 学习操作系统和Linux内核的新体会
算起来是第三次看内核了吧,要从源码的细节中爬出来: (1)先拎清楚主要的数据结构,就把握住了骨架: (2)再看每个系统调用的功能的流程是如何围绕上述数据结构展开.举个栗子,块设备驱动层的主要数据结构有 ...
- sqlserver 保存 立方米(m³)
转载来源:https://bbs.csdn.net/topics/370186797 解决方案:在前面加 N,如:N'm³' 案例: create table tbn(name nvarchar(10 ...
- day 03 预科
目录 什么是变量: 变量的组成 变量的风格 1.驼峰体 2.下划线 变量名的组成规范 注释的作用 turtle库的简单使用 什么是变量: 1.是变化的量. 2.变:现实世界中的状态是会发生改变的. 3 ...
- maven学习笔记三(依赖特性,作用域)
上一章中 我们看到了添加了个junit的依赖包.那么maven中想添加依赖的jar包我们只需要配置相应的dependency就行.例如: <dependency> <groupId ...
- kill详解
一. 终止进程的工具kill .killall.pkill.xkill 终止一个进程或终止一个正在运行的程序,一般是通过kill .killall.pkill.xkill 等进行.比如一个程序已经死掉 ...
- 再来一个tensorflow的测试性能的代码
感觉这个比前一套,容易理解些~~ 关于数据提前下载的问题: https://www.jianshu.com/p/5116046733fe 如果使用keras的cifar10.load_data()函数 ...
- 微信小程序~用户转发 onShareAppMessage
只有定义了此事件处理函数,右上角菜单才会显示“转发”按钮,在用户点击转发按钮的时候会调用,此事件需要return一个Object,包含title和path两个字段,用于自定义转发内容 代码使用onSh ...
- C# 验证控件的使用RequiredFieldValidator&CompareValidator
使用验证控件可以向服务器提交表单数据时验证表单内容,下面以RequiredFieldValidator和CompareValidator为例说明验证控件的用法 RequiredFieldValidat ...
- ASP.NET Core ---- 系列文章
(13)ASP.NET Core 中的选项模式(Options) (12)ASP.NET Core 中的配置二(Configuration) (11)ASP.NET Core 中的配置一(Config ...