参考视频或文章链接 |
---|
RuoYi-Cloud官方文档 |
《若依框架讲解-微服务版》- bilibili |
《若依框架讲解-微服务版》课件 — 提取码 8888 |
《JWT及鉴权》— 骄傲的演员 — CSDN |
假如我是RuoYi项目的开发者,我应该怎么样从无到有的把这个项目搭建起来?或者说我要先开发什么功能,因为一开始我对这个项目要划分成哪些模块是模糊的,所以先从具体的功能入手,等有了大量的项目阅历,就知道这个项目要如何划分模块,如何进行架构了,先开发最常用的用户登录功能。我不打算完全照抄RuoYi的代码,而是在其基础上做些改动开发自己的功能,但模块甚至命名都会参考RuoYi。
验证码部分是在网关内部直接处理的。
(1) Single Sign On is a feature that widely uses JWT nowadays, because of its small overhead and its ability to be easily used across different domains.
(2) In authentication, when the user successfully logs in using their credentials, a JSON Web Token will be returned. Since tokens are credentials, great care must be taken to prevent security issues. In general, you should not keep tokens longer than required.
(3) Whenever the user wants to access a protected route or resource, the user agent should send the JWT, typically in the Authorization header using the Bearer schema.
1.The application or client requests authorization to the authorization server. This is performed through one of the different authorization flows. For example, a typical OpenID Connect compliant web application will go through the /oauth/authorize endpoint using the authorization code flow.
2.When the authorization is granted, the authorization server returns an access token to the application.
3.The application uses the access token to access a protected resource (like an API).
参考视频或文章链接 |
---|
JWT - offical website |
《JWT及鉴权》— 骄傲的演员 — CSDN |
(1) Base64 allows you to transport binary over protocols or mediums that cannot handle binary data formats and require simple text.
参考视频或文章链接 |
---|
Base64 encoding: What sysadmins need to know — RedHat |
Base64 — Wiki |
我以为,注解@Annoation
最重要的作用是提醒编译器,或者说提醒JVM虚拟机,带上注解@Annoation
的这些类、方法、变量有哪些地方是要重点检查与注意的。
注解名称 | 作用 | 参考文章 |
---|---|---|
@RestController | 结合了@Controller and @ResponseBody两个注解,简化了配置,Every request handling method of the controller class automatically serializes return objects into HttpResponse. | The Spring @Controller and @RestController Annotations |
@Autowired | 若不指定注入类名,根据变量名自动注入 | Guide to Spring @Autowired |
@PostMapping | ||
@RequestBody | ||
@SpringBootApplication | =@Configuration + @EnableAutoConfiguration + @ComponentScan | 18. Using the @SpringBootApplication Annotation |
两个词是一体两面的说法,控制反转,即将对象的控制权交给Spring容器,而以前的传统方式是程序员手工控制。
参考视频或文章链接 |
---|
《控制反转及注入依赖详情「通俗易懂」》 |
一种设计风格,使用HTTP 协议传输数据,并通过URL来标识资源的位置和状态。
(1) Resource identification through URI. In the REST architectural style, data and functionality are considered resources and are accessed using Uniform Resource Identifiers (URIs), typically links on the Web.
(2) Uniform interface. Resources are manipulated using a fixed set of four create, read, update, delete operations: PUT, GET, POST, and DELETE.
参考视频或文章链接 |
---|
What Are RESTful Web Services? —— The Java EE 6 Tutorial |
RESTful Web Services —— GeeksForGeeks |
《图文详解 RESTful》—— CSDN |
《Java技术栈 —— Log4j 2、Logpack、SLF4j日志框架介绍》。
首先,要知道在Maven发明以前,也是可以打jar包的,所以肯定有两种方式,方式一是原生的方式,这里可以直接利用IDEA,更加便利,方式二是使用Maven,开始。
原生方式是采用Build Artifacts
方式建立jar
包(Artifacts
= Art
艺术 + ifacts
事实 = 手工物品),如果不会用Build Artifacts
构建jar
包,请搜索其它文章,这里要说的是,原生方式下,怎么指定字节码版本。
Settings -> Build, Execution, Deployment -> Compiler -> Java Compiler -> Per-module bytecode version -> 指定module的版本
source指.java源码文件是按何种Java版本编写的
target指.class字节码文件是以何种字节码版本生成的,这个很好理解。
<properties>
<maven.compiler.source>6</maven.compiler.source> <!--这里修改后再mvn reload,即影响Project Structure/Modules/Sources-->
<maven.compiler.target>6</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
A包是55.0字节码版本,B包是52.0字节码版本,你想将项目最终编译成52.0,在中国这片土地上,52.0是最常用的了,我想变革的阻力会随着信创产业的推进而降低,老守旧有什么意思?还是说能够带来稳定收益,守旧就可以了,不想着怎么去让架构更优,运行更稳定,更快?听说连JDK都要国产化?
参考视频或文章链接 |
---|
《JDK 版本和字节码版本对应表》 |
IDEA —— Project language level |
有了问题1.1.7
的基础,如果你有完整项目源码,可以重新编译到指定字节码版本,这很简单。
假设你现在有一个依赖的jar
包是字节码50.0
的,并且只有jar
包,没有源码,你想将项目整体重新编译至52.0
,如何操作?抱歉,依赖包完整打好包那刻起就决定了,无法重新再编译至其它字节码版本。
假设你现在有一个依赖的jar
包是字节码52.0
的,并且只有jar
包,没有源码,你想将项目整体重新编译至50.0
,如何操作?抱歉,依赖包完整打好包那刻起就决定了,无法重新再编译至其它字节码版本。
很多时候,由于依赖是嵌套的太深,项目中的maven引用坐标也嵌套的很深,这个时候用IDEA的工具查看,找到maven/Analyze Dependencies即可,根据这里的指示,把maven的引用坐标添加到B项目中即可。
如果不知道如何安装和使用Vue搭建项目,请看参考文章[1]。
参考视频或文章链接 |
---|
[1]《前端技术栈 —— Vue框架 —— (一)快速上手》 |