controller层,service层,mapper层,entity层的作用与联系。

 

一. controller层

controller层是用来接受前台数据和返回页面请求信息的,Controller层是不允许直接操作数据库的!它就像一个服务员,哪桌客人需要点菜了,就喊一声服务员!
对应的,外界需要完成什么样的业务,就通过Controller去调用不同的Service,需要记住的是Controller只是一个中间者或者转发者,不应该在Controller里暴露Service的业务逻辑,而应该直接转发Service的业务处理结果!
控制层,负责具体模块的业务流程控制,需要调用service逻辑设计层的接口来控制业务流程。
controller通过接收前端H5或者App传过来的参数进行业务操作,再将处理结果返回到前端。
@RestController
@RequestMapping("/user")
public class UserController {@Autowiredprivate UserMapper userMapper;@GetMapping("/select")public List<User> index(){List<User> all = userMapper.findAll();return all;}@Autowiredprivate UserService userService;@PostMapping("/insert")public boolean save(@RequestBody User user){return userService.saveUser(user);}@DeleteMapping("/{id}")public Integer delete(@PathVariable Integer id){return userMapper.deleteById(id);}

二.servie层

service层接受controller层信息,用于业务处理和逻辑判断。Service 用于处理业务逻辑,会调用mapper层的API;Service层是业务逻辑层,在该层进行复杂的业务逻辑处理,对在多个mapper层查到的数据进行组装、处理,然后将结果返回给Controller,因此,一般情况下,一个Controller中可能包括多个Service,
而一个Service中又或许包含多个mapper。
(举例)controller层是饭店经理,service是服务员,mapper层是厨房仓库。
业务service层,给controller层的类提供接口进行调用。一般就是自己写的方法封装起来,就是声明一下,具体实现在serviceImpl中。
public class UserService extends ServiceImpl<UserMapper, User> {public boolean saveUser(User user) {if(user.getId() == null){return save(user);//mybatis-plus提供的方法,表示插入数据。}else{return updateById(user);}
}

三.mapper层

mapper层(数据持久化层,专门用来跟数据库打交道的)。
mapper层用于和数据库交互,想要访问数据库并且操作,只能通过mapper层向数据库发送sql语句,将这些结果通过接口传给service层,对数据库进行数据持久化操作,他的方法语句是直接针对数据库操作的,
主要实现一些增删改查操作,在mybatis中方法主要与与xxx.xml内相互一一映射。
@Mapper
@Repository
public interface UserMapper extends BaseMapper<User> {//数据库查询接口,专门用来跟数据库交互用的@Select("SELECT * from sys_user")public List<User> findAll();List<User> findAll1();@Insert("INSERT into sys_user(username,password,nickname,email,phone,address)VALUES(#{username},#{password},#{nickname}," +"#{email},#{phone},#{address});")public int insert(User user);public int updateUser(User user);@Delete("delete from sys_user where id = #{id}")public Integer deleteById(@Param("id") Integer id);

四.entity层

entity层创建实体类,和数据库表里面属性值一一对应。
实体层,用于存放我们的实体类,与数据库中的属性值基本保持一致,实现set和get的方法或者使用注解的方式。
@Data//Data注解代替了get和set方法
@TableName(value = "sys_user")
public class User {@TableId(type = IdType.AUTO)private Integer id;private String username;private String password;private String nickname;private String email;private String phone;private String address;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/1380275.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

“一日之际在于晨”,欢迎莅临WAVE SUMMIT上午场:Arm 虚拟硬件早餐交流会

8月16日&#xff0c;盛夏的北京将迎来第九届WAVE SUMMIT深度学习开发者大会。在峰会主论坛正式开启前&#xff0c;让我们先用一份精美的元气早餐&#xff0c;和一场“Arm虚拟硬件交流会”&#xff0c;唤醒各位开发小伙伴的开发魂&#xff01; 8月16日&#xff0c;WAVE SUMMIT大…

雷军爆料骁龙855新机 液冷3.0+跑车造型 媲美iPhone

目前各大手机厂商都在着手发布骁龙855新机&#xff0c;个别厂商已经抢先发布了&#xff0c;最受国内用户关注的自然还是小米9了&#xff0c;不过近日&#xff0c;雷军在个人微博爆料&#xff0c;又一款骁龙855新机将会在下周一&#xff0c;也就是3月18日发布剧情介绍。 这款手机…

互联网专家资源分享(二)

1. 换位思考 沈阳 前台页面处理&#xff0c;利用CSS和DIV构建页面。面向在校毕业生或者刚参加工作人员 divcss页面处理html控件解析&#xff0c;数据处理&#xff0c;sql语句构造 2. moosefs调优 济南 tcp/ip&#xff0c;精通tcp/ip协议。 精通linux下的tcp/ip开发。&#…

WEBSHELL 提权方法总结

最全的 WEBSHELL 提权方法总结 来到的请留个脚印&#xff0c;谢谢 在得到了一个 Webshell 之后&#xff0c;如果能进一步利用系统的配置不当取得更高的权限&#xff0c;一直是广大黑友们所津 津乐道的话题&#xff0c;也是高手和菜鸟间最大的区别。本文将从一个大角度总括当前…

打破智能手机消费格局的将不是另一台智能手机,而是游戏

文|佘凯文 来源|智能相对论&#xff08;aixdlun&#xff09; 云游戏的概念&#xff0c;在游戏圈越来越热。从微软的Project xCloud的云游戏平台、到谷歌的Project Stream云游戏服务、再到索尼基于PS4的云游戏服务以及腾讯也宣布与英特尔联手推出云游戏平台“腾讯即玩”&#…

游戏市场阴影下的游戏手机厂商,和他们无法触碰的未来

出于以版号为主的一系列问题&#xff0c;中国手游市场遇冷是近一年以来的显著现象。根据App Annie的调查显示&#xff0c;在过去两年里&#xff0c;全球App的用户总使用时长增长了50%&#xff0c;而游戏所占比重一直稳步上升&#xff0c;但中国市场的游戏用户却支出锐减&#x…

雷军亲自捧场,双液冷游戏手机演绎“暴力美学”

10月23日&#xff0c;黑鲨科技最新旗舰黑鲨游戏手机Helo在北京惊艳上市。黑鲨科技创始人兼CEO吴世敏&#xff0c;小米集团创始人、董事长兼首席执行官雷军&#xff0c;中国文化娱乐行业协会会长刘金华、京东商城通讯事业部总裁陈婷、南昌金开集团董事长胡顺明以及优点科技创始人…

雷军亲自站台,游戏手机能否成为市场增长新引擎?

从2017年开始&#xff0c;智能手机市场的表现便让不少人大跌眼镜。 Canalys发布的统计报告显示&#xff0c;2017年中国智能手机市场年总出货量为4.59亿部&#xff0c;较2016年下跌4%&#xff0c;这也是中国首次出现智能手机年总出货量下滑的情况。 而近日中国信息通信研究院发布…

黑鲨的“游戏”人生:寻找手机红海之中一抹蓝

手机厂商的日子并不好过。 据第三方机构发布数据&#xff0c;2019年上半年&#xff0c;国内手机市场出货量仅为1.86亿部&#xff0c;同比下降5.1%&#xff0c;增量时代已过&#xff0c;行业进入存量时代&#xff0c;用户逐渐向头部企业集中。被挤到墙角的手机厂商&#xff0c;…

神仙打架!鲁大师发布2021半年报,黑鲨游戏手机4 Pro夺冠!

随着鲁大师2021年半年报发布&#xff0c;黑鲨游戏手机4 Pro的性能也被大家清晰的了解到。在本次鲁大师2021年半年报中&#xff0c;黑鲨游戏手机4 Pro夺得了手机综合性能榜的冠军宝座&#xff0c;成为名副其实的性能之王&#xff01; 黑鲨游戏手机4 Pro作为主打游戏性能的旗舰机…

【数据结构与算法】稀疏数组

文章目录 一&#xff1a;为什么会使用稀疏数组1.1 先看一个实际的需求1.2 基本介绍1.2.1 稀疏数组的处理方法1.2.2 数组的举例说明1.2.3 应用实例1.2.4 整体思路分析二维数组转稀疏数组的思路稀疏数组转原始的二维数组的思路 二&#xff1a;代码实现2.1 创建一个原始的11*11二维…

一文盘点 Zebec 生态的几个利好预期

Zebec Protocol 是目前商业进展最快的流支付体系&#xff0c;也是推动流支付向 Web2 世界发展的主要生态。目前&#xff0c;其已经与包括 Visa、Master 等支付巨头展开了合作&#xff0c;以推出银行卡的方式进一步向金融发达地区推出 Zebec Card 以拓展业务&#xff0c;前不久其…

人大金仓三大兼容:Oracle迁移无忧

企业级应用早期的架构模式是C/S&#xff08;Client/Server&#xff09;模式&#xff0c;Client做人机交互逻辑的呈现&#xff0c;Sever做业务计算逻辑的实现。这就类似餐馆的运作模式&#xff0c;Client是前台的服务员提供点菜和上菜服务&#xff0c;而Server则是后厨完成菜品的…

windows7专业版_windows7专业版和旗舰版的区别

&#xff37;indows7专业版和旗舰版有什么区别&#xff0c;二者有什么不同&#xff0c;相信有很多小伙伴还是不太了解的&#xff0c;下面就来为大家解答一下&#xff37;indows7专业版和旗舰版的区别&#xff1a; &#xff37;indows7专业版和旗舰版的区别 1、Windows7专业版&a…

【学习日记】【FreeRTOS】手动任务切换详解

前言 本文是关于 FreeRTOS 中实现两个任务轮流切换并执行的代码详解。目前不支持优先级&#xff0c;仅实现两个任务轮流切换。 一、任务的自传 任务从生到死的过程究竟是怎么样的呢&#xff1f;&#xff08;其实也没死&#xff09;&#xff0c;这个问题一直困扰着我&#xf…

服务器系统2012r2升级专业版,Windows Server 2012 R2版本区别

慕工程0101907 Windows Server 2012 R2是最新的服务器版本Windows&#xff0c;于2013年10月18日发布。这是Windows 8.1的服务器版本&#xff0c;在2013年6月3日的TechEd北美公布。Windows Server 2012&#xff0c;Datacenter和Standard版功能相同&#xff0c;变化只有授权&…

win7家庭版和旗舰版区别_Win7 ultimate是什么版本?ultimate是什么意思功能区别介绍!...

Win7 ultimate是什么版本&#xff1f;ultimate是什么意思功能区别介绍&#xff01; 对于Win7系统很多朋友都会觉的是一款很好用的操作系统&#xff0c;Win7系统的版本有很多种&#xff0c;那么Win7 ultimate是什么版本&#xff1f;win7这么多版本又有什么区别呢&#xff1f; Wi…

金蝶KIS旗舰版和K3wise的区别

金蝶KIS旗舰版就是金蝶K/3rise&#xff0c;也就是以前经常说的K3成长版 金蝶ERP系统&#xff0c;为金蝶集团专为中小企业设置的个性化ERP系统&#xff0c;现主要分为两个版本&#xff1a;K/3 WISE版本&#xff0c;KIS旗舰版&#xff08;前身金蝶K3rise&#xff09;&#xff0c;…

10 ping不通widwos7 windwos_w7专业版和旗舰版的区别讲解

微软发布的windows7系统有非常多的版本&#xff0c;网友们知道w7专业版和旗舰版的区别在哪里吗?相信有非常多的网友都被w7专业版和旗舰版的区别这个问题给难倒了。不过不用担心&#xff0c;windows7之家小编已经把w7专业版和旗舰版的区别讲解给网友们准备好了。 相关文章推荐&…

win7家庭版和旗舰版区别_Windows系统的家庭版、专业版、旗舰版,都有什么区别?...

现在主流电脑系统的是Win7和Win10,但是对于这两个系统的本身,也有版本的区别,也就是我们听说的家庭版、专业版、旗舰版等。 对于Win7系统来说,它一共有6个版本,分别为:初级版、家庭普通版、家庭高级版、专业版、企业版、旗舰版,它们的功能也是越来越强大。 今天我们就来…