LongZheOVO
码龄4年
关注
提问 私信
  • 博客:60,660
    60,660
    总访问量
  • 103
    原创
  • 408,018
    排名
  • 34
    粉丝
  • 0
    铁粉

个人简介:死Java去nm的

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:四川省
  • 加入CSDN时间: 2020-11-29
博客简介:

weixin_53050118的博客

查看详细资料
个人成就
  • 获得40次点赞
  • 内容获得16次评论
  • 获得121次收藏
  • 代码片获得280次分享
创作历程
  • 10篇
    2023年
  • 75篇
    2022年
  • 18篇
    2021年
成就勋章
TA的专栏
  • Java
    52篇
  • Linux
    7篇
兴趣领域 设置
  • Java
    java
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

通过postgresql的Ltree字段类型实现目录结构的基本操作

注意这里的path!是id拼起来的具有目录层次的!最后插入的数据大概是这样[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-449koFvW-1691660171266)(C:\Users\20745\AppData\Roaming\Typora\typora-user-images\image-20230810172712617.png)]这里我们的id是mybatisPuls提供的UUID,并且我们的path字段采用祖id+爷id+父id+子id的结构。
原创
发布博客 2023.08.17 ·
583 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

基于Aop实现Spring事务管理详解

这样,在addUser方法执行过程中,如果发生异常,事务会自动回滚,确保数据的一致性。Spring通过AOP拦截器实现了对事务方法的拦截和增强,然后根据方法的声明式事务设置,在AOP拦截器中启动或加入事务,最终控制事务的提交或回滚。在Spring中,AOP和事务管理可以同时使用,通过在事务管理中配置AOP拦截器,可以在事务管理的基础上实现更细粒度的控制。这样,在程序运行时,当调用UserService的addUser方法时,Spring AOP会拦截该方法的调用,并在增强逻辑中启动和管理事务。
原创
发布博客 2023.05.12 ·
1571 阅读 ·
2 点赞 ·
2 评论 ·
4 收藏

SpringBoot基于Hibernate Validator的JSR303校验

在controller方法参数中使用 @Validated使校验生效。在模型类的属性的验证注解中增加groups属性:示例。多个接口共用一个模型类:分组校验 定义一些常用组。在接口的@Validated注解中指定是哪个组。在全局异常中对JSR303错误信息解析。在实体类的属性中使用注解设置参数校验。
原创
发布博客 2023.04.19 ·
375 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

springboot全局异常处理学习

【代码】springboot全局异常处理学习。
原创
发布博客 2023.04.17 ·
273 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

redis中的持久化操作AOF与RDB区别

总结:RDB速度上和资源的利用上具有优势,但在安全性上AOF更加稳妥。持久性:是指将数据写入持久存储,例如固态磁盘 (SSD),还有自己的一点小理解(理解有误希望您能纠正)。以上来自redis官网。
原创
发布博客 2023.04.08 ·
339 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

微服务--docker学习

什么是Dockerfile:Dockerfile就是一个文本文件,其中包含一个个的指令(Instruction),用指令来说明要执行什么操作来构建镜像。每一个指令都会形成一层Layer。需求说明:进入nginx容器内部,已经知道nginx的html目录所在位置(/usr/share/nginx/html,需要把这个目录挂载到html这个数据卷上,方便操作其中的内容。创建一个nginx容器,修改容器内的html目录内的index.html内容。镜像是将应用程序及其需要的系统函数库,环境,配置,依赖打包而成。
原创
发布博客 2023.02.22 ·
126 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

微服务--Gateway网关学习

Zuul是基于Servlet的实现,属于阻塞式编程。而SpringCloudGateway则是基于Spring5中提供的WebFlux,属于响应式编程的实现,具备更好的性能。请求路由后,会将当前路由过滤器和DefaultFilter,GlobalFilter,合并到一个过滤器链(集合)中,排序后依次执行每个过滤器。请求进入网关会碰到三类过滤器:当前路由的过滤器,DefaultFilter,GlobalFilter。全局过滤器的作用也是处理一切网关的请求和微服务响应,与GatewayFilter的作用一样。
原创
发布博客 2023.02.09 ·
1195 阅读 ·
0 点赞 ·
0 评论 ·
5 收藏

微服务--Feign学习

Feign的介绍:Feign是一个声明式的http客户端,官方地址:https://github.com/OpenFeign/feign其作用就是帮助我们优雅的实现http请求的发送,解决上面提到的问题。方式二(抽取):将FeignClient抽取为独立模块,并且把接口有关的POJO,默认的Feign配置都放到这个模块中,提供给所有消费者使用。方式一(继承):给消费者的FeignClient和提供者的controller定义统一的父接口作为标准。Feign的性能优化-连接池配置。
原创
发布博客 2023.02.09 ·
392 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

微服务技术--Nacos与Eureka

负载均衡原理:请求会被LoadBalancerInterceptor负载均衡拦截器拦截,会得到请求中的服务名称把它交给RibbonLoadBanlancerClient然后会把服务交给DynamicServerListLoadBalancer去eureka里拉取服务列表得到多个服务的信息,然后找到IRule从服务列表中基于规则做出选择挑一个出来服务,将其返回到RibbonLoadBanlancerClient中然后替换url中userservice得到真实的ip然后发起http请求。
原创
发布博客 2023.01.14 ·
1837 阅读 ·
0 点赞 ·
0 评论 ·
7 收藏

大三寒假人生第一次面试失败

第四题:我当时答的是double(平时没注意,随意答的),后面百度才发现要用decimal数据类型,Decimal是专门为财务相关问题设计的数据类型,它实际上是以字符串的形式存放的,可在定义时划定整数部分以及小数部分的位数。第19题:&&的短路功能,当第一个表达式的值为false的时候,则不再计算第二个表达式;8大基本数据类型:byte,short,int,long,boolean,char,float,double。这是我错误的代码(很蠢)Map中的元素,无序,键不重复,值可重复,可以有一个空键。
原创
发布博客 2023.01.03 ·
7856 阅读 ·
19 点赞 ·
11 评论 ·
30 收藏

maven-repo/org/springframework/cloud/spring-cloud-netflix-eureka-server/4.0.0/spring-cloud-netflix-e

原因:我搭建eureka服务模块中springCloud版本为2022.0.x对应的springboot为3.0,而。所以你需要降低你的boot版本,因此你需要降低你的Cloud版本。在搭建eureka注册中心出现jdk版本不匹配。3.0的boot只支持jdk17及以上。
原创
发布博客 2022.12.22 ·
408 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

微服务技术--认识微服务

注册RestTemplate:在order-service的模块中注册RestTemplate。拆分服务之后产生的问题:在8080端口服务查询订单时并没有将用户信息一起返回。SpringCloud是目前国内使用最广泛的微服务框架。SpringCloud与SpringBoot的版本兼容性关系如下。这样就可以在查询订单消息的同时查询用户信息,解决了微服务远程调用。微服务是一种良好架构设计的分布式架构方案。在查询订单时发送http请求用户信息。
原创
发布博客 2022.12.22 ·
835 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

黑马点评--用户签到

Redis是利用string类型数据结构实现BitMap,因此最大上限512M,转换为bit则是2^32个bit位。BITFIELD:操作(查询,修改,自增)BitMap中bit数组中的指定位置(offset)的值。我们按月来统计用户签到信息,签到记录为1,未签到则记录为0.(布隆过滤器就是采用这种结构)从最后一次签到开始向前统计,直到遇到第一次未签到为止,计算总的签到次数,就是连续签到天数。BITOP:将多个BitMap的结果做位运算(与,或,异或)随后右移1位,下一个bit为就成为最后一个bit为。
原创
发布博客 2022.11.29 ·
963 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

黑马点评--附近商铺

Redis在3.2版本加入了对GEO的支持,允许存储地理坐标消息,帮助我们根据经纬度来检索数据。GEOPADIUS:指定圆心,半径,找到该圆内包含的所有member,并按照与圆心之间的距离排序后返回。GEOSEARCH:在指定范围内搜索member,并按照与指定点之间的距离排序后返回。GEOADD:添加一个地理空间信息,包含:经度(longitude),纬度(latitude),值(member)GEOSEARCHSTORE:与GEOSEARCH功能一致,不过可以把结果存储到一个指定的key。
原创
发布博客 2022.11.29 ·
1076 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

黑马点评--好友关注

本例中的个人页面,是基于关注的好友来做Feed流,因此采用Timeline的模式。需求:利用Redis中恰当的数据结构,实现共同关注功能。为用户持续的提供”沉浸式”的体验,通过无限下拉刷新获取新的信息。**智能排序:**利用智能算法屏蔽掉违规的,用户不感兴趣的内容。Feed流中的数据会不断更新,所以数据的角标也在变化,因此不能采用传统的分页模式。:不做内容筛选,简单的按照内容发布时间排序,常用于好友或关注。需求:在个人主页的“关注”卡片中,查询并展示推送的Blog的信息。分页查询用户博客信息。
原创
发布博客 2022.11.28 ·
1095 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

黑马点评--达人探店

查看探店笔记:点赞功能:需求:实现步骤:给Blog类中添加一个isLike字段,标示是否被当前用户点赞修改点赞功能,利用Redis的set集合判断是否点赞过,未点赞过则点赞数+1,已点赞过则点赞数-1修改根据id查询Blog的业务,判断当前登录用户是否点赞过,赋值isLike字段修改分页查询Blog业务,判断当前登录用户是否点赞过,赋值给isLike字段判断该blog用户是否点赞点赞排行榜需求1:把笔记点赞的人显示出来,比如最早点赞的TOP5,形成点赞排行榜不同集合比较:由于set集
原创
发布博客 2022.11.26 ·
592 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

黑马点评--Redis消息队列

不过要注意的是,当队列中没有消息时RPOP或LPOP操作会返回null,并不像JVM的阻塞队列那样会阻塞并等待消息。修改之前的秒杀下单Lua脚本,在认定有抢购资格后,直接向stream.orders中添加消息,内容包含voucherId,userId,orderId。消息队列(Message Queue),字面意思就是存放消息的队列。Stream是Redis5.0引入的一种新数据结构,可以实现一个功能完善的消息队列。消息队列(Message Queue),字面意思就是存放消息的队列。
原创
发布博客 2022.11.24 ·
682 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

黑马点评--Redis优化秒杀

如果采用异步思路就能:在redis中判断秒杀库存和校验一人一单,在tomcat中读取队列中的信息对数据库进行操作。在redis返回结果,Tomcat判断生成id并返回。思路,在多线程同时秒杀时,由于判断秒杀库存和校验一人一单用时短,而减库存和创建订单时间耗时长。基于Lua脚本,判断秒杀库存,一人一单,决定用户是否抢购成功,开启线程任务,不断从阻塞队列中获取信息,实现异步下单功能。如果抢购成功,将优惠劵id和用户id封装后存入阻塞队列。新增秒杀优惠券的同时,将优惠券保存到Redis中。
原创
发布博客 2022.11.23 ·
539 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

黑马点评--分布式锁

​ 分布式锁:满足分布式系统或集群模式下多进程可见并且互斥的锁。
原创
发布博客 2022.11.20 ·
845 阅读 ·
0 点赞 ·
0 评论 ·
5 收藏

黑马点评--优惠卷秒杀

在VoucherController中提供一个接口,可以添加秒杀优惠券:http://localhost:8081/voucher/seckill。通过加锁可以解决在单机情况下的一人一单安全问题,但是在集群模式下就不行了。现在,用户请求会在这两个节点上负载均衡,再次测试下是否存在线程安全问题。需求:修改秒杀业务,要求同一个优惠券,一个用户只能下一单。2.乐观锁:不加锁,在更新时判读是否有其它线程在修改。CAS法(CompareAndSet)1.悲观锁:添加同步锁,让线程串行执行。
原创
发布博客 2022.11.16 ·
1081 阅读 ·
1 点赞 ·
2 评论 ·
1 收藏
加载更多