自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 如何写出优雅漂亮代码的45个小技巧

不知道大家有没有经历过维护一个已经离职的人的代码的痛苦,一个方法写老长,还有很多的if else ,根本无法阅读,更不知道代码背后的含义,最重要的是没有人可以问,此时只能心里默默地问候这个留坑的兄弟。。其实造成这些原因的很大一部分原因是由于代码规范的问题,如果写的规范,注释好,其实很多问题也就解决了。所以本文我就从代码的编写规范,格式的优化,设计原则和一些常见的代码优化的技巧等方面总结了了45个小技巧分享给大家,如果不足,欢迎指正。1、规范命名命名是写代码中最频繁的操作,比如类、属性、方法、参数等。

2023-12-31 19:11:02 1279

原创 写给工作6年的程序员的一封信

当我再问你现在在钻哪一块时,回答高并发的有,网络协议的有,开源框架源码的有,算法的也有...但也仅限于有,真正钻研深入进去的凤毛麟角,现在的你有点浮躁哦,其实你得承认,你已经耐不住寂寞啃技术大部头了,你对很多知识也不过是浅尝辄止,给自己营造一个未来还要搞技术的空中楼阁,不过是自己骗自己。架构设计力初现峥嵘;任何一个组织的终极目标一定是赚钱,你的任何技术追求都会受制于这一点,除非你的新技术可以带来更大的利润,否则不要大动干戈,可以把这些新技术小范围落地试水,没有人会刻意打压你的热情,这种无奈你要学会去理解。

2023-12-29 19:03:26 1246

原创 2023我的编程之路

通过明确目标、持续实践、深入研究和广泛交流,我不仅提高了自己的技能和能力,还拓展了自己的视野和网络,为未来的发展和成就打下了坚实的基础。通过参加技术论坛、社区活动和开源项目,我可以分享我的学习经验和成果,同时也可以从他人那里获取宝贵的反馈和建议,不断优化和完善我的学习和工作方法。回顾我的学习过程,我认为编程给予我最大的收获是解决问题的能力。在当下,结合如今的发展趋势,我提供一个当下的思考,技术人未来的核心立足点将来自于跨界的竞争,跨界不仅仅包含行业跨界,也包括职位的跨界,以及更多视野的跨界。

2023-12-29 12:13:55 4201 3

原创 我的创作纪念日

在项目结束后,进行项目总结和回顾,收集和总结项目中的经验和教训。在计划中包括项目的任务和里程碑,分配资源和时间,以及制定项目进度和风险管理策略。与客户或项目团队进行充分的沟通和讨论,确保对项目的理解一致,并且明确项目的范围和期望结果。这包括良好的睡眠、均衡的饮食和定期的运动。总之,通过文章进行技术交流是一种有效的方式,但我们需要注意内容准确性、语言清晰性、可读性和组织结构,以便更好地传达我们想要分享的技术知识。通过充分准备和良好的执行,可以提高项目的成功率,并且能够在实施过程中积累更多的知识和技能。

2024-03-28 20:37:10 1322

原创 女神节快乐:致敬每一位了不起的女性

女性,是生活中的主角,是家庭的支柱,是社会的脊梁。让我们记住,女性的力量是无穷的,女性的智慧是深邃的,女性的爱是伟大的。让我们一起,用行动和声音,为女性的权利和自由而战,为女性的尊严和价值而呼喊。让我们共同努力,创造一个更加平等、公正的世界,让每一位女性都能在自由的空气中展翅高飞,实现自己的价值和梦想。愿你们在岁月的长河中,始终保持那份坚韧和优雅,无论遇到多少挑战和困难,都能以微笑面对,以勇气和智慧克服。愿你们的每一天都充满阳光,愿你们的每一份努力都换来幸福,愿你们的每一个梦想都能实现!

2024-03-08 22:16:01 143

原创 程序员的金三银四求职宝典

随着春天的脚步渐近,对于许多程序员来说,一年中最繁忙、最重要的面试季节也随之而来。金三银四,即三月和四月,被广大程序员视为求职的黄金时期。在这两个月里,各大公司纷纷开放招聘,求职者们则通过一轮又一轮的面试,力争心仪的职位。而如何在这关键的时期脱颖而出,成为每个求职者关注的焦点。在金三银四的关键时期如何准备,快来看看吧~

2024-03-06 10:35:21 912

转载 SpringBoot启动扩展应用:干预优化+加快启动时间

添加自定义的PropertySource,可以通过实现接口来完成。/*** @description 添加自定义的PropertySource。使用environment.getPropertySources().addLast(propertySource)方法,可以添加自定义的属性源,从而实现更灵活的配置。*/@Override// 添加自定义的PropertySource// 自定义PropertySource@Override。

2024-03-03 14:35:37 990

原创 带你吃透 Spring 框架中的事件处理机制

在现代应用程序中,各个组件之间的通信是至关重要的。想象一下,你的应用程序中的各个模块像是一个巨大的交响乐团,每个模块都是一位音乐家,而Spring事件机制就像是指挥家,将所有音乐家协调得天衣无缝。这种松耦合的通信方式使你的应用程序更加灵活、可维护,而且能够轻松应对变化。现在,让我们进入这个令人兴奋的音乐厅,探索Spring事件的世界。在Spring框架中,事件(Events)是一种基本概念,用于实现松耦合的通信方式,允许不同组件之间进行相互通知和协作。

2024-02-20 17:20:35 985

原创 聊聊分库分表

随着互联网技术的发展,数据量呈爆炸性增长。大数据量的业务场景中,数据库成为系统性能瓶颈的一个主要因素。当单个数据库包含了太多数据或过高的访问量时,会出现查询缓慢、响应时间长等问题,严重影响用户体验。为了解决这一问题,分库分表技术应运而生。通过将数据分散到多个数据库或表中,从而有效提升系统的处理能力和稳定性。在实际应用中,可能需要根据实际情况结合多种策略来满足不同的查询需求。同时,随着业务的发展和数据量的增长,可能需要不断调整和优化分库分表策略。如何解决热点数据倾斜问题?

2024-02-20 17:09:30 1431

原创 IDEA 28 个天花板技巧

虽然有点重,但依旧瑕不掩瑜,内置了非常多的功能,大大提高了日常的开发效率,下面汇总了常用的28个使用小技巧,学会之后,让你的撸码效率直接起飞...这其实是本文第13点的上位替代方案,idea自带的快捷键查看代码调用,只是以菜单形式展示,不太直观,如果是自己写的代码或比较规范的代码,那用自带的也就无所谓,如果是比较复杂的源码或不规范的代码,那使用 SequenceDiagram 会直观特别多。idea默认是选择显示单行的,我们把这个去掉,就可以显示多行tab了,在打开tab过多时的场景非常方便!

2024-02-15 17:15:53 956

原创 Spring Boot + Lua = 王炸!

注释在Lua中用于添加说明和注解。单行注释以--开始,多行注释则使用。-- 这是一条单行注释--[[这是一个多行注释可以跨越多行]]变量在Lua中无需显式声明类型。使用local关键字创建局部变量,全局变量直接声明。name = "John" -- 全局变量基本数据类型包括整数、浮点数、字符串、布尔值和nil。表是一种非常灵活的数据结构。条件语句:使用if、else和elseif来实现条件分支。print("未成年")print("成年")elseprint("老年")end。

2024-02-12 14:37:56 696

原创 缓存预热!真香

在上面的例子中,我们使用 Caffeine.newBuilder().refreshAfterWrite(1, TimeUnit.MINUTES) 配置了缓存的自动刷新机制,即每个缓存项在写入后的1分钟内,如果有读请求,Caffeine 会自动触发数据的刷新。在启动过程中预热有一个问题,那就是一旦启动之后,如果需要预热新的数据,或者需要修改数据,就不支持了,那么,在应用的运行过程中,我们也是可以通过定时任务来实现缓存的更新预热的。减少冷启动影响:当系统重启或新启动时,缓存是空的,这被称为冷启动。

2024-02-12 14:31:12 1812

原创 解锁 SpringBoot 强大配置功能

通常,这个注解用于将外部属性文件中的属性值映射到应用程序的配置类中,以便在整个应用程序中方便地访问和使用这些属性。注解将配置属性绑定到 Java POJO 类,并将其注入到 Spring Bean 中,以便在应用程序中使用这些属性的值。通过将配置信息分散在多个属性文件中,您可以将应用程序的配置模块化,使每个模块负责自己的配置。来将属性源中的属性值绑定到 Java Bean,以便在整个应用程序中使用这些属性。主要用于定义属性源,将配置信息存储在不同的属性文件中,并在不同环境或模块之间共享配置。

2024-02-09 16:58:57 1138 1

原创 SpringBoot 动态加载jar包,动态配置

目前数据治理服务中有众多治理任务,当其中任一治理任务有改动需要升级或新增一个治理任务时,都需要将数据治理服务重启,会影响其他治理任务的正常运行。URLClassLoader 是一种特殊的类加载器,可以从指定的 URL 中加载类和资源。它的主要作用是动态加载外部的 JAR 包或者类文件,从而实现动态扩展应用程序的功。为了便于管理动态加载的jar包,自定义类加载器继承URLClassloader。/*** 自定义类加载器**/@Override// 从已加载的类集合中获取指定名称的类。

2024-02-05 20:07:01 1317

原创 Spring赌上未来:响应式 WebFlux 框架更优雅,性能更强!

可见响应式是非阻塞的,意味着调用方法后,CPU可以去做别的事情,当接收到数据响应时CPU再回来处理,这种方式提高了系统的吞吐量。webmvc是一个Servlet应用,实现是阻塞式IO,其维护一个线程池来处理每一个用户请求,也就是当Servlet容器启动时,就会创建比如10个线程出来,因此系统吞吐量的瓶颈在于有限的连接数和阻塞的请求处理过程。评估一个项目是否应该选择webflux的最简单的方式是,依据项目中是否会使用很多的阻塞API,比如JDBC或者一些阻塞式的API就不适用与webflux项目。

2024-02-05 19:47:46 506

原创 解决跨域问题8种方法,含网关、Nginx和SpringBoot~

跨域问题是浏览器为了保护用户的信息安全,实施了同源策略(Same-Origin Policy),即只允许页面请求同源(相同协议、域名和端口)的资源,当 JavaScript 发起的请求跨越了同源策略,即请求的目标与当前页面的域名、端口、协议不一致时,浏览器会阻止请求的发送或接收。

2024-02-04 13:19:51 1869 2

原创 16条关于面试小建议

在介绍项目的时候,一定要注意写重点,不要写一堆无关紧要的东西,并且第一个项目是重中之重一般好的项目介绍应遵循以下几点:项目名称高大上点,项目描述不要太长展示项目中使用到的技术架构强调自己在项目中或者某块功能中的担任的职责强调使用了什么技术,解决了什么问题,达成了什么效果可以的话,写上项目中的数据量...对于上面提到的技术架构,自己解决的问题,使用的方案一定要非常熟悉,了然于胸面试的时候,面试官大概率会基于这些技术方案扣里面的技术实现细节在面试完之后,一般面试官都会给候选人一个提问题的机会。

2024-02-04 13:13:02 884

原创 分库分表 21 条法则,hold 住!

本文介绍了关于分库分表架构的21个通用概念,有一定的了解之后,接下来我们将进入更深度的内容,包括读写分离数据脱敏分布式主键分布式事务配置中心注册中心Proxy服务等实战案例的讲解和源码分析。

2024-02-03 21:03:33 1072

原创 12款idea插件,能让你代码飞起来!

基本上每个程序员都会写代码,但写代码的速度不尽相同。为什么有些人,一天只能写几百行代码?而有些人,一天可以写几千行代码?有没有办法,可以提升开发效率,在相同的时间内,写出更多的代码呢?今天我跟大家一起聊聊在idea中,能提升编码效率的12种插件,希望对大家有所帮助。

2024-02-03 13:41:10 1493

原创 放弃Nacos作为配置中心,转而选择这款神器~

写一个 Controller 类来输出 test 变量的值,使用了 Spring 的 @Value 注解,用于读取配置文件中的变量的值,这里来测试该值,项目启动后读取到的变量的值是设置在 application 配置文件中的默认值,还是远程 Apollo 中的值,如果是 Apollo 中配置的值,那么再测试在 Apollo 配置中心中改变该变量的值后,这里是否会产生变化。随着程序功能的日益复杂,程序的配置日益增多,各种功能的开关、参数的配置、服务器的地址……因此 Apollo 配置中心应运而生。

2024-02-01 20:40:55 1499 8

原创 缓存击穿,商详页进不去了!!!

从上面小猫的案例中,其实就已经很明了了,所谓缓存击穿就是原本由于缓存组件抗住的流量结果全部打到了数据库层,给数据库带来了巨大的压力,甚至严重的情况下直接把数据库干跨。导致缓存失效的原因也是很显然易见的,由于缓存在一个无法预期的一个场景下缓存失效了。在小猫的案例中可以看到是热卖的商品在redis中Key值全部同时失效导致的。当然这是一种常见的技术方案有问题导致的。那么还有一种导致缓存失效的原因就是缓存中间件直接宕机。

2024-02-01 20:04:40 926

原创 深度学习的进展

深度学习是机器学习中的一种基于人工神经网络的机器学习方法,其关键在于通过多层神经网络对输入数据进行逐深度学习是机器学习中的一种基于人工神经网络的机器学习方法,其关键在于通过多层神经网络对输入数据进行逐层抽象和表示学习,从而实现对复杂数据结构和非线性关系的建模。深度学习模型通常包含多个隐藏层,每个隐藏层都有许多神经元。这些神经元通过权重连接,模拟了生物神经元之间的信号传递过程。深度学习的目标是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字、图像和声音等数据的解释有很大的帮助。

2024-01-31 11:40:42 1293

原创 后端必备:高质量SQL的30条建议

本文将结合实例demo,阐述30条有关于优化SQL的建议,多数是实际开发中总结出来的,希望对大家有帮助。

2024-01-27 10:46:27 947

原创 了解Java的IO模型

我们都知道在 Java 当中有许许多多的使用上的问题,比如 Java 的锁,Java 的安全性,以及 Java 的IO操作,Java 中各种设计模式的使用,今天我们就来说说关于这个 Java 的IO。Java IO(输入输出)是Java程序与外部进行数据交互的接口,包括文件读写、标准设备输出等1。Java IO是建立在流的基础上进行输入输出的,所有数据被串行化写入输出流,或者从输入流中读入1。Java IO有字节流和字符流两种形式,其中字节流一次读写一个字节,而字符流一次读写一个字符。Java中的IO模型主

2024-01-27 10:35:28 631

原创 可解释性AI

可解释人工智能(Explainable Artificial Intelligence, XAI)是指智能体以一种可解释、可理解、人机互动的方式,与人工智能系统的使用者、受影响者、决策者、开发者等,达成清晰有效的沟通,以取得人类信任,同时满足监管要求。AI VS. XAI简单而言,可解释性可用于两个阶段:模型之前(pre)和模型之后(post)。算法的透明性和简单性(Algorithmic Transparency and Simplicity)表达的可解构性(Decomposability)

2024-01-26 16:05:09 1728

原创 Spring 的 IOC 和 AOP

前置通知后置通知返回通知异常通知环绕通知Spring 4 和 5 返回顺序的区别,Spring 5 将最终通知真正放到了最后。Spring4版本(1).正常情况1.环绕之前通知2.前置通知Before3.被增强的方法4.环绕之后通知5.After最终通知6.AfterReturning 后置通知(2).异常情况1.环绕之前通知2.前置通知Before3.被增强的方法4.After最终通知5.AfterThrowing 异常通知Spring5版本(1).正常情况。

2024-01-24 22:12:40 852

原创 技术变革下职业危机

技术的普及和应用使得生活更加便利和高效,但也带来了一些挑战,比如技术失业、隐私侵犯和数据安全等问题。3.保持积极的工作态度:无论面临何种困境,都要保持积极的心态和专业的工作态度。6.提升沟通和团队合作能力:在团队工作中,积极参与项目,并与其他团队成员保持良好的交流和合作。7.建立个人品牌:通过博客、社交媒体等渠道,分享自己的技术经验和观点,积累个人影响力和声誉,在裁员潮中能够更容易地引起雇主的注意。总之,面对裁员潮危机,程序员应该不断学习、适应变化、保持积极,并寻找新的机会和发展方向。

2024-01-24 10:56:38 756

原创 MYSQL的20条军规

曾经,我接触过很多项目的数据库的很多字段基本设置为null,就图个方便,有的是为了方便前端传参,但是我觉得这是不规范的如果该字段默认值为Null并且又被设置为索引列那么这一列会需要额外的空间来保存,会占用更多的空间进行比较和计算时还需要对NULL值做特殊的处理。

2024-01-20 11:05:40 1189

原创 Redis 击穿、穿透、雪崩产生原因解决思路

也就是在设定的时间里数据没有取出来,但是锁由过期了,常见的思路是,锁过期时间值递增,但是想想不靠谱,因为第一个请求可能超时,如果后面的也超时呢,接连多次超时之后,锁过期时间值势必特别大了,这样做弊端太多。雪崩,和击穿类似,不同的是击穿是一个热点Key某时刻失效,而雪崩是大量的热点Key在一瞬间失效,网络上很多博客都在强调解决雪崩的策略是随机过期时间,这个非常不准确,举个例子,银行做活动,之前这个利息系数为2%,过了零点系数改为3%,这种情况能将用户的对应的key改为随机过期吗?如果用的过去的数据叫脏数据。

2024-01-18 08:33:55 1616

原创 7种提升SpringBoot吞吐量神技

supplyAsync 用于提供返回值的情况,CompletableFuture 还有一个不需要返回值的异步调用方法 runAsync(Runnable runnable),一般我们在优化 Controller 时,使用这个方法比较多。这两个方法如果在不指定线程池的情况下,都是在 ForkJoinPool.common 线程池中执行,而这个线程池中的所有线程都是 Daemon(守护)线程,所以,当主线程结束时,这些线程无论执行完毕都会退出系统。使用 @ComponentScan()

2024-01-17 14:34:40 371

原创 ChatGPT 和文心一言哪个更好用?

我让员工给我理一份合作合同,2天都没给我结果,需要理条款,定制化的内容,然后找律师过一下,其中的沟通成本很高,找chatGPT后,就是简单聊了会天,这个事就解决了。写好一篇SEO,首先把主题拎出来,让chatGPT为你理个大纲,如果这个大纲不合适,让它修改,改到你满意为止,然后跟随大纲去深入每个点展开,同样得到的答案觉得不合适,需要深入还是修改,还得继续提要求,不管你信不信,训练半个小时的chatGPT,写作能力已经超过我们干了两个月的老员工了,要逻辑有逻辑,要数据有数据,缺了点情绪,这需要人去完善的。

2024-01-17 14:01:18 1385

原创 什么是国密算法

国密算法是指由中国国家密码管理局发布的密码算法标准,旨在保障国家信息安全。目前,国家密码管理局已发布了一系列国产商用密码标准算法,包括SM1(SCB2)、SM2、SM3、SM4、SM7、SM9以及祖冲之密码算法(ZUC)等。通过在金融、电子政务及安防等领域广泛应用国密算法,在对敏感数据进行机密性、完整性和可用性保护的同时,减少对外部密码产品的依赖,提升国家信息安全水平。

2024-01-13 08:54:36 881

原创 如何保证数据库和缓存双写一致性?

如何保证数据库和缓存双写一致性,是面试中经常被问的一个技术问题,程序汪推荐大家有必要好好研究一波数据库和缓存(比如:redis)双写数据一致性问题,是一个跟开发语言无关的公共问题。尤其在高并发的场景下,这个问题变得更加严重。我很负责的告诉大家,该问题无论在面试,还是工作中遇到的概率非常大,所以非常有必要跟大家一起探讨一下。今天这篇文章我会从浅入深,跟大家一起聊聊,数据库和缓存双写数据一致性问题常见的解决方案,这些方案中可能存在的坑,以及最优方案是什么。

2024-01-13 08:50:31 1046

原创 边缘计算挑战和机遇

大数据安全与隐私保护是一项重要的技术领域,它涉及到数据的安全性和隐私保护。随着数据的产生和收集量日益增加,数据安全和隐私保护的问题得到了广泛关注。在大数据环境下,数据安全和隐私保护的重要性得到了广泛认识。大数据安全与隐私保护的背景大数据安全与隐私保护的重要性大数据安全与隐私保护的挑战实时数据分析是指在数据产生的同时进行的数据处理和分析,它的主要目标是在最短时间内获取准确的分析结果,以便于实时决策。

2024-01-12 14:00:58 1378

原创 SpringBoot 注解超全详解

个人理解相当于,如果扫描到有@Component、@Controller、@Service等这些注解的类,并注册为Bean,可以自动收集所有的Spring组件,包括@Configuration类。把配置好的Bean拿来用,完成属性、方法的组装,它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。unique属性:unique属性表示该字段是否为唯一标识,默认为false,如果表中有一个字段需要唯一标识,则既可以使用该标记,也可以使用@Table注解中的@UniqueConstraint。

2024-01-09 22:41:05 919

原创 程序员必备的面试技巧

但你要知道项目奖金、月度绩效都是浮动不稳定的,有些误差可以达到2-3K以上,所以一般像这种薪资结构的,基础薪资有保障,你的总体工资才会高。特别对于没有面试经验的测试人员,HR不主动说明,自己是很少去询问的。(1)问你技术相关的知识点,至少都应该知道(例如mysql,你需要了解它的引擎、索引结构、事务、锁、特性、高可用等等),知识点的原理必须都了解(为什么有多种引擎?(3)碰到气场弱的面试官,把自己知道的都说出来(这种面试官不知道该问什么,等着他问有时候还不如自己说,把自己擅长的都给说了,对你对他都有好处)

2024-01-09 22:29:49 537

原创 编程语言的发展趋势和未来方向

在未来,随着云计算和DevOps文化的普及,便捷的云端开发环境、自动化的测试框架、智能化的代码审查工具和更加先进的版本控制系统将成为标配。编程语言发展至今,特性的互相借鉴的情况越来越普遍,语言生态互通也更常见(如直接兼容,或者 Bridging 技术),编译型和解释型界限也越来越模糊(比如 Dart 既能编译运行也能解释运行,还能边解释运行边编译),语言之间的性能差异也越来越小(V8 引擎,JIT,硬件性能提高),语言之间的互相转换也开始普遍。回顾我的学习过程,我认为编程给予我最大的收获是解决问题的能力。

2024-01-06 11:12:17 1235 1

原创 给新手的25个建议

通过阅读源码,可以真正的了解某个技术的底层原理是什么,这些开源项目有哪些好的设计思想,有哪些巧妙的编码技巧,使用了哪些优秀的设计模式,可能会出现什么问题等等。但后来发现,有些两年之前的代码,业务逻辑都忘了,有些代码自己都看不懂。如果你没有接口文档,别人咋知道你接口的地址是什么,接口参数是什么,请求方式时什么,接口多个参数分别代码什么含义,返回值有哪些字段等等。如果该接口的实时性要求不高,我们可以用一张表保存用户数据,然后使用job或者mq,这种异步的方式,读取该表的数据,做业务逻辑处理。

2024-01-05 22:49:32 1438 1

原创 让人头痛事务问题到底要如何解决?

正好前段时间我在公司处理过这个问题,我们当时由于项目初期时间比较紧张,为了快速完成业务功能,忽略了系统部分性能问题。项目顺利上线后,专门抽了一个迭代的时间去解决大事务问题,目前已经优化完成,并且顺利上线。现给大家总结了一下,我们当时使用的一些解决办法,以便大家被相同问题困扰时,可以参考一下。本人从网友的一个问题出发,结合自己实际的工作经验分享了处理大事务的6种办法:少用@Transactional注解将查询(select)方法放到事务外事务中避免远程调用事务中避免一次性处理太多数据非事务执行。

2024-01-05 22:43:55 994

原创 聊聊spring事务12种场景,太坑了

对于从事java开发工作的同学来说,spring的事务肯定再熟悉不过了。在某些业务场景下,如果一个请求中,需要同时写入多张表的数据。为了保证操作的原子性(要么同时成功,要么同时失败),避免数据不一致的情况,我们一般都会用到spring事务。,就能轻松搞定事务。我猜大部分小伙伴也是这样用的,而且一直用一直爽。但如果你使用不当,它也会坑你于无形。今天我们就一起聊聊,事务失效的一些场景,说不定你已经中招了。不信,让我们一起看看。

2024-01-05 22:34:02 892

2023CPP-Summit.pdf

2023CPP-Summit.pdf

2024-05-20

Java资源大全中文版

我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列的资源整理。awesome-java 就是 akullpp 发起维护的 Java 资源列表,内容包括:构建工具、数据库、框架、模板、安全、代码分析、日志、第三方库、书籍、Java 站点等等。伯乐在线已经把 awesome-java 资源列表翻成中文后发布于 ImportNew。 Awesome 系列虽然挺全,但基本只对收录的资源做了极为简要的介绍,如果有更详细的中文介绍,对相应开发者的帮助会更大。这也是我们发起这个开源项目的初衷。 我们要做什么? 基于 awesome-java 资源列表,我们将对各个资源项进行编译整理。 整理后的内容,将收录在伯乐在线资源频道。可参考已整理的内容: 《OWNER:Java配置文件解决方案》 《Spring Boot:简化Spring应用初始搭建以及开发过程》 《SonarQube:开源的代码质量管理工具》 如何参与本项目? 如何为列表贡献新资源? 欢迎大家为列表贡献高质量的新资源,提交PR时请参照以下要求: 请确保推荐的资源自己使用过 提交PR时请注明推荐理由 资源列表

2024-01-27

空空如也

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

TA关注的人

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