摘要: 为什么更推荐使用组合而非继承关系? 前言 最近在看公司项目的代码,看到了大量的继承体系,而且还是继承了多层,维护、阅读都十分的困难。在查阅了一些资料以后,包括《Effective Java》一书中的第16条提到“组合优先于继承”。那继承到底会暴露什么问题呢?为什么更推荐优先使用组合呢? 欢迎关注微信公众号「JAVA旭阳」交流和学习 继 阅读全文
posted @ 2022-12-24 22:04 JAVA旭阳 阅读(1168) 评论(3) 推荐(6) 编辑
摘要: 软件设计中最关键的“开闭原则”,究竟指什么呢? 前言 软件设计原则中有一条很关键的原则是开闭原则,就是所谓的对扩展开放,对修改关闭。个人觉得这条原则是非常重要的,直接关系到你的设计是否具备良好的扩展性,但也是相对比较难以理解和掌握的,究竟怎样的代码改动才被定义为“扩展”?怎样的代码改动才被定义为“修改”?怎么才算满足或违反“开闭原则”?别急,本文 阅读全文
posted @ 2022-12-23 09:30 JAVA旭阳 阅读(511) 评论(2) 推荐(3) 编辑
摘要: IntelliJ IDEA中我最爱的10个快捷操作 前言 欢迎关注微信公众号「JAVA旭阳」交流和学习 IntelliJ IDEA提供了一些Java的快捷键,同样也可以帮助我们提高日常的开发效率。关于这些快捷操作,你知道那几个呢? 1. psvm/main快速生成 main() 方法 在日常开发中,我们经常需要写main()方法,这时候您也可以使用m 阅读全文
posted @ 2022-12-22 10:02 JAVA旭阳 阅读(284) 评论(0) 推荐(0) 编辑
摘要: 推荐8个提高工作效率的IntelliJ插件 前言 欢迎关注微信公众号「JAVA旭阳」交流和学习 IntelliJ目前已经成为市面上最受欢迎的Java开发工具,这得益于里面非常丰富的插件机制。本文我将分享在日常开发中我经常使用的5个插件,它们可以帮助您提高工作效率。 1. GenerateAllSetter 作为开发人员,我们总是需要new() 阅读全文
posted @ 2022-12-21 09:56 JAVA旭阳 阅读(1347) 评论(4) 推荐(4) 编辑
摘要: 8个Spring事务失效的场景,你碰到过几种? 前言 作为Java开发工程师,相信大家对Spring种事务的使用并不陌生。但是你可能只是停留在基础的使用层面上,在遇到一些比较特殊的场景,事务可能没有生效,直接在生产上暴露了,这可能就会导致比较严重的生产事故。今天,我们就简单来说下Spring事务的原理,然后总结一下spring事务失败的场景,并提 阅读全文
posted @ 2022-12-20 12:31 JAVA旭阳 阅读(665) 评论(2) 推荐(1) 编辑
摘要: Spring中11个最常用的扩展点,你知道几个? 前言 在使用spring的过程中,我们有没有发现它的扩展能力很强呢? 由于这个优势的存在,使得spring具有很强的包容性,所以很多第三方应用或者框架可以很容易的投入到spring的怀抱中。今天我们主要来学习Spring中很常用的11个扩展点,你用过几个呢? 1. 类型转换器 如果接口中接收参数的实 阅读全文
posted @ 2022-12-19 17:13 JAVA旭阳 阅读(1161) 评论(0) 推荐(3) 编辑
摘要: 如何在SpringBoot中优雅地重试调用第三方API? 前言 作为后端程序员,我们的日常工作就是调用一些第三方服务,将数据存入数据库,返回信息给前端。但你不能保证所有的事情一直都很顺利。像有些第三方API,偶尔会出现超时。此时,我们要重试几次,这取决于你的重试策略。 下面举一个我在日常开发中多次看到的例子: public interface OutSou 阅读全文
posted @ 2022-12-16 13:43 JAVA旭阳 阅读(1338) 评论(0) 推荐(2) 编辑
摘要: JAVA中生成随机数Random VS ThreadLocalRandom性能比较 前言 大家项目中如果有生成随机数的需求,我想大多都会选择使用Random来实现,它内部使用了CAS来实现。 实际上,JDK1.7之后,提供了另外一个生成随机数的类ThreadLocalRandom,那么他们二者之间的性能是怎么样的呢? Random的使用 Random类是JDK提供的生成随机数的类, 阅读全文
posted @ 2022-12-14 23:49 JAVA旭阳 阅读(421) 评论(0) 推荐(0) 编辑
摘要: JAVA中的注解可以继承吗? 前言 注解想必大家都用过,也叫元数据,是一种代码级别的注释,可以对类或者方法等元素做标记说明,比如Spring框架中的@Service,@Component等。那么今天我想问大家的是类被继承了,注解能否继承呢?可能会和大家想的不一样,感兴趣的可以往下看。 简单注解继承演示 我们不妨来验证下注解的继承 阅读全文
posted @ 2022-12-13 16:50 JAVA旭阳 阅读(856) 评论(0) 推荐(0) 编辑
摘要: 大数据时代,数据仓库究竟是干嘛的? 前言 无论你是否专门从事大数据开发,作为一个开发人员,应该都听说过数据仓库的概念,那你知道为什么会出现数据仓库?数据仓库究竟是干嘛的吗?有什么价值和意义呢?那么本文就带到入门,揭开数据仓库的面纱。 数据仓库的由来 数据仓库为何而来,主要解决什么问题的? 先下结论:为了分析数据而来,分析结果为企业决策 阅读全文
posted @ 2022-12-12 14:09 JAVA旭阳 阅读(901) 评论(0) 推荐(3) 编辑