Spring Security 实战干货:WebSecurity和HttpSecurity的关系 前几天有粉丝私信我:WebSecurity和HttpSecurity啥关系?当时给我问住了,我大概只知道它们之间的关系类似TypeScript和JavaScript的关系,但是具体的细节确...
爆料:Spring 2021年的一些发展方向 最近Spring各个团队的大佬在一起探讨了一下2021年Spring项目的新东西和预期的变化。胖哥就赶紧整理出来分享给大家,希望大家能够及时抓住未来的技术趋势。Spring Boot目前S...
深入解读MySQL底层原理,让性能“飞起来”的方法总结 前两天看到字节一个老哥写的帖子,提到高阶开发者必须掌握的技能,其中他明确提出了“精通MySQL”。为啥MySQL对开发人员如此重要?第一,不管你去面试哪家公司,数据库是必问项,而MySQ...
Spring Boot 2.4.5发布 就在刚刚Spring Boot 2.4.5发布,同时发布的还有Spring Boot 2.3.10和下一个关键版本的候选版本Spring Boot 2.5.0.RC1。这次更新一共修复了5...
Java函数式断言接口Predicate的一个小小实践 最近在搞Excel导入,数据校验是少不了的,但是不同的数据字段有不同的校验策略,五花八门的,甚至不确定,没有办法使用JSR303。所以就搞一个校验策略工具,把校验策略抽象出来。这里尝试了J...
Swagger3就是比2简单粗暴 接口文档总是很烦人,我曾经尝试过用Postman来编写和分享项目文档,感觉还不错。但是最近项目紧,我没有额外的时间可以花在它上面,这也导致我尝试YApi(另外一种文档)的计划泡汤了。嗯,目...
微信支付V3开发包Payment Spring Boot收到了第一个PR 开源就是这样,不是一味的索取,甚至有些同学感觉理所应当的索取,开源帮助了你,如果条件允许也希望你能够反哺开源,互利共赢才是一个良好的生态循环。zacone同学在运用PaymentSpri...
何时使用Java Stream,何时使用Java集合框架 Java 8 的Stream API 提供了不少可替代Java 集合框架的操作。但是不少同学在学习和使用Stream时依然感到很困惑,不知道何时使用Stream,甚至想不起来使用Strea...
程序员还是得做职业规划 蜗牛在互联网行业做程序员也有几年了,和很多初入职场或者身处职场的程序员朋友一样,对自己的成长路线有过困惑,对三十五的瓶颈也有过担忧。不过随着自己的经历和成长,对周边同事的观察以及阅历的提升...
详解synchronized锁的各种用法及注意事项 1 前言本文主要通过简单的demo来阐述synchronized锁的各种用法以及使用synchronized锁的相关注意事项,记录下来同时也方便自己记忆。synchronized锁是jvm...
RocketMQ消息会丢失吗?如何解决消息丢失? 2020双11,RocketMQ发生了以下几个方面的变化:云原生化实践。完成运维层面的云原生化改造,实现 Kubernetes 化,实现降本提效,达到无人值守的自动化运维。性能优化。消息...
微软发布自己的OpenJDK,真是对Java又爱又恨 在谷歌刚刚赢得同甲骨文一场长达10年的Java侵权案之后不到24小时,微软就急不可耐地放出了自家的JDK项目Microsoft Build of OpenJDK预览版(基于Java 11)...
Spring Security 实战干货:动态权限控制还能更加简单一些 之前在Spring Security动态权限控制的教程中,我们通过自定义FilterInvocationSecurityMetadataSource和AccessDecisionManag...
你听说过OpenJDK,但是你听说过OpenValueJDK吗? 你听说过OpenJDK,但是你听说过OpenValueJDK吗?近日一家来自欧洲、从事Java生态的全栈软件公司OpenValue准备干一件大事。他们受到一个叫Bluebonnet[1]的...
优化Spring Boot应用Docker镜像,提高CI/CD效率 越来越多的项目容器化,Docker已经成为软件开发中的重要工具。通常我们可以通过如下的Dockerfile把Spring Boot应用的fat jar打包成docker镜像:FROMad...
把代码写烂点,你在公司就不可代替了? 很多同学戏谑“把代码写烂点,你在公司就不可代替了”。其实大家都知道不太可能。曾经胖哥和同事花了一周时间只为重构了一个极其复杂简直是混淆代码的方法,所以不要低估公司重构代码的决心。那么如何在...
IntelliJ IDEA的这个功能真是好用 昨天我建了新项目,还没有被 Git 托管。中间有一个解析配置的功能感觉写的不太好,于是就把代码删除了。搞了半天没有更好的解决办法,算了能用就行。可惜代码已经删了,如果重写得个把小时,要是有...
忙里偷闲又把自己的JWT实现改进了一下 之前在Spring Security 实战干货系列中我使用了 Spring 官方提供的spring-security-jwt作为JWT的实现。目前该工具包已经不再维护,而且对于最新推出的S...
Spring Security 实战干货:5.4版本带来的新玩法 1. 前言在以往Spring Security的教程中我们自定义配置都是声明一个配置类WebSecurityConfigurerAdapter,然后覆写(@Override)对应的几个方法...
今天给没用过Git的新人简单培训了一下 目前Git已经是大部分公司默认的版本控制工具,也是一个软件开发人员必会的技能。最近公司招了几个刚入行的新人不会使用Git,为了帮助他们快速了解和上手Git,就给他们大致讲解了一些基本操作。...
在一个大项目中我选择了另一种JDK实现AdoptOpenJDK 前言最近在搞一个大项目,做一些基础选型工作。首先就是 JDK 的选型。由于 Oracle 在 Java 8 更改了许可证。这使得我在对 JDK 的选择上除了性能考虑外还要特别注意合规检查。...
虚拟现实:如果这个世界没有Java 故事概要:Java已经成为头部流行语言多年,慢慢渗透到各个领域。它一次编译,到处运行,慢慢地引起了人们的担忧,不少名流开始鼓动反对Java。在所谓的“民意”的挟持下,“总统”不顾理性人士的...
从Nacos客户端视角来分析一下配置中心实现原理 一 动态配置1. 环境准备2.新建配置3.导入配置4.配置客户端5. 修改配置信息6.小结二 配置中心原理(推还是拉)1.实例化 ConfigService2.添加 Listener3.C...
Java 16 正式发布,已经是Java 8的两倍了 就在刚刚,Java 16正式发布。Java 16 正式发布主要特性Vector API(孵化)提升了Java在CPU向量计算的性能,这是对大规模的张量计算的支持,提升了Java在AI领域的...
天哪,IntelliJ IDEA居然支持视频聊天了 新冠疫情已经在全球持续了一年多了,它改变了我们的生活,更改变了我们的沟通方式。远程工作已经成为一种发展趋势。IntelliJ的工程师也希望通过在IDE中实时远程交流来改变开发者的沟通方式和...
厉害了!Apache软件基金会首位华人董事诞生了 Apache 软件基金会Apache软件基金会(也就是Apache Software Foundation,简称为ASF),是专门为支持开源软件项目而办的一个非盈利性组织。在它所支持的Ap...
Announcing Spring Native Beta! 美东3月11日,Spring布道师Josh Long发布了一条劲爆消息:目前在start.spring.io上你已经可以看到它了。这个项目具有里程碑式的意义。它意味着目前除了自Spring...
分享一下我做开源项目的经历 在2016年,我在工作之余为了练手写了一个叫WePay的微信支付V2 SDK(因为V3已经停止了维护),当时也不太懂开源,仅仅是为了分享自己的一些想法,放在今天来看确实写的并不怎么样。我把...
10 个内存引发的大坑,你能躲开几个? 对程序员来说内存相关的 bug 排查难度几乎和多线程问题并驾齐驱,当程序出现运行异常时可能距离真正有 bug 的那行代码已经很远了,这就导致问题定位排查非常困难,这篇文章将总结涉及内存的一...
10个解放双手实用在线工具,有些代码真的不用手写 1、Aliyun Java Initializr在日常开发工作和自己学习跑demo的时候,往往都需要快速构建一个springboot基础工程。除了用IDEA开发工具构建,更多就是用Spri...
炫技!bug 排查大曝光,涉及Linux 内核的那种 那些编程高手除了写代码很厉害之外,调试代码找 bug 更是手到擒来。编写代码只是程序员的工作之一,调试代码的时间甚至会超过编写代码,之前为大家讲解了很多关于系统、架构、编程等方面的内容,这...
新的虚拟机平台GraalVM,编程语言可以无缝沟通了 1. 前言在许多年前,一群不需要产出的IT学术研究人员搞了一个有趣的实验性项目叫MaxineVM,它是 一个用Java实现的元循环Java虚拟机。其实我也不知道这么高端的名字是啥意思,反...
方法论:这些年不少程序员同学都是这么跟我提问题的 这些情况每天都在上演。❝你好!【我只能你好】在吗?【需要实时一对一服务?】大佬求带。【带什么?】帮我写个登录模块吧【不说业务细节,更别说给钱了】可以问个问题吗?【又不说问题】这个异常怎么改...
方法论:用代码写故事 昨天在我的视频号中分享了一段短视频,演示了如何编写一段代码来描述一个谁(WHO)何时(WHEN)何地(WHERE)做(DO)什么(WHAT)。是的,本身没有什么技术含量,但是带来一些关于技...
视频:开源的可持续性 导读在这一集中 Petabridge 的首席技术官和创始人 Aaron Stannard,和来自 JetBrains 的 .NET 布道师 Rachel Appel,将一起与我们的主持人 ...
Spring Security 实战干货:微信小程序登录与Spring Security结合的思路分享 关注并星标,文末获取相关学习资料1. 前言原本打算把Spring Security中OAuth2.0的机制讲完后,用小程序登录来实战一下,发现小程序登录流程和Spring Security...
微信支付 V3 的 Java 实现 Payment Spring Boot1.0.7.RELEASE发布 该项目是胖哥维护的开源项目,欢迎 StarPayment Spring Boot[1] 是微信支付 V3 的 Java 实现,仅仅依赖 Spring 内置的一些类库。配置简单方便,可以让开...
华为申请“仓颉语言”商标,开发编程语言实锤? 据天眼查信息显示,华为正在申请“仓颉语言”商标注册,国际分类为网站服务,状态为“商标申请中”。天眼查显示正在申请中据史书记载,仓颉有双瞳四个眼睛,天生睿德,观察星宿的运动趋势、鸟兽的足...
如何发起并运营一个开源项目 1. 前言今天分享一下如何发起并运营一个开源项目。平时我们开发用到的轮子大多都是开源的,可以说开源项目推动了 IT 行业的的发展,而这两年是开源项目的爆发期。对于个人来说,开源项目也是开发...
紧急!微信小程序登录接口重大变化,前后端来活了。 1. 前言微信小程序近期发布公告修改了小程序登录和获取用户信息的机制。这对小程序开发者是一个很重要的消息,所以无论后端还是前端都要做出相关业务流程调整。你不改还不行,这个是强制性的。新年刚...
如何完善Redis监控告警? 本文字数:3940字预计阅读时间:20分钟一、背景二、监控指标分类三、监控指标说明四、总结一、背景Redis监控告警实践是基于开发CacheCloud云平台过程中不断实践和总结出来,随着...
505天,240,000字,我总结了Spring Security 的学习曲线,免费送给大家 Spring Security 确实比较难。和你一样,曾经也是我的梦魇。但是一切抵不过坚持和努力。505天。240,000字。这是 2021 年胖哥给大家的开年福利。拿走这份教程,加上你自...
动画演示15年来编程语言的起起伏伏 关注星标一下昨天新年第一天开工,没什么事干就用Python爬虫练了练手,抓取了TIOBE上关于Java 、C、C++、C#、JavaScript、PHP、Python、Golang、Swi...
Spring Security 实战干货:OAuth2登录获取Token的核心逻辑 1. 前言在上一篇Spring Security 实战干货:OAuth2 授权回调的核心认证流程中,我们讲了当第三方同意授权后会调用redirectUri发送回执给我们的服务器。我们的服务...
结束了半个月的无码状态,开始加码 正式开工,今年过节彻底远离了编程相关的一切话题,真正的一次“无码”生活,说实话真的爽。完全的放空自己,让自己彻底的休息。期间跑了近千公里,把附近各个景区逛了个遍,也是累得不行。不过“无码”...
你必须知道的 Java 简史 为什么要学习 JavaJava这门语言如今是互联网行业炙手可热的编程语言,像阿里、美团这些大厂,技术体系都是建立在 Java 之上。这些大厂又是很多新兴互联网企业的技术风向标,因此 Jav...
阿里面试这样问:redis 为什么把简单的字符串设计成 SDS? 点击“程序员内点事”关注,选择“设置星标”坚持学习,好文每日送达!2021开工第一天,就有小伙伴私信我,还给我分享了一道他面阿里的redis题(这家伙绝比已经拿到年终奖了),我看了...
2021,码上归来(内有红包) 2021年春节来了,胖哥在这里祝大家新春愉快,感谢大家在过去一年里的支持。在短暂的假期里,让我们暂时远离“有码”的世界,多陪伴家人,多会一会朋友,多感受一下自然。这个世界依然存在着变数,在...
微信支付V3 SDK Payment Spring Boot 1.0.6.RELEASE 发布,实现留守红包,助力抗疫 春节将至,为防控疫情,多地政府提倡员工、外来务工者留守本地过年,并鼓励企业向员工发放“留守红包”。为此,微信支付推出“春节留守红包”能力,希望可以协助有发放需求的政企单位,更便捷高效地发放...
Github的这个彩蛋我居然才知道,我OUT了 搞开发的哪个还没有GitHub账户?作为一个GitHub的资深用户,今天居然才发现GitHub还有这个彩蛋。什么彩蛋呢?比如我的GitHub是:https://github.com/Not...
微信支付开发包新版发布支持退款红包,文末送100元红包 马上春节了,拿出点小钱钱给大家发个福利,微信群的福利太小了 文末抽奖100元现金红包Payment Spring Boot 是微信支付V3的Java...
编程高手是如何练成的? 每个人都有成长的渴望,也都会遇到成长的瓶颈。下面这个问题是一个读者问我的:如何才能训练成为一个编程高手?先简单说下这个读者的背景:工作 3 年多,目前在大厂做后台开发,身边有不少编程高手...
如何再Java POJO转JSON时忽略掉一些属性 1. 前言在Java开发中有时候某些敏感信息我们需要屏蔽掉,不能被消费这些数据的客户端知道。通常情况下我们会将其设置为null或者空字符"",其实还有其它办法,如果你使用...
Java面试之ConcurrentHashMap 因为上篇文章HashMap已经讲解的很详细了,因此此篇文章会简单介绍思路,再学习并发HashMap就简单很多了,上一篇文章中我们最终知道HashMap是线程不安全的,因此在老版本JDK中...
吵疯了,Pull Request到底是个啥? 在团队中我承担了Committer 的责任,也就是帮同事们检视代码(Code Review)和合入代码,经常听到有同事在群里喊:“大佬,帮我合个 PR”,“大佬,我刚提交了一个 MR,帮...
Spring Security 实战干货:分布式对象SharedObject 1. 前言在上一篇我们对AuthenticationManager的初始化的细节进行了分析,其中里面有一段代码引起了不少同学的注意:ApplicationContextcontex...
我们为什么要分库分表? 点击阅读原文投票在文章开头先抛几个问题:(1)什么时候才需要分库分表呢?我们的评判标准是什么?(2)一张表存储了多少数据的时候,才需要考虑分库分表?(3)数据增长速度很快,每天产生多少数...
不就是一个项目吗,我三天就能搞定! 最近有不少人在后台留言:0基础怎么学好 Java?提问的人里有在校大学生、也有工作了一段时间想转行的职场人。(其中一个提问截图)交流下来,他们都有同一个行为模式:刚开始劲头十足,上网找了...
Spring Security 实战干货:AuthenticationManager的初始化细节 点击文末阅读原文给胖哥投票另外这是我的视频号,分享一些有用的知识。也可以关注一下哦。1. 前言今天有个同学告诉我,在Security Learning项目的day11分支中出现了一个问题...
Java开发中常用的几种Git工作流 点击阅读原文投票作为一个开发人员每天必不可少要提交代码,但是你真的懂代码提交吗?这篇文章带领大家熟悉一下常用的代码提交方式,大家可以根据自己所在公司的开发模式对号入座。代码提交方式可以用...
读懂源码=面试offer? 前端开发想要跳槽涨薪最重要的是什么?面对大批量的竞争者究竟拥有什么能力才可以入面试官的法眼?答案是:源码,毕竟会源码的人,水平都不会差。相信最近去面试尤其是去大厂面试的朋友们都有这样的体...
在使用Git时你应该这样提交代码 1. 前言目前大部分公司都在使用 Git 作为版本控制,每个程序员每天都要进行代码的提交。很多开发者也包括我自己,有时候赶时间或者图省事,就这么提交:gitcommit-m"...
Lambda在Java开发中的实际运用经验分享 1. 前言Payment Spring Boot 1.0.4.RELEASE已经发布,在项目的推广上也有了起色,越来越多的开发者开始尝试这个新东西。今天胖哥来分享一下这个项目中Lambd...
10分钟搞定让你困惑的 Jenkins 环境变量 前言Jenkins, DevOps 技术栈的核心之一,CI/CD 离不开编写 Pipeline 脚本,上手 Jenkins ,简单查一下文档,你就应该不会被 agent,stages,s...
关于Dubbo随便问八个问题 1、RPC1.1 RPC 定义互联网公司的系统有成千上万个大大小小的服务组成,服务各自部署在不同的机器上,服务间的调用需要用到网络通信,服务消费方每调用一个服务都要写一坨网络通信相关的代...
啥?三天就可以完成一个完整的项目!? 写这篇文章的目的是想总结一下自己学习Java,和找工作的一些心得体会,主要是和提升技术,以及增加面试通过相关的,这些都是刚刚入门的Java程序员和打算入Java开发这个行当的准新手们一定...
微信支付V3实现Payment Spring Boot 1.0.4.RELEASE发布,支持商家券 Payment Spring Boot 是微信支付V3的Java实现,仅仅依赖Spring内置的一些类库。配置简单方便,可以让开发者快速为Spring Boot应用接入微信支付。❝欢迎I...
JSON转Java POJO就是这么简单快捷 1. 前言作为一名 Java 后端程序员经常会有封装一些调用第三方接口的实际需求。比如胖哥最近对微信支付 V3 的封装。❝https://github.com/NotFound403/p...
高并发场景下,到底先更新缓存还是先更新数据库? 点击关注"码农小胖哥"右上角菜单"设为星标"你会吗?在大型系统中,为了减少数据库压力通常会引入缓存机制,一旦引入缓存又很容易造成缓存和数据库数据不一致,导...
高并发高性能服务器是如何实现的 当在读这篇文章的时候,你有没有想过,服务器是怎么把这篇文章发送给你的呢?说简单也简单,不就是一个用户请求吗?服务器根据请求从数据库中捞出这篇文章,然后通过网络发回去。说复杂也复杂,服务器...
开发文件上传功能稍不注意就会引发安全漏洞 1. 前言文件上传在日常开发中十分常见,但是潜在的安全问题非常容易忽视。一旦开发中忽视了这些问题,将会引发系统安全漏洞。2. 文件上传开发的安全建议通常我们上传的文件是由客户端控制的,这...
IntelliJ IDEA启动画面的秘密:当编程遇到艺术 细心的同学会发现 Intellij IDEA 每次发版本的时候都会有不同的启动界面背景,都很比较抽象的艺术图像。2020.3的启动界面背景❝JetBrains 的其它产品也有自己独特的设...
Spring Boot 2.0 的配置绑定类Bindable居然如此强大 1. 前言在开发Spring Boot应用时会用到根据条件来向Spring IoC容器注入Bean。比如配置文件存在了某个配置属性才注入Bean :根据配置属性来动态注入Bean图中红色...
带你实现完整的视频弹幕系统 本文字数:6244字预计阅读时间:35分钟+介绍弹幕诞生于日本的视频平台,后来被B站这种短视频平台引入到国内,并在国内发展壮大。后来逐渐被长视频平台所接受,现在视频相关的应用基本上都会有...
软件开发中如何安全传输存储用户密码? 前言我们开发网站或者APP的时候,首先要解决的问题,就是「如何安全传输和存储用户的密码」。一些大公司的用户数据库泄露事件也时有发生,带来非常大的负面影响。因此,如何安全传输存储用户密码,...
让你页面速度飞起来的前端性能优化方案 性能优化对前端的重要性不用多说。特别是大厂,对性能优化尤其重视——因为每一次的优化带来的收益提升和资源节约是巨大的。如果你想要在技术方面进阶,想进入大厂获得更好的待遇和更大的发展空间,性...
为什么简单的Docker不用,去用复杂的K8S 点击关注"码农小胖哥"右上角"设为星标"好文章送达比别人快随着k8s 作为容器编排解决方案变得越来越流行,有些人开始拿 Docker 和 k8s进行对比,...
Java面试前看看一篇就不怕问Spring框架了 1 Spring核心组件一句话概括:Spring是一个轻量级、非入侵式的控制反转(IoC)和面向切面(AOP)的框架。Spring 版本JDK版本1.x1.3:引入了动态代理机制,AOP...
今天腾讯上线“新冠疫苗接种地图”,开发者申请可接入 疫苗接种路上,我们为你指路。今天,由国家卫生健康委宣传司、腾讯健康联合发布的“新冠疫苗接种地图”正式上线,需要接种新冠疫苗的用户可查询本地的新冠疫苗接种点,并便捷导航到最近的接种点。现在...
JetBrains放出Java代码质量检查工具Qodana JetBrains正在开发一种被称为Qodana的代码质量检测工具。它将JetBrains IDE具有的智能代码检查带入了项目CI/CD管道中。它可以识别代码中的错误,安全漏洞,重复项和...
2020年最后一天,今年你立的flag实现了吗 1. 你立的flag实现了吗今天是2020年最后一天,大家都努力的坚持到了现在十分不易,不知道大家立的flag实现了没有,在今年疫情期间胖哥暗自下决心粉丝突破一万,目前已经极其接近了,所...
Payment Spring Boot 1.0.2.RELEASE 发布,接入微信支付分、先享卡功能 Payment Spring Boot 是微信支付V3的Java实现,仅仅依赖Spring内置的一些类库。配置简单方便,可以让开发者快速为Spring Boot应用接入微信支付。演示例子...
老板居然让我用Java造假数据 1. 前言老板说,明天甲方要来看产品,你得搞点数据,而且数据必须是“真”的,演示效果要好看一些,这样甲方才会采购咱们的产品。一般开发接到这种过分要求都不会很乐意去做,这完全是体力劳动了,...
Spring Cloud 2020.0发布,移除了Hystrix、Zuul等Netflix组件 1. 前言2020 年 12 月 22 日Spring官方博客宣布,Spring Cloud 2020.0.0正式发布。2020.0.0是第一个使用新的版本号命名方案的Spring Cl...
Spring 的这个工具类操作对象类型真是方便 1. 前言今天在看Spring Security源码的时候无意间注意到两行代码;ResolvableTypetype=ResolvableType.forClassWithGene...
如何在Swagger2或Swagger3中增加Json Web Token 1. 前言Swagger 3.0已经发布有一段时间了,作为一个非常有用的文档工具已经越来越多的项目在使用它。而JWT也是目前前后端分离最常用的安全技术。那么如何在Swagger 3.0 ...
JDK中的这个类可以让我们安全地处理一些涉及null的操作 1. 前言Java 开发中经常要对对象进行非空判断以防止出现空指针。大部分同学都喜欢用下面这种方式来进行判断:if(obj!=null){//判断不等于空}if(ob...
K8S火了 2020,上云之年,产品云端化成为一种趋势。很多一线公司都已经构建了自己的私有云环境,比如阿里云、网易云、华为云等。而Kubernetes 在众多容器编排技术中脱颖而出,由于具备扩展集...
用Spring的这个类来读取配置文件真的是赞 1. 前言在开发中读取项目中的配置或者静态文件是家常便饭的事情,我相信很多同学都从网上找下面的例子来进行文件加载读取操作。利用ClassLoader获取classpath路径:Clas...
Java中的异常处理应该这么做 前言Java异常处理的十个建议,希望对大家有帮助~先安利下个人的支付开发包:https://notfound403.github.io/payment-spring-boot一、尽量不要...