Java SpringBoot+vue+实战项目详解

目录
  • 1.《锋迷商城》业务流程设计-接⼝规范
    • 1.1 前后端分离与单体架构流程实现的区别
      • 1.1.1单体架构
      • 1.1.2 前后端分离架构
    • 1.2 接口介绍
      • 1.2.1接口概念
      • 1.2.2接口规范
    • 1.3 Swagger
      • 1.3.1作用
      • 1.3.2 Swagger整合
      • 1.3.3 Swagger注解说明
      • 1.3.4 Swagger-ui 插件
    • 1.4 RESTful
  • 总结

1.《锋迷商城》业务流程设计-接⼝规范

在企业项⽬开发中,当完成项⽬的需求分析、功能分析、数据库分析与设计之后,
项⽬组就会按照项⽬中的功能进⾏开发任务的分配

1.1 前后端分离与单体架构流程实现的区别

单体架构:⻚⾯和控制之间可以进⾏跳转,同步请求控制器,流程控制由控制器来完成
前后端分离架构:前端和后端分离开发和部署,前端只能通过异步向后端发送请求,
后端只负责接收请求及参数、处理请求、返回处理结果,但是后端并不负责流程控制,
流程控制是由前端完成

1.1.1单体架构

1.1.2 前后端分离架构

1.2 接口介绍

1.2.1接口概念

狭义的理解:就是控制器中可以接受⽤户请求的某个⽅法
应⽤程序编程接⼝,简称API,就是软件系统不同组成部分衔接的约定

1.2.2接口规范

参考:《锋迷商城》后端接⼝说明

1.3 Swagger

前后端分离开发,后端需要编写接⼝说明⽂档,会耗费⽐较多的时间
swagger是⼀个⽤于⽣成服务器接⼝的规范性⽂档、并且能够对接⼝进⾏测试的⼯具

1.3.1作用

⽣成接⼝说明⽂档对接⼝进⾏测试

1.3.2 Swagger整合

在api⼦⼯程添加依赖(Swagger2 \ Swagger UI)

<dependency>
 	 <groupId>io.springfox</groupId>
	 <artifactId>springfox-swagger2</artifactId>
	 <version>2.9.2</version>
</dependency>
<dependency>
	 <groupId>io.springfox</groupId>
	 <artifactId>springfox-swagger-ui</artifactId>
	 <version>2.9.2</version>
</dependency>

在api⼦⼯程创建swagger的配置(Java配置⽅式)

@Configuration
@EnableSwagger2
public class SwaggerConfig {
 	/*swagger会帮助我们⽣成接⼝⽂档
	 * 1:配置⽣成的⽂档信息
	 * 2: 配置⽣成规则*/
	 /*Docket封装接⼝⽂档信息*/
	 @Bean
	 public Docket getDocket(){
	 //创建封⾯信息对象
		 ApiInfoBuilder apiInfoBuilder = new ApiInfoBuilder();
 		 apiInfoBuilder.title("《锋迷商城》后端接⼝说明")
 			  		   .description("此⽂档详细说明了锋迷商城项⽬后端接⼝规范....")
					   .version("v 2.0.1")
 					   .contact( new Contact("亮哥","www.liangge.com","liangge@wang.com") );
		 ApiInfo apiInfo = apiInfoBuilder.build();
 		 Docket docket = new Docket(DocumentationType.SWAGGER_2)
						 .apiInfo(apiInfo) //指定⽣成的⽂档中的封⾯信息:⽂档标题、版本、作者
						 .select()
						 .apis(RequestHandlerSelectors.basePackage("com.qfedu.fmmall.controller"))
						 .paths(PathSelectors.any())
						 .build();
		 return docket;
	 }
}

测试:
启动SpringBoot应⽤,访问:http://localhost:8080/swagger-ui.html

1.3.3 Swagger注解说明

1.swagger提供了⼀套注解,可以对每个接⼝进⾏详细说明

2.@Api 类注解,在控制器类添加此注解,可以对控制器类进⾏功能说明

@Api(value = "提供商品添加、修改、删除及查询的相关接⼝",tags = "商品管理")

3.@ApiOperation ⽅法注解:说明接⼝⽅法的作⽤

4.@ApiImplicitParams 和 @ApiImplicitParam ⽅法注解,说名接⼝⽅法的参数

5.@ApiModel 和 @ApiModelProperty 当接⼝参数和返回值为对象类型时,在实体类中添加注解说明

6.@ApiIgnore 接⼝⽅法注解,添加此注解的⽅法将不会⽣成到接⼝⽂档中

1.3.4 Swagger-ui 插件

导入插件依赖

<dependency>
 	<groupId>com.github.xiaoymin</groupId>
 	<artifactId>swagger-bootstrap-ui</artifactId>
	<version>1.9.6</version>
</dependency>

1.4 RESTful

1.前后端分离开发的项⽬中,前后端之间是接⼝进⾏请求和响应,后端向前端提供请求时就要对外暴露⼀个URL;URL的设计不能是随意的,需要遵从⼀定的设计规范——RESTful

RESTful 是⼀种Web api的标准,也就是⼀种url设计⻛格/规范
每个URL请求路径代表服务器上的唯⼀资源
传统的URL设计:
	 http://localhost:8080/goods/delete?goodsId=1 商品1
	 http://localhost:8080/goods/delete?goodsId=2 商品2
RESTful设计:
	 http://localhost:8080/goods/delete/1 商品1
 	 http://localhost:8080/goods/delete/2 商品2
 @RequestMapping("/delete/{gid}")
 public ResultVO deleteGoods(@PathVariable("gid") int goodsId){
	 System.out.println("-----"+goodsId);
 	 return new ResultVO(10000,"delete success",null);
}

2.使⽤不同的请求⽅式表示不同的操作

SpringMVC对RESTful⻛格提供了很好的⽀持,在我们定义⼀个接⼝的URL时,可以通
过@RequestMapping(value="/{id}",method=RequestMethod.GET) 形式指定请求
⽅式,也可使⽤特定请求⽅式的注解设定URL
@PostMapping("/add")
@DeleteMapping("/{id}")
@PutMapping("/{id}")
@GetMapping("/{id}")
post 添加.  get 查询.  put 修改. delete 删除. option (预检).

3.接⼝响应的资源的表现形式采⽤JSON(或者XML)

4.在控制类或者每个接⼝⽅法添加 @ResponseBody 注解将返回的对象格式为json

5.或者直接在控制器类使⽤ @RestController 注解声明控制器

6.前端(Android\ios\pc)通过⽆状态的HTTP协议与后端接⼝进⾏交互

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • Java Springboot websocket使用案例详解

    什么是WebSocket WebSocket是一种在单个TCP连接上进行全双工通信的协议 - 为什么要实现握手监控管理 如果说,连接随意创建,不管的话,会存在错误,broken pipe 表面看单纯报错,并没什么功能缺陷等,但实际,请求数增加,容易导致系统奔溃.这边画重点. 出现原因有很多种,目前我这边出现的原因,是因为客户端已关闭连接,服务端还持续推送导致. 如何使用 下面将使用springboot集成的webSocket 导入Maven 首先SpringBoot版本 <parent> &l

  • Java SpringBoot开发小技巧详解

    目录 一.SpringBoot开发小技巧 1.1 Lombok 1.2 dev-tools 1.3 Spring Initializr 总结 一.SpringBoot开发小技巧 1.1 Lombok 作用:在程序编译的时候,自动帮我们生成setter和getter方法以及我们的toString方法和我们的全参和无参构造器等等. 那么,怎么用呢?很简单,用下边这四个注解就行了: 1.@Data:自动生成setter和getter方法. 2.@ToString:自动生成toString方法. 3.@

  • Java Springboot的目的你知道吗

    目录 Spring-boot目的 Spring如何简化开发 第一个spring-boot程序 总结 Spring-boot目的 Spring是为了解决企业应用开发的复杂性而创建的,简化开发 Spring如何简化开发 1.基于POJO的轻量级和最小侵入性编程 2.通过IOC,依赖注入(DI)和面向接口实现松耦合 3.基于(AOP)和惯例进行声明式编程 4.基于切面和模板减少样式代码 微服务 第一个spring-boot程序 官方提供了一个快速生成的网站!idea集成了这个网站 1可以在官网下载后,

  • 四种引用类型在JAVA Springboot中的使用详解

    目录 概念介绍 01.  强引用 02.  软引用 03.  弱引用 04.  虚引用 对象可达性 Springboot源码中的使用 总结 概念介绍 不同的引用类型,主要体现的是对象不同的可达性(reachable)状态和对垃圾收集的影响. 01.  强引用 这个就是我们创建的普通对象了~ 当该对象被显示地赋值为 null 时,或者没有被其他存活的对象继续引用时,它就会成为垃圾收集器的目标,等待被收回 02.  软引用 软引用( SoftReference ) , 当内存不足 时会被回收 比如

  • Java SpringBoot快速集成SpringBootAdmin管控台监控服务详解

    目录 1.初识SpringBootAdmin 2.搭建服务端--POM文件中添加相关依赖 3.修改服务端application启动类 4.配置security安全信息 5.启动server服务端 6.搭建client客户端 总结 SpringBootAdmin是一个针对 Spring Boot 的 Actuator 接口进行 UI 美化封装的监控工具,它可以在列表中浏览所有被监控 spring-boot 项目的基本信息.详细的 Health 信息.内存信息.JVM 信息.垃圾回收信息.各种配置信

  • Java SpringBoot+vue+实战项目详解

    目录 1.<锋迷商城>业务流程设计-接⼝规范 1.1 前后端分离与单体架构流程实现的区别 1.1.1单体架构 1.1.2 前后端分离架构 1.2 接口介绍 1.2.1接口概念 1.2.2接口规范 1.3 Swagger 1.3.1作用 1.3.2 Swagger整合 1.3.3 Swagger注解说明 1.3.4 Swagger-ui 插件 1.4 RESTful 总结 1.<锋迷商城>业务流程设计-接⼝规范 在企业项⽬开发中,当完成项⽬的需求分析.功能分析.数据库分析与设计之后,

  • Java SpringBoot自动装配原理详解及源码注释

    目录 一.pom.xml文件 1.父依赖 2.启动器: 二.主程序: 剖析源码注解: 三.结论: 一.pom.xml文件 1.父依赖 主要是依赖一个父项目,管理项目的资源过滤以及插件! 资源过滤已经配置好了,无需再自己配置 在pom.xml中有个父依赖:spring-boot-dependencies是SpringBoot的版本控制中心! 因为有这些版本仓库,我们在写或者引入一些springboot依赖的时候,不需要指定版本! 2.启动器: 启动器也就是Springboot的启动场景; 比如sp

  • Java SpringBoot Validation用法案例详解

    目录 constraints分类 对象集成constraints示例 SpringBoot集成自动验证 集成maven依赖 验证RequestBody.Form对象参数 验证简单参数 验证指定分组 全局controller验证异常处理 自定义constraints @DateFormat @PhoneNo 使用自定义constraint注解 问题 提到输入参数的基本验证(非空.长度.大小.格式-),在以前我们还是通过手写代码,各种if.else.StringUtils.isEmpty.Colle

  • 基于java Springboot实现教务管理系统详解

    目录 视频演示 研究背景 我国教务现状与反思 主要技术和环境: 功能截图: 总结: 视频演示 研究背景 在当今信息社会发展中中,计算机科学的飞速发展,大多数学校开始注意办公效率的发展是很关键,对学校的管理起到举足轻重的作用.基于 Internet 网络的信息服务,快速成长为现代学校中一项不可或缺的内容措施.很多校园都已经不满意商务办公管理的缓慢成长方式.学院的需求是一个功能强大的,能提供完善管理,管理信息系统的速度.社会持续向前发展,尤其是大多地方普及计算机,计算机应用已经开始向大容量的数据存储

  • Java SpringBoot核心源码详解

    目录 SpringBoot源码主线分析 1.SpringBoot启动的入口 2.run方法 3.SpringApplication构造器 4.run方法 总结 SpringBoot源码主线分析 我们要分析一个框架的源码不可能通过一篇文章就搞定的,本文我们就来分析下SpringBoot源码中的主线流程.先掌握SpringBoot项目启动的核心操作,然后我们再深入每一个具体的实现细节,注:本系列源码都以SpringBoot2.2.5.RELEASE版本来讲解 1.SpringBoot启动的入口 当我

  • Java SpringBoot容器注入对象详解

    目录 1.注入的方式 方式一:使用Import注解 方式二:使用@Service 或者@Component等注解注入到容器中 方式三:使用@Configuration和@Bean组合实现 2.注入是增加条件判断注解 3.构造方法时带参数注入 方式1:使用spring xml实现 方式2:使用@Autowired 方式3使用@Configuration和@Bean组合 4.对象注入时的一些总结 总结 1.注入的方式 方式一:使用Import注解 增加一个类HelloCompent package

  • Java Springboot自动装配原理详解

    目录 Debug路线图 让我们从run说起 归属 小结 run 再说说注解 总结 Debug路线图 说多都是泪,大家看图. 让我们从run说起 用了这么多年的的Springboot,这个 run() 方法到底做了些什么事呢? @SpringBootApplication public class SpringbootDemoApplication { public static void main(String[] args) { SpringApplication.run(Springboot

随机推荐