- 博客(31)
- 收藏
- 关注
原创 SpringSecurity登录
UserDetailsService : 是SpringSecurity提供用来获取认证用户信息(用户名,密码,用户的权限列表)的接口,我们可以实现该接口,复写loadUserByUsername(username)方法加载我们数据库中的用户信息UserDetails是SpringSecurity用来封装用户认证信息,权限信息的对象,我们使用它 的实现类User封装用户信息 并返回,我们这里从数据库查询用户名基于入门案例进行修改。
2023-08-22 11:42:09
249
原创 错误集合(一)Failed to configure a DataSource
基于SpringBoot的微服务项目,采用父子项目结构在向nacos拉取配置时出现。
2023-08-09 11:56:52
766
1
原创 SpringBoot自动配置原理
SpringBootApplication是一个符合注解有三个子标签:@SpringBootConfiguration:标记SpringBoot的配置类@EnableAutoConfiguration:开启自动配置@ComponentScan:ioc自动扫描。
2023-08-04 00:13:13
118
原创 SpringBoot中读取配置
方式一:使用@Value读取配置单个文件方式二:使用@ConfigurationProperties批量读取配置文件。
2023-08-03 11:41:31
191
原创 Java微服务项目(一)用户注册实现
微服务user用户模块(user:用户表,account:账户表,baseInfo:用户资料表)微服务uaa认证中心模块(login:登录信息表)1.提交请求,参数:手机号,密码,验证码,注册渠道2.校验参数,校验手机号是否注册3.校验短信验证码是否正确,去redis查询,做对比4.通过Feign保存Login1.uaa提供保存login的方法,要把ID返回2.编写api-uua feign模块1.导入feign包 ,sentinel包2.编写feign接口,降级类。
2023-08-02 23:31:46
407
原创 Java前后端分离项目(二)手机验证码实现
1.前端发请求接收短信验证码,为防止程序恶意请求,先做图形验证码校验。参数:手机号,redis中图片验证码key,用户输入的图片验证码的值2.拿出图片验证码,校验图片验证码3.获取上一次的短信验证码发送记录,区分存在存在与否,沿用或者生成新的手机验证码4.保存手机验证码到rediskey:业务键+phonevalue(时间 , 验证码 -> DTO)5.调用短信网关发送6.为方便管理,存储发送记录到数据库获取IP:RequestContextHolder。
2023-08-02 22:57:48
452
原创 Java前后端分离项目(一)图形验证码实现
1.前端生成UUID(key),发起请求2.后端生成图片验证码,存储到redis,使用传入的UUID作为key3.把验证码写入图片,编码Base644.返回base64图片。
2023-08-02 22:43:54
505
原创 MybatisPlus(一)代码生成器
MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
2023-07-31 12:56:34
371
1
原创 Spring整合RocketMQ
这里设置的等级是 3,对应的是 10S,也就是10s之后,消费者就可以收到该消息了。在SpringBoot中发送RocketMQ延迟消息只需要设置一个延迟等级即可。这里的配置是针对2.2.1版本。
2023-07-27 18:33:46
315
1
原创 RocketMQ分布式消息队列
RocketMQ是一个开源的分布式消息队列系统,在消息的传递过程中可以保证高可靠性和高性能。它的核心设计理念是基于可靠性和消息的顺序性。
2023-07-27 15:58:41
227
1
原创 Feign整合Sentinel熔断
OpenFeign与Sentinel组件集成除了引入依赖关系之外,还需要在属性文件中启用Sentinel支持。
2023-07-27 10:39:51
228
1
原创 SpringCloudAlibaba(一)Sentinel
entinel诞生于阿里巴巴,其主要,2018年,Sentinel演变为一个开源项目现如今成为了Spring Cloud Alibaba的一个子项目。,而不是使用线程池,省去了线程切换的性能开销。替代Hystrix本身是个jar包集成的服务端。
2023-07-24 13:24:02
138
原创 Nacos配置管理
公用的配置单独写到application-common-dev.yaml共享配置中。将本地的application.yaml改为bootstrap.yml。将之前application.yaml中的配置复制到配置中心。修改配置,指向服务端配置。
2023-07-24 13:12:42
316
原创 Nacos通信服务
pom.xmlspringcloudalibaba-user-common //公共的user实体,服务调用传输对象springcloudalibaba-order-server-1020 //消费者服务springcloudalibaba-user-server-1010 //提供者服务。
2023-07-24 13:05:09
57
原创 SpringCloudAlibaba(一)Nacos
Nacos不仅是服务发现组件,同时也是一个配置管理组件,也就是说它不仅可以用来取代Eureak作为注册中心, 也可以用来取代Spring Cloud Config 做配置统一管理。
2023-07-24 12:56:42
65
原创 SpringCloud常用组件(四)服务网关SpringCloudGateway
编写一个类实现GatewayFilter, Ordered接口(内置排序器)//开始时间 exchange . getAttributes() . put(COUNT_Start_TIME , System . currentTimeMillis());//执行完成之后 return chain . filter(exchange) . then(Mono . fromRunnable(() -> {
2023-07-23 16:07:36
124
原创 SpringCloud常用组件(三)服务网关-spring cloud zuul (一代网关,不咋用)
Zuul 是netflix开源的一个API Gateway 服务器, 本质上是一个web servlet(filter)应用。Zuul 在云平台上提供动态路由(请求分发),监控,弹性,安全等边缘服务的框架。zuul本身是一个独立的服务,默认集成了Ribbon,zuul通过Ribbon将客户端的请求分发到下游的微服务,所以zuul需要通过Eureka做服务发行,同时zuul也集成了Hystrix。
2023-07-22 17:10:22
56
原创 SpringCloud常用组件(二)Hystrix熔断器
Hystrix是处理依赖隔离的框架,将出现故障的服务通过熔断、降级等手段隔离开来,这样不影响整个系统的主业务,同时也是可以帮我们做服务的治理和监控`。Hystrix是国外知名的视频网站Netflix所开源的非常流行的高可用架构框架。Hystrix能够完美的解决分布式系统架构中打造高可用服务面临的一系列技术难题,如雪崩。
2023-07-22 15:52:23
148
原创 SpringCloud常用组件(一)OpenFeign
Feign是一个声明式的http客户端,使用Feign可以实现声明式REST调用,它的目的就是让Web Service调用更加简单。Feign整合了Ribbon和SpringMvc注解,这让Feign的客户端接口看起来就像一个Controller。
2023-07-22 13:04:24
84
原创 SpringCloud初次使用
springcloud-user-server-1020 //用户服务EurekaClient ,提供者。springcloud-order-server-1030 //订单服务EurekaClient ,消费者。springcloud-eureka-server-1010 //注册中心EurekaServer。springcloud-parent //父项目。pom.xml //父项目的pom。
2023-07-20 16:13:06
54
原创 SpringCloud基本认知
Dubbo最早是有阿里巴巴提供的一个服务治理和服务调用框架,现在已经成为Apache的顶级项目,Dubbo跟SpringCloud最显著的区别是Dubbo的定位只是一个RPC框架,相比SpringCloud来说它缺少很多功能模块,如:网关,链路追踪等,所以往往在使用Dubbo作为微服务开发框架的时候,还需要去配合其他的框架一起使用,如:加入zookeeper作为注册中心。
2023-07-20 15:45:09
38
原创 Sringboot操作ElasticSearch全文搜索引擎
ElasticsearchRestTemplate 操作ES的template模板。ElasticsearchRepository<文档对象,文档对象中id的类型>OrderRepository 用于调用repository内置方法进行CRUD。CRUD,修改的方法和添加是一个,如果有ID再添加就是修改。这里的端口号默认为9200,不更改可以不设置。
2023-07-19 20:14:42
123
1
原创 ElasticSearch全文搜索引擎基本使用
ES是一个分布式的全文搜索引擎;使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的 RESTful API来隐Lucene的复杂性,从而让全文搜索变得简单。Lucene是apache下的一个开源的全文检索引擎工具包(一堆jar包)。
2023-07-19 16:43:07
160
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人