自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 网关组件SpringCloud Gateway

微服务网关是一个用于管理和监控微服务的入口,用于转发和路由来自客户端的请求。微服务网关可以将来自客户端的请求转发给后端的多个微服务,同时也可以处理跨域身份验证限流缓存流量控制等一系列与微服务相关的功能,从而简化了微服务架构的服务开发的复杂度。集中管理:微服务很多,接口api也很多,所以通过网关为所有的微服务api接口提供统一管理维护的功能。安全考虑:为了安全考虑,几乎绝大部分微服务都需要认证授权和访问控制,网关可以提前完成这个任务,为微服务提供保障。

2023-10-26 16:59:20 68

原创 Spring Boot Starter自定义配置

启动类的核心注解(EnableAutoConfiguration)。以Enable的注解都在进行配置类导入。Import注解导入一个selector选择器(返回一堆配置类的全路径名称String[])。这些String[] 来自于一个META-INF/spring.factories的文件,通过注解作为key值,读取数据。并不是所有的自动配置类都加载,需要满足条件注解。这些配置类如何导入的?

2023-10-26 16:55:02 61

原创 文件上传。

MultipartFile 是 Spring 框架提供的一个接口,用于处理 HTTP 请求中的文件上传。它表示一个上传的文件,可以通过该接口获取文件的相关信息和内容。通过 MultipartFile 提供的方法获取文件的相关信息,例如文件名、大小、内容等。常用的方法包括:getOriginalFilename():获取上传文件的原始文件名。getSize():获取上传文件的大小,以字节为单位。getBytes():获取上传文件的内容,返回字节数组。

2023-09-11 16:14:08 63

原创 索引的概述

是,能清楚的表示数据之间的关系,并且,是基于磁盘存储的,可以使用相对的数据。是基于K-V结构的在内存中读写数据的数据库(虽然也会自动同步到磁盘),能够明显的提高查询效率(通常设计预期不低于10万QPS),进而还可以保护关系型数据库,并且,通常是使用专门的服务器或集群,也可以作为整个集群中的共享内存资源 关于elasticsearch:用于解决搜索问题的非关系型文档数据库。用于解决搜索问题的非关系型文档数据库。

2023-09-05 19:12:15 47

原创 Nacos

官网文档地址:Naocs缩写就是 Naming Configuration service,本身nacos就是一个service服务,这个服务的功能包括。Nacos 致力于帮助您和。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态及。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。

2023-08-26 13:48:38 53

原创 maven工具

意义:统一多模块mvn命令和顺序的执行。实现:聚合工程packaging类型pom,指向module被聚合工程。本质:pom文件加载的顺序,通过modules关联起来了。

2023-08-19 17:53:27 52

原创 Session、Token

服务器端的应用程序通常是基于HTTP协议的,HTTP协议本身是一种“无状态”协议,所以,它并不能保存客户端的状态,例如,无法识别客户端的身份,所以,即使同一个客户端多次访问同一个服务器,服务器并不能识别出它就是此前来访的客户端!在开发实践中,大多是需要能够识别客户端身份的,通常可以使用Session机制来解决!

2023-08-17 08:50:57 48 1

原创 SpringSecurity认证与授权使用

自定义配置文件的目的是为了不输入帐号密码就可访问一些页面,就需要自定义配置文件去配置一些白名单以及配置一些请求授权。以下安全配置之后,不在白名单的请求都不能访问,除非登录// 开启调试模式,在控制台将显示很多日志,在生产环境中不宜开启@Slf4j@Override// 白名单"/resources/**", // 静态资源文件夹,通常是上传的文件,请与配置文件中的"tea-store.upload.base-dir-name"一致"/account/users/login" // 用户登录。

2023-08-10 17:50:57 207 3

原创 控制层方法统一返回值的设计

的描述文本,这里的message最终是要返回给客户端的,当失败时,回给客户端一句话,告诉客户端哪个地方出错,用户就可以参照失败信息进行调整。想要看一个文章的详情,就响应给客户端这一个文章详情数据。有时候请求列表,有时候请求单个数据,这样就不能确定是哪一个数据类型了,为了保证所有的数据能够相应给客户端,这了的响应数据类型设计为Object类型。,服务器端是不会返回给客户端数据的,比如说客户端想要查看一个文章详情,结果查询失败了,这个数据根本就没有,没法给;客户端查一下用户的详情,他没有权限,是不会给数据的。

2023-07-21 15:08:34 57

原创 关于SLF4j日志框架使用

SLF4j只是一个日志框架的标准,具体的日志相关功能并不是由它实现的,常见的实现了日志相关功能的日志框架有:log4j、logback等,SLF4j提供了这些日志框架向SLF4j标准的转换。下面一段伪代码,表示SLF4j并没有真正实现日志功能,只是一个调用者,真正实现日志功能的是log4j和logback。其实这两个日志的实现的功能是不同的,用到哪一个开发者还要去切换,比较麻烦,因此出现了SLF4j日志框架,就不用来回切换,框架底层已经做好了统一标准。

2023-07-21 14:51:02 99

原创 分页查询实现

代码正常运行的时候,repositoty层的调用者是service层,作为调用者就必须要是别PageInfo,调用者为了调用分页功能的方法,必须要有PageInfo的导包语句,问题就来了,如果未来程序要变动,将不使用PageHelper分页框架,那么service层的调用分页功能的导包语句也就会用不了,这样的话,service层也就依赖了PageHelper框架,不使用PageHelper框架就会导致service层也要改动。:加上此注解,它改变了对象属性的set方法的返回值,返回当前的对象。

2023-07-14 21:35:59 926

原创 Spring Validation验证框架的使用

在实际开发项目中我们需要对客户端传递到服务器的参数进行校验,用于判定请求参数的合法性,假如请求参数不合法,不可以去执行后续的业务。该如何校验?一种方式是我们在控制层方法中每次都自己进行参数有限制判断,不合法可以抛出异常,但是工作量和代码复杂度会比较高。第二种方式即使采取市场上主流的Spring Validation框架去实现校验。

2023-07-12 20:44:09 302

原创 Knife4j框架的使用

Knife4j框架的基本使用

2023-07-10 21:48:07 206

原创 MyBatis Plus的基本使用

不改变实体类,测试运行会报错,MyBatis Plus框架默认将实体类的名字当作数据库表名,倘若实体类名和数据库表名不一致,它就会不认识数据库表名,然后默认修改以实体类名小写的数据库表名,而实际上数据库表里就不存在这张表,因此报错。达梦数据库,虚谷数据库,人大金仓数据库,南大通用 (华库) 数据库,南大通用数据 库,神通数据库,瀚高数据库。会自动生成id值,该值的效果可能不是我们想要的,还是比较倾向于从1开始编号。在数据库表对应的实体类中的id属性上加一个注解。

2023-06-30 21:28:27 188

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除