SpringBoot基础知识

简介: SpringBoot基础知识

原文链接

1 SpringBoot分层

1.1 Controller

控制业务层Service的,它的作用主要是架起了外界与业务层沟通的桥梁,移动端,前端在调用接口访问相关业务时,都会通过Controller,由Controller去调相关的业务层代码并把数据返回给移动端和前端。

api接口可以直接写在这一层。

1.2 Service

业务层,所有的内部的业务逻辑都会放在这里处理,比如用户的增删改查,或者发送个验证码或邮件,或者做⼀个抽奖活动等,都会在Service中进行。

1.3 dao

数据持久化层,就是和数据库打交道的,而实现持久化层的框架有很多,而常用的有两种:JPA和MyBatis,JPA是SpringBoot官方的,前身就是著名的三大框架之一的Hibernate,好处是不用手写SQL。MyBatis则在国内比较流行,原因是它的灵活性非常高,但是需要手写SQL语句。

2 POM文件

2.1 parent

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.2.6.RELEASE</version>
</parent>
  • spring-boot-starter是一个场景启动器。springboot将所有的功能场景抽取出来,做成一个个的启动器starter,只需要在项目里引入这些starter,相关场景的所有依赖都会导入进来,要用什么功能就导入什么启动器

这个parent为我们管理依赖的版本,是springboot的版本仲裁中心,以后我们导入的依赖中不需要写版本。

2.2 starter-web

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

spring-boot-starter-web是一个场景启动器,启动的是springboot的web场景,同上Ctrl+鼠标左键,可以看到启动web场景需要的依赖有:spring-boot-starter、spring-boot-starter-json、spring-boot-starter-tomcat等。

2.3 starter-test

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
    <exclusions>
        <exclusion>
            <groupId>org.junit.vintage</groupId>
            <artifactId>junit-vintage-engine</artifactId>
        </exclusion>
    </exclusions>
</dependency>

测试场景的启动器

2.4 maven-plugin

maven的插件,配置插件的依赖以后可以进行打jar包等操作

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

2.5 hutool

在 pom 文件内添加 hutool 依赖:

<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.0.6</version>
</dependency>

2.6 log

<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.17</version>
</dependency>

2.7 lang

<dependency>
    <groupId>commons-lang</groupId>
    <artifactId>commons-lang</artifactId>
    <version>2.6</version>
</dependency>

2.8 lang3

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.3.2</version>
</dependency> 

3 注解

3.1 @controller 控制器

注入服务

用于标注控制层,相当于struts中的action层

3.2 @service 服务

注入dao

用于标注服务层,主要用来进行业务的逻辑处理

3.3 @repository

实现dao访问

用于标注数据访问层,也可以说用于标注数据访问组件,即DAO组件.

3.4 @component

把普通pojo实例化到spring容器中,相当于配置文件中的

泛指各种组件,就是说当我们的类不属于各种归类的时候(不属于@Controller、@Services等的时候),我们就可以使用@Component来标注这个类。

3.5 @Autowired

与component 相互配合,实现调用。

 
 

学习更多编程知识,请关注我的公众号:

代码的路

相关文章
|
druid Java 关系型数据库
SpringBoot基础知识入门详细介绍&基于SpringBoot的SSMP整合案例(2)
(一)快速上手SpringBoot SpringBoot入门程序开发 SpringBoot是由pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程。
|
XML Java 应用服务中间件
SpringBoot基础知识入门详细介绍&基于SpringBoot的SSMP整合案例(1)
(一)快速上手SpringBoot SpringBoot入门程序开发 SpringBoot是由pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程。
|
XML JSON Java
SpringBoot 基础知识汇总 (史上最全)
SpringBoot常用注解,起步依赖starter,配置文件格式,yml优先级,SpringBoot打包运行,starter和parent的区别,Restful接口请求风格。
259 0
SpringBoot 基础知识汇总 (史上最全)
|
监控 Cloud Native Java
【SpringBoot 2】(一)基础知识了解学习
【SpringBoot 2】(一)基础知识了解学习
149 0
|
XML SQL JSON
SpringBoot框架基础知识(2)
SpringBoot框架基础知识
208 0
|
前端开发 JavaScript Java
SpringBoot框架基础知识(1)
SpringBoot框架基础知识
156 0
|
22天前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,包括版本兼容性、安全性、性能调优等方面。
113 1
|
6天前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。首先,创建并配置 Spring Boot 项目,实现后端 API;然后,使用 Ant Design Pro Vue 创建前端项目,配置动态路由和菜单。通过具体案例,展示了如何快速搭建高效、易维护的项目框架。
84 62
|
4天前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,帮助开发者提高开发效率和应用的可维护性。
14 2
|
6天前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。