点击登录,精彩内容等着你

Springboot三层结构常用注解,不必多,够用就行,了解三层的分工角色,让你代码写的很清晰

何方神圣

2023-04-15
带你快速了解常用注解含义,基于spring jpa的从请求到数据库,三层对应的不同的注解,其实就是标识不同层的身份角色,不同的注解干不一样的事情。

前言

初学Springboot的小伙伴应该对MVC三层结构都不陌生,MVC结构就像一家销售产品的公司,有身为市场销售人员:Controller层,与它直接对接的是公司的项目经理与工人Service层,进行与项目经理直接对接的是仓库管理员:Dao层,想了解更多介绍三层结构的小伙伴可以移步到《MVC增强组件》这篇文章。接下来主要介绍各层常用的注解。

一、Controller层

@Controller

@Controller标识的类,该类代表Controller类(Controller层)。
这里Controller层里面的每个方法,都可以去调用@Service标识的类(Service层)。

@ResponseBody

@ResponseBody的作用是将java对象转为json格式的数据,在该类中所有的api接口返回的数据都会以json字符串的形式返回给客户端。

@RestController

@RestController 是@Controller和@ResponseBody 的结合,你也可以立即为@RestController = @Controller + @ResponseBody。

@RequestMapping

@RequestMapping不仅能作用在控制器的方法上,还能作用在控制器类上。

@GetMapping

@GetMapping用来处理请求方法的GET类型。

@PostMapping

@PostMapping用来处理请求方法的POST类型。

二、Service层

@Service

@Service标识的类中的方法可以继续调用@Resposity标识的接口实现类(Dao层)。

@Transactional

@Transactional 是声明式事务管理编程中使用的注解,他的作用,简而言之,正常提交事务,异常回滚事务。

三、Dao层

@Repository

@repository的作用是注解接口。

四、通用注解

@Component

@Component是Spring中的一个注解,它的作用就是实现Bean的注入。在Java的web开发中,提供3个@Component注解衍生注解(功能与@component一样)分别是:

  1. @Controller 控制器(注入服务) 用于标注控制层,相当于struts中的action层;
  2. @Service 服务(注入Dao) 用于标注服务层,主要用来进行业务的逻辑处理;
  3. @Repository(实现Dao访问) 用于标注数据访问层,也可以说用于标注数据访问组件,即DAO组件。

@Override

@override的作用,通俗来说就是告诉编译器,下面的方法是重写父类的方法。

@Autowired

@Autowired的作用是对成员变量、方法和构造函数进行标注,来完成自动装配的工作。简单来说,以三层模型举例,@Autowired就是市场销售人员与项目经理、项目经理与仓库工人之间联系的媒介,即Controller层与Service层、Service层与Dao层之间联系的桥梁。

阅读 3699     最后编辑 2023-04-19 17:53
文章补充
评论(0) 发表新评论
  • ...暂无评论...

我是有底线的 评论与点赞5分钟更新一次
回复评论
取消关闭

请先登录