Spring Boot + JWT + Vue 实现前后端分离登录认证
参考 B 站楠哥教你学 Java的30 分钟学会 Spring Boot + JWT + Vue视频 JWT 介绍什么是 JWT?JSON Web Token,通过数字签名的方式,以 JSON 对象为载体,在不同的服务终端之间安全的传输信息。 JWT 有什么用?JWT 最常见的场景就是授权认证,一旦用户登录,后续每个请求都将包含 JWT,系统在每次处理用户请求的之前,都要先进行 JWT 安全校验,通过之后再进行处理。 JWT 的组成JWT 由 3 部分组成,用.拼接 1eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6IlRvbSIsInJvbGUiOiJhZG1pbiIsInN1YiI6ImFkbWluLXRlc3QiLCJleHAiOjE2MjMyMjM2NzUsImp0aSI6ImQ2MTJjZjcxLWI5ZmUtNGMwNy04MzQwLTViOWViZmMyNjExNyJ9.FOS9Y7rYNdc2AOidnSPrgg2XTYePU0yGZ598h2gtabE 这三部分分别是: Header 1234{ ...
什么是前后端分离?
前后端分离就是将⼀个应⽤的前端代码和后端代码分开写,为什么要这样做? 如果不使⽤前后端分离的⽅式,会有哪些问题? 传统的 Java Web 开发中,前端使⽤ JSP 开发,JSP 不是由后端开发者来独⽴完成的。 前端 👉 HTML 静态⻚⾯ ---> 后端 👉 JSP 这种开发⽅式效率极低,可以使⽤前后端分离的⽅式进⾏开发,就可以完美地解决这⼀问题。 前端只需要独⽴编写客户端代码,后端也只需要独⽴编写服务端代码提供数据接⼝即可。 前端通过 Ajax 请求来访问后端的数据接⼝,将 Model 展示到 View 中即可。 前后端开发者只需要提前约定好接⼝⽂档(URL、参数、数据类型...),然后分别独⽴开发即可,前端 可以造假数据进⾏测试,完全不需要依赖于后端,最后完成前后端集成即可,真正实现了前后端应⽤的 解耦合,极⼤地提升了开发效率。 单体 👉 前端应⽤ + 后端应⽤ 前端应⽤:负责数据展示和⽤户交互。 后端应⽤:负责提供数据处理接⼝。 前端 HTML 👉 Ajax 👉 RESTful 后端数据接⼝。 传统的单体应⽤ 前后端分离的结构 前后端分离就是将⼀个单体应 ...
Spring Boot 框架笔记
参考 B 站楠哥教你学 Java的Spring Boot 从入门到实战视频 Spring BootSpring Boot 是一个快速开发框架,可以迅速搭建出一套基于 Spring 框架体系的应用,是 Spring Cloud 的基础。 Spring Boot 开启了各种自动装配,从而简化代码的开发,不需要编写各种配置文件,只需要引入相关依赖就可以迅速搭建一个应用。 特点: 1、不需要 web.xml 2、不需要 springmvc.xml 3、不需要 tomcat,Spring Boot 内嵌了 tomcat 4、不需要配置 JSON 解析,支持 REST 架构 5、个性化配置非常简单 如何使用: 1、创建 Maven 工程,导入相关依赖。 1234567891011121314151617181920<!-- 继承父包 --><parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent&l ...
MyBatis Plus 框架笔记
参考 B 站楠哥教你学 Java的4 小时学会 MyBatis Plus 通俗易懂,从入门到部署上线视频 MyBatis-Plus 官网 MyBatis Plus国产的开源框架,基于 MyBatis 核心功能就是简化 MyBatis 的开发,提高效率。 MyBatis Plus 快速上手Spring Boot(2.3.0) + MyBatis Plus(国产的开源框架,并没有接入到 Spring 官方孵化器中) 1、创建 Maven 工程 2、pom.xml 引入 MyBatis Plus 的依赖 12345<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.3.1.tmp</version></dependency> 3、创建实体类 12345678910package com.southwind.myb ...
SSM框架整合笔记
参考 B 站楠哥教你学 Java的【极简上手】1 小时学会 SSM 框架整合视频 SSM 框架整合Spring + Spring MVC + MyBatis Spring MVC 负责实现 MVC 设计模式,MyBatis 负责数据持久层,Spring 负责管理 Spring MVC 和 MyBatis 相关对象的创建和依赖注入。 创建 Maven 工程,pom.xml 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576<dependencies> <!-- SpringMVC --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifa ...
MyBatis框架笔记
参考 B 站楠哥教你学 Java的4 小时学会 MyBatis视频 ORMapping: Object Relationship Mapping 对象关系映射 对象指⾯向对象 关系指关系型数据库 Java 到 MySQL 的映射,开发者可以以⾯向对象的思想来管理数据库。 如何使⽤ 新建 Maven 工程,pom.xml 12345678910111213141516171819202122232425262728293031<dependencies> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.5</version> </dependency> <dependency> <groupId>mysql</groupId> ...
Spring MVC 模块笔记
参考 B 站楠哥教你学 Java的Spring MVC 从入门到实战视频 Spring MVC 是目前主流的实现 MVC 设计模式的企业级开发框架,Spring 框架的一个子模块,无需整合,开发起来更加便捷。 什么是 MVC 设计模式?将应用程序分为 Controller、Model、View 三层。 Controller 接收客户端请求,调用 Model 生成业务数据,传递给 View。 Spring MVC 就是对这套流程的封装,屏蔽了很多底层代码,开放出接口,让开发者可以更加轻松、便捷地完成基于 MVC 模式的 Web 开发。 核心组件 DispatcherServlet:前置控制器,是整个流程控制的核心,控制其他组件的执行,进行统一调度,降低组件之间的耦合性,相当于总指挥。 Handler:处理器,完成具体的业务逻辑,相当于 Servlet 或 Action。 HandlerMapping:DispatcherServlet 接收到请求之后,通过 HandlerMapping 将不同的请求映射到不同的 Handler。 HandlerInterceptor:处理器拦截器,是 ...
Spring框架笔记
参考 B 站楠哥教你学 Java的Spring 从入门到实战视频 Spring 框架两大核心机制(IoC、AOP) IoC(控制反转,Inverse of Control)/ DI(依赖注入,dependency injection) AOP(面向切面编程,Aspect Oriented Programming) Spring 是一个企业级开发框架,是软件设计层面的框架,优势在于可以将应用程序进行分层,开发者可以自主选择组件。 MVC:Struts2、Spring MVC ORMapping:Hibernate、MyBatis、Spring Data 如何使用 IoC 创建 Maven 工程,pom.xml 添加依赖 123456789101112131415161718192021222324252627<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xm ...