Springboot中的三个基本架构

 更新时间:2024年07月11日 11:26:05   作者:hxy319  
这篇文章主要介绍了Springboot中的三个基本架构,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

前言

SpringBoot是由Pivotal团队提供的基于Spring的框架,旨在简化Spring应用的初始搭建和开发过程。

该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。

SpringBoot是一个强大且易于使用的框架,它可以帮助开发者快速构建、部署和运行Spring应用程序。

Springboot的三个基本架构

分层思想:

分层的目的是为了将每个业务交给专门的一个层去做处理,这样每个层都只负责自己的业务,最后协作,就不会出现杂乱的情况。

所以,一般都会进行分层,而controller层、service层和mapper层(dao层)Springbootd的三个基本架构。

1、controller层

  • 1.1 定义:

控制层,存放了各种控制器,用于前后端交互,接受前端请求,调用service层,响应service层返回的数据,最后返回给前端。

  • 1.2 常见注解:

@Controller 注解表示这个类是一个控制器。

  • @RequestMapping(“/hello”) 注解在类级别上,表示这个控制器中的所有请求映射都将以/hello为前缀。
  • @GetMapping(“/world”) 注解在方法级别上,表示当收到一个GET请求到/hello/world时,会调用helloWorld()方法。

2、service层

  • 2.1、定义:

服务层,也叫业务层,本身不直接对数据库进行操作,一般用于调用mapper层的接口,实现业务的功能,以此来间接来访问数据库。

  • 2.2、常见注解:

@Service注解表示这个类是一个业务逻辑服务组件。

3、mapper(dao)层

  • 定义:

持久层,相当于一个桥梁,与数据库进行交互,专注于数据库对接,可以让我们的代码更容易维护,同时实现对数据的持久化操作。

Springboot三个基本架构的关系

Controller层,负责具体的业务模块流程的控制,也就是去拦截客户发来的请求。

然后Service层,负责业务模块的逻辑应用设计,调用 mapper 层已定义的接口,去实现 Service 具体的实现类,也就是去和数据库mapper层打交道。

mapper 层负责与数据库进行交互设计,用来处理数据的持久化工作,mapper层的数据源配置,以及有关数据库连接的参数都在 Spring 的配置文件中进行配置。

总结

使用这种分层架构的优点包括明确的职责划分、降低模块之间的耦合度、提高代码的可重用性和可测试性。

每个层级都有其特定的职责和关注点,这使得代码更加清晰、易于理解和维护。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • SpringBoot小程序推送信息的项目实践

    SpringBoot小程序推送信息的项目实践

    本文主要介绍了SpringBoot小程序推送信息的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • SpringBoot项目@Async方法问题解决方案

    SpringBoot项目@Async方法问题解决方案

    这篇文章主要介绍了SpringBoot项目@Async方法问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • 在Spring Boot中如何使用Cookies详析

    在Spring Boot中如何使用Cookies详析

    这篇文章主要给大家介绍了关于在Spring Boot中如何使用Cookies的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用Spring Boot具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-11-11
  • 解决SpringCloud Gateway采用OpenFeign远程调用失败的问题

    解决SpringCloud Gateway采用OpenFeign远程调用失败的问题

    在使用SpringCloud网关进行统一鉴权和认证过程中,通过OpenFeign远程调用鉴权服务器接口时可能会遇到远程调用失败的问题,这通常是因为HttpMessageConverters没有被正确注入到Spring容器中
    2024-09-09
  • 浅析java 归并排序算法

    浅析java 归并排序算法

    这篇文章主要简单介绍了java 归并排序算法的工作原理及代码,需要的朋友可以参考下
    2015-02-02
  • Java面试题篇之Sleep()方法与Wait()方法的区别详解

    Java面试题篇之Sleep()方法与Wait()方法的区别详解

    这篇文章主要给大家介绍了关于Java面试题篇之Sleep()方法与Wait()方法区别的相关资料,wait()是Object类中的方法,而sleep()是Thread类中的静态方法,wait()方法用于多个线程之间的协作和通信,而sleep()方法用于线程的休眠,需要的朋友可以参考下
    2024-07-07
  • 超全面的SpringBoot面试题含答案

    超全面的SpringBoot面试题含答案

    这篇文章主要收录了44道面试中经常被问的SpringBoot问题,不管你是正在求职的新手还是已经工作很久的高手,这篇关于SpringBoot的面试题总结一定会让你有新的理解,让我们一起来看看吧
    2023-03-03
  • java String的intern方法

    java String的intern方法

    本文主要介绍java 中String 的intern方法,这里主要通过实例来说明不同版本的JDK,intern方法的对比,有需要的小伙伴可以参考下
    2016-07-07
  • Spring Cloud Feign实例讲解学习

    Spring Cloud Feign实例讲解学习

    这篇文章主要介绍了Spring Cloud Feign实例讲解学习,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • 解决RedisTemplate调用increment报错问题

    解决RedisTemplate调用increment报错问题

    这篇文章主要介绍了解决RedisTemplate调用increment报错问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11

最新评论