自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

读钓的博客

公众号:读钓的YY

  • 博客(19)
  • 收藏
  • 关注

原创 我把Solon打包成了native image,速度快的惊人

Solon + GraalVM native image 无论是启动速度,还有内存占用,都能让你眼前一亮

2023-04-17 22:58:44 1108

原创 Spring Native实战

话说Java的“一次编写,到处运行”,让其从众多语言中脱颖而出,但这个优势已经被容器大幅度地削弱,随着云原生时代的到来,我们对镜像体积、内存消耗、启动速度等提出了新的要求,而这些恰恰是Java的弱点。本文代码和生成的二进制文件都在GitHub和Gitee上:https://github.com/dudiao/native-demohttps://gitee.com/songyinyin/native-demohttps://hub.docker.com/r/dudiao/native-demo.

2022-03-21 09:30:00 3877

原创 ShardingSphere jdbc集成多数据源

最近有个项目的几张表,数量级在千万以上,技术栈是SpringBoot+Mybatis-plus+MySQL。如果使用单表,在进行查询操作,非常耗时,经过一番调研,决定使用分表中间件:ShardingSphere。ShardingSphere今年4月份成为了 Apache 软件基金会的顶级项目,目前支持数据分片、读写分离、多数据副本、数据加密、影子库压测等功能,同时兼容多种数据库,通过可插拔架构,理想情况下,可以做到对业务代码无感知。ShardingSphere下有两款成熟的产品:sharding jdb

2020-08-02 13:39:35 6577 6

原创 一个好用的springboot starter是如何炼成的?

本文以调度中间件PowerJob为例,介绍为什么要自定义一个start?start是做什么用的?如何去定义一个start?带着这些疑问,会对starter理解的更深刻。1. 背景最近在研究一个调度中间件PowerJob:新一代分布式任务调度与计算框架。在研究其框架原理的同时,我发现在SpringBoot应用中使用PowerJob,需要手动构造他的配置类:作为新一代调度中间件,怎么能没有一个好用的 Spring Boot starter (以下简称starter)呢?所以,决定为PowerJob.

2020-07-27 00:29:44 459

原创 Swagger2进阶:集成统一认证和SpringSecurity的登录接口

Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。SpringBoot集成Swagger之后,在Controller层添加相应的注解,即可生成接口文档,在前后端的项目中广泛使用。统一认证在具体的项目中,大部分资源都是被保护的(参考:Spring Boot优雅的集成Spring Security),那怎么在Swagger页面设置全局的登录Token呢?Swagger提供了SecurityScheme抽象类,来专门解决认证的问题,其下有3个实现.

2020-06-21 11:41:20 7395 5

原创 谈谈我的云笔记使用之路

我的第一款云笔记有道云笔记。最初使用的时候,是为了记录各种网站的密码,感觉自己记性不好,又有点强迫症,在注册任何网站用户之前,先把想好的账号密码记到笔记里,现在任何网站登录的时候,我都先翻下有道,准能找到。近几年,也是图省事,有些账户密码直接存到Google账户里了,但这个习惯却是保留了下来。大量使用有道云笔记,是刚工作那会,技术总监对我们算是放养式,只要按点交活就行,就有了很多自由的时间去鼓捣,每尝试一次新技术、遇到一个bug,都详细的记录下来,也没想着给谁看,就觉得以后再遇到同样的问题,有个文档能参

2020-05-22 21:51:32 952

原创 Spring Security密码登录流程源码分析

初识Spring Security是通过SecuriyFilterChains过滤器链来保证应用安全的,而这些过滤器链由FilterChainProxy(本质上是个Filter)来管理,每个uri都对应一个SecurityFilterChain,即对应SecurityFilterChain中的Filters。FilterChainProxy中由SecurityFilterChain维护了很多Filter,debug进入可以看到:SpringSecurity的密码登录就是由UsernamePasswo

2020-05-22 21:44:02 331

原创 SpringBoot前后端分离项目,集成Spring Security(完整版)

本文讲解使用SpringBoot版本:2.2.6.RELEASE,Spring Security版本:5.2.2.RELEASEJava流行的安全框架有两种Apache Shiro和Spring Security,其中Shiro对于前后端分离项目不是很友好,最终选用了Spring Security。SpringBoot提供了官方的spring-boot-starter-security,能够方便的集成到SpringBoot项目中,但是企业级的使用上,还是需要稍微改造下,本文实现了如下功能:匿名用户.

2020-05-12 23:05:16 4640 8

原创 SpringBoot中如何优雅的使用多线程

本文带你快速了解@Async注解的用法,包括异步方法无返回值、有返回值,最后总结了@Async注解失效的几个坑。在 SpringBoot 应用中,经常会遇到在一个接口中,同时做事情1,事情2,事情3,如果同步执行的话,则本次接口时间取决于事情1 2 3执行时间之和;如果三件事同时执行,则本次接口时间取决于事情1 2 3执行时间最长的那个,合理使用多线程,可以大大缩短接口时间。那么在 Spri...

2020-04-22 17:50:25 2235

原创 Spring Cloud Stream 主要概念 - Spring Cloud Stream中文文档(四)

本文为Spring Cloud Stream文档的中文翻译,原文地址:https://cloud.spring.io/spring-cloud-static/spring-cloud-stream/3.0.3.RELEASE/reference/html/spring-cloud-stream.html另外,Spring Cloud 版本:Hoxton.SR3,支持的 Spring Boot...

2020-04-19 16:03:29 427

原创 介绍 Spring Cloud Stream - Spring Cloud Stream中文文档(三)

本文为Spring Cloud Stream文档的中文翻译,原文地址:https://cloud.spring.io/spring-cloud-static/spring-cloud-stream/3.0.3.RELEASE/reference/html/spring-cloud-stream.html另外,Spring Cloud 版本:Hoxton.SR3,支持的 Spring Boot...

2020-04-19 15:54:00 1157

原创 Spring Cloud Stream 3.0 新特性 - Spring Cloud Stream中文文档(二)

本文为Spring Cloud Stream文档的中文翻译,原文地址:https://cloud.spring.io/spring-cloud-static/spring-cloud-stream/3.0.3.RELEASE/reference/html/spring-cloud-stream.html另外,Spring Cloud 版本:Hoxton.SR3,支持的 Spring Boot...

2020-04-19 15:48:07 2521

原创 前言(Preface)- Spring Cloud Stream中文文档(一)

本文为Spring Cloud Stream文档的中文翻译,原文地址:https://cloud.spring.io/spring-cloud-static/spring-cloud-stream/3.0.1.RELEASE/reference/html/spring-cloud-stream.html另外,Spring Cloud 版本:Hoxton.SR3,支持的 Spring Boot...

2020-04-19 15:32:19 356

原创 介绍个好用的内网穿透工具:nps

最早开始接触内网穿透,是在调试微信支付的时候,微信需要回调一个公网地址,经过一番搜索,我选用了 natapp,优点是有免费隧道,缺点是公网域名和端口是随机分配的,偶尔调试用下还可以。后来,因为要映射公司和家里 Windows 远程连接的端口,natapp 那种随机域名和端口的服务,不满足我的需求。这时 frp 出现在可选列表里,只需要一台公网服务器,就可以搭建,通过服务端和客...

2020-04-19 15:21:36 6677 4

原创 Docker运行常用软件,亲测

使用Docker可以快速搭建你的开发环境,以下是我经常用到的几个常用软件。文章的最后会总结下使用docker run的套路。默认的,Docker会从官方的 Docker Hub 拉取镜像,国内用户想要提升访问 Docker Hub 拉取镜像的速度及稳定性,需要配置镜像站,这里使用的是DaoCloud的镜像站以Linux系统为例:$ curl -sSL https://...

2020-04-19 15:04:01 1555

原创 利用spring-core Util包中的Assert优雅的判断字符串、对象或者集合不为空

一般我们在Service中,判断字符串或对象不为空,会用相关的工具类来判断,比如Hutool的包,然后再抛个异常public List<Td42CaseFlow> getListByCaseKey(String caseKey) { if (StrUtil.isEmpty(caseKey)) { throw new BusinessException("案例编...

2018-12-11 23:35:07 5274

原创 spring4.3.7整合quartz2.2.3

项目背景首先引入Quartz的jar包在数据库中建立Quartz相关的表新建Quartz相关的配置文件quartzproperties整合Spring和Quartz添加定时任务作为示例service只写了一个方法接口就不写了定时任务具体的业务逻辑重点来了 因项目需要,在SSM中整合quartz,其中遇到了几处很坑的地方,作为记录,方便以后查看。项

2018-01-27 19:23:01 3354 1

原创 服务器部署多个Tomcat

腾讯云上部署多个tomcat实例

2017-12-14 13:56:11 351

原创 Spring MVC中用@ResponseBody转json,字段为NULL或者为空不参加序列化方法汇总

Spring MVC中,在controller层使用@ResponseBody返回json时,我这里使用的是jackson。在使用@ResponseBody注解时,返回的对象中,有的字段为空,如果想字段为空时,或者字段为默认值时,不返回该字段。有一下三种方法:1. 在实体类上添加注解;2. 在配置文件中配置;3. 在代码中

2017-12-14 13:47:38 14532

空空如也

空空如也

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

TA关注的人

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