最近在研究开源框架的源码,打算改写开源框架,适用于自身的业务场景。于是找到了一个框架(spiderFlow)。

根据他的git上的教程,搭建了一个。

controller层,在我们写代码的时候,一般为接口层,与前端,也就是页面,进行亲密接触的那一层。

那他是怎么亲密的?使用google浏览器,按f12,点击network。

然后点击页面的按钮,就会发送http请求。比如我点击测试连接。

他就从测试连接,执行了这个test请求,这个请求实际是走的右边那个接口(接口就是亲密接触,和界面交互的地方),接口就是后端(服务器端)服务的一部分。

然后在controller类就能找到了,这个就是点击后,进来的后端方法

看方法里面,连接数据库的这些东西都被写的很简单,也不含操作数据库的sql语句。

尽是些return,返回给前端收到的标识。那controller层就是给前端提供标识?

没错,就是一些简单的判断,然后在不同的情况,返回给前端不同的内容,当然也可以不反回,不过一般都是要返回的,否则前端不知道,服务端,到底有没有执行这个接口该做的事情。

复杂的情况,统统封装起来,controller只显示业务逻辑,具体对代码的实现,隐藏在service层。

这样业务分离,逻辑看起来就很清晰,如果以后遇到什么问题,可以很快的定位到错误的位置,并且对于以后升级的需求也很方便修改。

总结:controller层,与前端(界面-客户端)交互。返回给客户端标识。不写复杂代码,只判断逻辑,根据判断(if语句类的),返回不同的结果。具体的代码实现细节,隐藏在service层,通过一行或多行(尽可能少量的代码调用)。

java中controller层是干嘛的?相关推荐

  1. Java中Controller层和Service层具体怎么区分

    涉及请求.参数.序列化之类的逻辑可以放在controller. 而具体到数据的操作逻辑,也就是增删改查的操作都应该完整封装到service中. 一方面是对于事务的要求,比如一个请求过来,后台需要多步增 ...

  2. Java中dao层、service层、controller层、entity层和view层的概述

    目录 DAO层:(持久层)主要与数据库进行交互 Service层:(业务层 )控制业务 Controler层:(控制层 )控制业务逻辑 Entity层: (实体层 )数据库在项目中的类 View层: ...

  3. Java中 Controller、Service 、Dao/Mapper层的区别

    1.Service层:业务层-->控制业务 业务模块的逻辑功能设计,和DAO层一样都是先设计接口,再创建要实现的类,然后在配置文件中进行配置其实现的关联.接下来就可以在service层调用接口进 ...

  4. [转]JAVA中Action层, Service层 ,modle层 和 Dao层的功能区分

    首先这是现在最基本的分层方式,结合了SSH架构.modle层就是对应的数据库表的实体类.Dao层是使用了Hibernate连接数据库.操作数据库(增删改查).Service层:引用对应的Dao数据库操 ...

  5. java中mapper层作用_Java的MyBatis框架中Mapper映射配置的使用及原理解析

    Mapper的内置方法model层就是实体类,对应数据库的表.controller层是Servlet,主要是负责业务模块流程的控制,调用service接口的方法,在struts2就是Action.Se ...

  6. JAVA中Action层, Service层 ,model层 和 Dao层的功能区分

    首先这是现在最基本的分层方式,结合了SSH架构.model层就是对应的数据库表的实体类.Dao层是使用了Hibernate连接数据库.操作数据库(增删改查).Service层:引用对应的Dao数据库操 ...

  7. springboot中controller层代码优雅写法

    在基于spring框架的项目开发中,必然会遇到controller层,它可以很方便的对外提供数据接口服务,也是非常关键的出口,所以非常有必要进行规范统一,使其既简洁又优雅. controller层的职 ...

  8. Spring中Controller层、Filter层、Interceptor层全局统一异常处理

    Controller层.Filter层.Interceptor层全局统一异常处理 SpringBoot为异常处理提供了很多优秀的方法,但是像我这种新手在处理异常时还是会觉得一头包,终于我痛定思痛,总结 ...

  9. SpringBoot项目中Controller层代码编写规范整理

    文章目录 Controller层代码规范 SpringMVC接口定义要注意以下常见的几种问题 1. 返回格式不统一 2. 没有考虑失败情况 3. 出现和业务无关的输入参数 Controller层代码规 ...

最新文章

  1. CentOS7 下面安装Mysql MMM
  2. 三个Javascript内容切换效果类
  3. sqlmap 相关参数
  4. 不能安装_钢厂为什么不能随意更换一氧化碳报警器安装位置
  5. React基础学习(第三天)
  6. sizeof string
  7. Linux 命令之 pwconv -- 开启用户的投影密码
  8. 通过java理解linux,Java继承的理解
  9. Android 平台架构
  10. 物流×科技,易流如何用IoT技术加速物流业数字化升级?...
  11. springboot租房管理系统答辩PPT模板
  12. Git下载、安装及环境配置(超详细)
  13. 前端练习:day02
  14. 【opencv4.3.0教程】05之基础结构2之矩形结构Rect_详解
  15. 基于 Stable Diffusion 一键 AI 作画:什么“小镇做题家”?人人都是艺术家
  16. 荣耀体质称显示网络服务器不可用,华为体脂秤如何重置
  17. python——自动化测试——API接口测试
  18. 【渝粤题库】广东开放大学Photoshop图像设计 形成性考核
  19. ConfigurationChanged流程梳理(屏幕旋转、语言及字体切换)
  20. discuz 获取所有版块并按父子层级排版

热门文章

  1. win10系统遇到深色背景自动降低亮度解决方法、WIN10自动调节亮度、如何关闭WIN10自动调节亮度
  2. Ubuntu(linux) 7z压缩和解压缩命令
  3. 汉诺塔python创新设计大赛_机械创新设计大赛官网
  4. pdf文件如何在安卓手机端不用下载在线预览
  5. docker查看内部tcp长连接
  6. 第 12 章 武装飞船
  7. 论文摘要怎么写——分享5个较好的摘要
  8. 华为服务器bios中修改磁盘格式,华为服务器设置bios
  9. 树莓派开机自启动opencv程序脚本及报错分析及拓展
  10. 基于DES和RSA算法自动分配密钥的加密聊天程序