
Java
文章平均质量分 75
程序猿DD
《Spring Cloud微服务实战》作者、腾讯云TVP、阿里云MVP
展开
-
启动1000万个虚拟线程需要多少时间?需要多少平台线程?
虚拟线程是在Java并发领域添加的一个新概念,那么虚拟线程到底是做什么用的呢?根据JEP中的内容告诉我们,虚拟线程是一种轻量级线程,可以显著地帮助我们减少编写、维护、观察高吞吐量应用程序的工作量。每个请求一个线程风格编写的程序,能够以接近最佳硬件利用率进行扩展。什么是每个请求一个线程的风格?对于HTTP服务器来说,这意味着每个HTTP请求都由它自己的线程处理。对于关系型数据库服务器来说,这意味着每个SQL事务也都由它自己的线程处理。如果您曾经使用过 Java EE 服务器,那么它就是这样工作的。所以,原创 2023-10-25 21:52:35 · 212 阅读 · 0 评论 -
Log4j 2.17.0 再曝漏洞,但不要惊慌
最新消息!根据Log4j官网发布,2.17.0版本还存在漏洞!漏洞编号:CVE-2021-44832原创 2021-12-29 13:53:27 · 4629 阅读 · 1 评论 -
又双叒有兄弟因为 YYYY-MM-dd 被叫去加班了...
今天上海降温到零下了,一点起床的欲望都没,想着直接睡到吃午饭吧。结果看到群里小伙伴吐槽一早被叫起来修Bug,定睛一看,要修的BUG居然又是之前说过很多次的YYYY-MM-dd问题,这个之前文章就写过几次了《听说又有兄弟因为用YYYY-MM-dd被锤了…》,怎么还有人中招呢?不过再想想,其实也正常,每一年都有新人,即使是老人,也可能因为跳槽接手已经存在问题的系统,当然也可能没关注DD,没看过之前的推送 图片 ?不管什么原因,也许原创 2021-12-26 09:59:45 · 5233 阅读 · 8 评论 -
Log4j2 消停了,Logback 开始塌房了?
作者:程序猿DD博客:https://blog.didispace.com/logback-CVE-2021-42550/今天一早,还没起床,拿起手机赫然看到一个头条信息,标题着实让我心理咯噔了一下!马上起床,直奔官网(https://logback.qos.ch/news.html),看看到底什么问题?塌的有多厉害?既然是1.2.9版本以下问题,那就直接找到1.2.9版本修复了些啥,一看是12月16日发布的,已经有几天了,初步判断,应该问题不大吧?仔细看看这个版本主要修复的漏洞编号:CVE-2原创 2021-12-24 10:26:40 · 8188 阅读 · 6 评论 -
Log4j发布2.17.0,解决2.16.0存在的DOS攻击风险
本以为,经过上周的2.16.0版本升级,Log4j2的漏洞修复工作,大家基本都要告一段落了。万万没想到,就在周末,Log4j官方又发布了新版本:2.17.0该版本主要修复安全漏洞:CVE-2021-45105影响版本:2.0-alpha1 至 2.16.0(1.x用户继续忽略)该漏洞只有当日志配置使用带有Context Lookups的非默认 Pattern Layout(例如**$${ctx:loginId**})时,攻击者可以通过构造包含递归查找的恶意输入数据,触发无限循环,导致 Stack原创 2021-12-20 11:09:07 · 1100 阅读 · 0 评论 -
Java都到16了,为什么都还在用8,是越做越烂了么?
前几日 Java 16 发布了,发现还是有童鞋不太了解Java目前的版本机制,所以看到了这样的留言:那么为什么大家都还在用 Java 8 呢?从这张图可以一目了然,大家平时最喜欢的是什么?当然是白嫖啦~而从JDK 8u211开始往后的版本,可都是需要商业收费的,所谓的商业收费,就是你自己开发程序使用不打紧,但是一旦当你开发的程序如果用于商业用途,也就是你的程序给你赚钱了,那此时此刻Oracle可是要跟你收费的,你的JDK的使用需要缴费获得授权才是合法的。有的人会问,如果我不缴费直接用呢?当然,O原创 2021-03-20 19:47:14 · 17838 阅读 · 27 评论 -
像Swing这种已经不太用的技术,大学还在教,到底要不要学?
一直以来,写日常问题、前沿技术和架构思考类的文章比较多,今天为什么突然来说说Swing这个陈年老技术呢?因为在优快云上看到了这样的一篇文章:可以看到作者对于学Swing还是挺愤怒的,不过确实Swing现在很少用了。但我的观点还不是那么绝对,因为从个人成长来说,Swing的学习确实给到了不少收获。开始也没打算专门来写篇文章说说看法,然后上了一下掘金,居然就又看到了这篇文章(强大的推荐机制):开始看标题格式还以为是同一篇,仔细看才知道原来是驳前面那篇的,对于后面那篇的不少观点,个人还是比较认同的。原创 2021-06-11 12:18:51 · 10071 阅读 · 36 评论 -
YAML中多行字符串的配置方法
有时候我们会在配置文件中配置一段文字说明,这种时候通常会出现两种需求:文字中可能出现段落,希望在配置中按段落方式编写,显示打印的时候也能出现段落换行。文字很长,为方便编辑,可能在配置文件中分段写,但是显示的时候不喜欢出现配置中的段落换行。简单的说,就是:配置与显示,都严格按段落展示配置按段落,显示不需要按段落假设,我们需要配置这样一段文字:I am a coder.My bl...原创 2020-03-19 14:32:19 · 4176 阅读 · 1 评论 -
Spring Boot 2.x基础教程:使用MyBatis访问MySQL
之前我们已经介绍了两种在Spring Boot中访问关系型数据库的方式:使用spring-boot-starter-jdbc使用spring-boot-starter-data-jpa虽然Spring Data JPA在国外广泛流行,但是在国内还是MyBatis的天下。所以,今天这篇我们将具体说说如何在Spring Boot中整合MyBatis完成关系型数据库的增删改查操作。整合M...原创 2020-03-02 14:48:23 · 3031 阅读 · 0 评论 -
Spring Boot 2.x基础教程:使用 ECharts 绘制各种华丽的数据图表
上一节我们介绍了如何在Spring Boot中使用模板引擎Thymeleaf开发Web应用的基础。接下来,我们介绍一下后端开发经常会遇到的一个场景:可视化图表。通常,这类需求在客户端应用中不太会用到,但是在后端的各种统计分析模块会经常碰到。比如:通过折线图、柱状图、雷达图等可视化形式,更直观的展现和分析经营状况或系统运行情况。这里我们将引入的数据可视化组件库 ECharts来帮助我们完成这样的任...原创 2020-02-26 22:13:01 · 6055 阅读 · 0 评论 -
Spring Boot 2.x基础教程:使用 Thymeleaf开发Web页面
通过本系列教程的前几章内容(API开发、数据访问)。我们已经具备完成一个涵盖数据存储、提供HTTP接口的完整后端服务了。依托这些技能,我们已经可以配合前端开发人员,一起来完成一些前后端分离的Web项目,或是一些小程序、或者是App之类的应用开发。对于Web项目来说,前后端分离模式是目前最为流行的,主要得益于前端框架的完善以及前后端分离方案的日渐成熟。这样的实现模式帮助Web类产品的开发团队更好的...原创 2020-02-24 10:45:54 · 3168 阅读 · 0 评论 -
Spring Boot 2.x基础教程:使用Spring Data JPA访问MySQL
在数据访问这章的第一篇文章《Spring中使用JdbcTemplate访问数据库》 中,我们已经介绍了如何使用Spring Boot中最基本的jdbc模块来实现关系型数据库的数据读写操作。那么结合Web开发一章的内容,我们就可以利用JDBC模块与Web模块的功能,综合着使用来完成一个适用于很多简单应用场景的后端应用了。然而当我们有一定的开发经验之后,不难发现,在实际开发过程中,对数据库的操作大多...原创 2020-02-18 11:55:50 · 5018 阅读 · 0 评论 -
Spring Boot 2.x基础教程:找回启动日志中的请求路径列表
如果您看过之前的Spring Boot 1.x教程,或者自己原本就对Spring Boot有一些经验,或者对Spring MVC很熟悉。那么对于Spring构建的Web应用在启动的时候,都会输出当前应用创建的HTTP接口列表。比如下面的这段日志:2020-02-11 15:32:39.293 INFO 48395 --- [ main] o.s.w.s.handler.S...原创 2020-02-13 09:36:10 · 3499 阅读 · 0 评论 -
Spring Boot 2.x基础教程:使用国产数据库连接池Druid
上一节,我们介绍了Spring Boot在JDBC模块中自动化配置使用的默认数据源HikariCP。接下来这一节,我们将介绍另外一个被广泛应用的开源数据源:Druid。Druid是由阿里巴巴数据库事业部出品的开源项目。它除了是一个高性能数据库连接池之外,更是一个自带监控的数据库连接池。虽然HikariCP已经很优秀,但是对于国内用户来说,可能对于Druid更为熟悉。所以,对于如何在Spring ...原创 2020-02-10 11:11:44 · 2969 阅读 · 0 评论 -
Spring Boot 2.x基础教程:默认数据源Hikari的配置详解
通过上一节的学习,我们已经学会如何应用Spring中的JdbcTemplate来完成对MySQL的数据库读写操作。接下来通过本篇文章,重点说说在访问数据库过程中的一个重要概念:数据源(Data Source),以及Spring Boot中对数据源的创建与配置。基本概念在开始说明Spring Boot中的数据源配置之前,我们先搞清楚关于数据访问的这些基本概念:什么是JDBC?Java数据库连...原创 2020-02-06 10:55:53 · 5928 阅读 · 2 评论 -
Spring Boot 2.x基础教程:使用JdbcTemplate访问MySQL数据库
在第2章节中,我们介绍了如何通过Spring Boot来实现HTTP接口,以及围绕HTTP接口相关的单元测试、文档生成等实用技能。但是,这些内容还不足以帮助我们构建一个动态应用的服务端程序。不论我们是要做App、小程序、还是传统的Web站点,对于用户的信息、相关业务的内容,通常都需要对其进行存储,而不是像第2章节中那样,把用户信息存储在内存中(重启就丢了!)。对于信息的存储,现在已经有非常非常多...原创 2020-02-04 19:23:46 · 6511 阅读 · 6 评论 -
众志成城,共克时艰:GitHub惊现武汉防疫信息收集项目
项目名称:武汉新型冠状病毒防疫信息收集平台项目地址:https://github.com/wuhan2020/wuhan2020正式环境:https://wuhan2020.github.io/项目介绍:针对 2020 年初在武汉爆发的新型冠状病毒疫情,本项目旨在收集各医院、酒店、工厂、物流、捐赠、捐款、预防、治疗、动态等信息,统一收集,统一发布,以便各方之间进行信息互通,有效调配社会资源。...原创 2020-01-27 12:21:46 · 11249 阅读 · 4 评论 -
还记得那个提速8倍的IDEA插件吗?VS Code版本也发布啦!!
去年,阿里云发布了本地 IDE 插件 Cloud Toolkit,仅 IntelliJ IDEA 一个平台,就有 15 万以上的开发者进行了下载,体验了一键部署带来的开发便利。时隔一年的今天,阿里云正式发布了 Visual Studio Code 版本,全面覆盖前端开发者,帮助前端实现一键打包部署,让开发提速 8 倍。VSCode 版本的插件,目前能做到什么?安装插件之后,开发者可以立即体验...原创 2020-01-22 09:29:43 · 12579 阅读 · 3 评论 -
跟踪了下优快云博客之星的竞选数据,我就看看不评论,你怎么看?
我就看看,不评论,你怎么看?实时统计:http://csdn.didispace.com/欢迎关注我的公众号:程序猿DD,获得独家整理的学习资源和日常干货推送。如果您对我的专题内容感兴趣,也可以关注我的博客:didispace.com...原创 2020-01-16 18:37:12 · 2596 阅读 · 0 评论 -
高效程序员的七个习惯
软件工程师花费大量时间通过练习leet code问题和完善简历来获得更好的面试通过可能。一旦他们最终被谷歌、亚马逊或其他公司录用,他们可能会发现:过去用来得到这份工作的技能与他们日常工作中需要的技能并不匹配。我们的团队受到 TechLead 创建的高效程序员七项技能的启发。我们想提供我们自己对这个话题的看法。以下是我们总结的高效程序员的七项技能。1. 学习如何阅读别人的代码除了你,每个人写...原创 2020-01-08 09:12:16 · 26759 阅读 · 29 评论 -
昨天你用的 YYYY-MM-dd 被同事锤了吗?
昨天在v站上看到这个关于YYYY-MM-dd的使用而出现Bug的帖子(v2ex.com/t/633650)非常有意思,所以拿过来分享一下。在任何编程语言中,对于时间、数字等数据上,都存在很多类似这种平时一切OK,特定时间、特定环境出问题的情况。出现这种问题的根本原因还是我们对于各种数据结构的细节定义在开始的时候都不太注意,都是从每一次使用问题出现之后才开始有了“刻骨铭心”的认识。不论昨天你是否...原创 2020-01-02 11:02:45 · 3266 阅读 · 0 评论 -
MacOS深色模式下微信文章页面背景变为黑色问题的解决
由于长期伏案,颈椎问题比较严重,所以平时都尽量减少低头看手机的时间,也就养成了用浏览器看各种读物的习惯,其中就包括公众号文章。最近不知道从哪一天开始,突然发现公众号文章的背景突然变成了黑色。就像这样子:开始一直以为是不是Chrome插件作祟,但是通过禁用所有插件的方式也没有能够得到恢复。同时,还尝试了一下用其他浏览器,如:Safari。依然有这样的现象发生。不死心,还是想改回原来的样子,所...原创 2019-12-31 08:52:55 · 6714 阅读 · 0 评论 -
Maven发布封装到中央仓库时候报错:no default secret key: No secret key
今天因为发布swagger-spring-boot-starter做一个问题的修复,然后碰到了下面这个问题,记录一下解决过程,帮助后续碰到类似问题的童鞋:*gpg: WARNING: "--no-use-agent" is an obsolete option - it has no effectgpg: no default secret key: No secret keygpg: si...原创 2019-12-10 08:56:35 · 3712 阅读 · 0 评论 -
Spring Cloud Hoxton正式发布,Spring Boot 2.2 不再孤单
距离Spring Boot 2.2.0的发布已经有一个半月左右时间,由于与之匹配的Spring Cloud版本一直没有Release,所以在这期间碰到不少读者咨询的问题都是由于Spring Boot和Spring Cloud版本不匹配导致。很多时候,我们在学习或重建系统的时候都喜欢直接选用最高版本来开发,但是在使用Spring全家桶的时候,这样的选择不一定是最佳选择。主要还是由于Spring全家...原创 2019-12-02 11:00:40 · 3578 阅读 · 1 评论 -
Flyway 执行报错: ‘user_variables_by_thread‘ 表没有SELECT权限的问题解决
分享一个最近在整Flyway时候碰到的一个问题,以及对应的一些解决方案。如果您还不知道Flyway,建议可以先看一下这篇文章Spring Boot中使用Flyway来管理数据库版本问题描述问题出现所描述的工程所用版本信息如下:Spring Boot:2.1.3Flyway:5.2.4(非特别指定,随Spring Boot的素材版本管理)具体错误:在Spring Boot中整和Fl...原创 2019-11-29 10:08:18 · 6737 阅读 · 1 评论 -
Spring Boot 2.2.1 正式发布,需特别注意这个注解的使用!
Spring Boot 2.2.1 已于2019年11月7日正式发布。该版本内容包含110项修复、改进和依赖升级。如果开发者要从Spring Boot 2.2.0升级到2.2.1的话,这里要特别注意有用到@ConfigurationProperties注解的地方。在2.2.1中,该注解的扫描支持默认不启用了,用户需要自己通过添加@ConfigurationPropertiesScan注解,显...原创 2019-11-07 22:43:17 · 7268 阅读 · 1 评论 -
再不努力提高效率,小姐姐都被人追走了:K8S一键部署了解一下?
随着互联网时代的不断发展,开发者可能会面临这样的困境:为了解决问题、提升开发效率而竭力研发出来的“创新”,似乎削弱了他们在公司的重要程度,甚至取代了他们原先的地位。比如,在云原生时代,部分企业更愿意选择 K8s 来解决运维、弹性的问题,而不是组建一支需要耗费大量雇佣资金、管理资金的研发团队。对于 K8s,它的价值在于不仅能帮助公司降低运维成本,同时还可以带来弹性、敏捷、可移植能力,但是对于开发者...原创 2019-10-26 09:57:08 · 2795 阅读 · 2 评论 -
面试最后一问:你有什么问题想问我吗?
尽管,我们之前分享了这么多关于面试的主题:高薪必备的一些Spring Boot高级面试题面试必问:设计模式遵循的面向对象设计原则!面试必问:怎么保证缓存与数据库的双写一致性?27道高频Spring面试题,你能答对几个?唠唠面试常问的:面向对象六大原则一文高效图解二叉树面试题Java面试中最高频的那20%知识点是什么?百度面试题:求数组最大值...然而,最后这个90%可见...原创 2019-10-22 09:37:08 · 61259 阅读 · 70 评论 -
硝烟四起的云服务双十一促销大战,谁更便宜?
前几日,给大家推荐了腾讯云的双十一预热活动(探子报!双十一紧急军情!),可以说史无前例的低价。然而,当你以为这是云服务的最低底线的时候,又杀出一个程咬金:京东云。也许京东云用的人不多,这次活动也没有非常大力度的打广告,所以对于京东云的促销活动很少有人知道。我们也是昨天才偶然发现了这个更为牛x的优惠活动。到底有多优惠呢?我们就拿之前以为目前性价比最高的活动:腾讯云双十一促销活动价格来做一次横评。这...原创 2019-10-20 10:38:37 · 2574 阅读 · 0 评论 -
Spring Boot 2.2 正式发布,大幅性能提升 Java 13 支持
之前 Spring Boot 2.2没能按时发布,是由于 Spring Framework 5.2 的发布受阻而推迟。这次随着 Spring Framework 5.2.0 成功发布之后,Spring Boot 2.2 也紧跟其后,发布了第一个版本:2.2.0。下面就来一起来看看这个版本都更新了些什么值得我们关注的内容。组件版本更新这些Spring框架组件更新了依赖版本:Spring AM...原创 2019-10-18 10:47:22 · 13056 阅读 · 11 评论 -
Spring Boot 2.x基础教程:Swagger静态文档的生成
前言通过之前的两篇关于Swagger入门以及具体使用细节的介绍之后,我们已经能够轻松地为Spring MVC的Web项目自动构建出API文档了。如果您还不熟悉这块,可以先阅读:Spring Boot 2.x基础教程:使用Swagger2构建强大的API文档Spring Boot 2.x基础教程:Swagger接口分类与各元素排序问题详解在这两篇文章中,我们构建的文档必须通过在项目中...原创 2019-10-16 10:33:47 · 1971 阅读 · 0 评论 -
Spring Cloud Alibaba基础教程:Sentinel使用Nacos存储规则
通过上一篇《使用Sentinel实现接口限流》的介绍,相信大家对Sentinel已经有了初步的认识。在Spring Cloud Alibaba的整合封装之下,接口限流这件事情可以非常轻易的整合到我们的Spring Cloud应用中。但是,通过上篇的整合,依然还不能完美的满足我们日常的生产需求。其中,非常重要的一点就是限流规则的持久化问题。不少细心的读者也在留言中提出了Dashboard中设置的限流...原创 2019-04-17 10:18:25 · 1048 阅读 · 1 评论 -
Spring Cloud Alibaba到底坑不坑?
之前我发过一篇《说说我为什么看好Spring Cloud Alibaba》,然后这两天有网友给我转了这篇文章《坑爹项目spring-cloud-alibaba,我们也来一个》,问我的看法是怎么样的,聊天时候简单说了一下。今天在家休息,抽空整理一下内容,逐点说一下我的看法,主要还是觉得这篇文章博眼球的成分高一些,因为这篇文章的解读与之前其他某些自媒体发布的《Eureka 2.0 开源工作宣告停止,继...原创 2019-04-09 10:40:19 · 5917 阅读 · 8 评论 -
说说我为什么看好Spring Cloud Alibaba
最近对《Spring Cloud Alibaba基础教程》系列的催更比较多,说一下最近的近况:因为打算Spring Boot 2.x一起更新。所以一直在改博客Spring Boot专题页和Git仓库的组织。由于前端技术太过蹩脚,花了不少时间。大家不用担心,这个系列不会太监,因为我真心看好这个套件的未来,后续的更新也会继续赶上来。今天就水更一篇吧,跟大家聊一下平时被问的比较多的一类问题,Sprin...原创 2019-03-29 09:58:45 · 2329 阅读 · 0 评论 -
Spring Cloud Alibaba基础教程:使用Sentinel实现接口限流
最近管点闲事浪费了不少时间,感谢网友libinwalan的留言提醒。及时纠正路线,继续跟大家一起学习Spring Cloud Alibaba。Nacos作为注册中心和配置中心的基础教程,到这里先告一段落,后续与其他结合的内容等讲到的时候再一起拿出来说,不然内容会有点跳跃。接下来我们就来一起学习一下Spring Cloud Alibaba下的另外一个重要组件:Sentinel。Sentine...原创 2019-04-10 14:23:39 · 1347 阅读 · 0 评论 -
Spring Boot 2.x基础教程:快速入门
简介在您第1次接触和学习Spring框架的时候,是否因为其繁杂的配置而退却了?在你第n次使用Spring框架的时候,是否觉得一堆反复黏贴的配置有一些厌烦?那么您就不妨来试试使用Spring Boot来让你更易上手,更简单快捷地构建Spring应用!Spring Boot让我们的Spring应用变的更轻量化。我们不必像以前那样繁琐的构建项目、打包应用、部署到Tomcat等应用服务器中来运行我们的...原创 2019-03-25 23:40:53 · 1005 阅读 · 0 评论 -
全网Star最多的Spring Boot开源教程 2019 年要继续更新了!
从2016年1月开始写博客,默默地更新《Spring Boot系列教程》,从无人问津到千万访问,作为一个独立站点(http://blog.didispace.com),相信只有那些跟我一样,坚持维护自己独立博客的童鞋才能体会这有多么不容易。由于没有行业资讯类大站这样的权重优势,各种发布于这些平台上的洗稿文章与相似内容,就算发布时间较晚,它依然可以在百度上占据很大的搜索优势,以至于一些读者在读了其...原创 2019-03-13 14:24:39 · 1091 阅读 · 0 评论 -
Spring Cloud Alibaba与Spring Boot、Spring Cloud之间不得不说的版本关系
这篇博文是临时增加出来的内容,主要是由于最近连载《Spring Cloud Alibaba基础教程》系列的时候,碰到读者咨询的大量问题中存在一个比较普遍的问题:版本的选择。其实这类问题,在之前写Spring Cloud基础教程的时候,就已经发过一篇《聊聊Spring Cloud版本的那些事儿》,来说明Spring Boot和Spring Cloud版本之间的关系。Spring Cloud Ali...原创 2019-03-03 10:16:13 · 5215 阅读 · 1 评论 -
Spring Cloud Alibaba基础教程:Nacos的集群部署
前情回顾:《Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现》《Spring Cloud Alibaba基础教程:支持的几种服务消费方式》《Spring Cloud Alibaba基础教程:使用Nacos作为配置中心》《Spring Cloud Alibaba基础教程:Nacos配置的加载规则详解》《Spring Cloud Alibaba基础教程:N...原创 2019-02-21 10:19:14 · 1084 阅读 · 0 评论 -
Spring Cloud Alibaba基础教程:Nacos的数据持久化
前情回顾:《Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现》《Spring Cloud Alibaba基础教程:支持的几种服务消费方式》《Spring Cloud Alibaba基础教程:使用Nacos作为配置中心》《Spring Cloud Alibaba基础教程:Nacos配置的加载规则详解》《Spring Cloud Alibaba基础教程:N...原创 2019-02-17 09:38:15 · 861 阅读 · 0 评论