- 博客(19)
- 收藏
- 关注
原创 我把Solon打包成了native image,速度快的惊人
Solon + GraalVM native image 无论是启动速度,还有内存占用,都能让你眼前一亮
2023-04-17 22:58:44
1199
原创 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
3964
原创 ShardingSphere jdbc集成多数据源
最近有个项目的几张表,数量级在千万以上,技术栈是SpringBoot+Mybatis-plus+MySQL。如果使用单表,在进行查询操作,非常耗时,经过一番调研,决定使用分表中间件:ShardingSphere。ShardingSphere今年4月份成为了 Apache 软件基金会的顶级项目,目前支持数据分片、读写分离、多数据副本、数据加密、影子库压测等功能,同时兼容多种数据库,通过可插拔架构,理想情况下,可以做到对业务代码无感知。ShardingSphere下有两款成熟的产品:sharding jdb
2020-08-02 13:39:35
6740
6
原创 一个好用的springboot starter是如何炼成的?
本文以调度中间件PowerJob为例,介绍为什么要自定义一个start?start是做什么用的?如何去定义一个start?带着这些疑问,会对starter理解的更深刻。1. 背景最近在研究一个调度中间件PowerJob:新一代分布式任务调度与计算框架。在研究其框架原理的同时,我发现在SpringBoot应用中使用PowerJob,需要手动构造他的配置类:作为新一代调度中间件,怎么能没有一个好用的 Spring Boot starter (以下简称starter)呢?所以,决定为PowerJob.
2020-07-27 00:29:44
484
原创 Swagger2进阶:集成统一认证和SpringSecurity的登录接口
Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。SpringBoot集成Swagger之后,在Controller层添加相应的注解,即可生成接口文档,在前后端的项目中广泛使用。统一认证在具体的项目中,大部分资源都是被保护的(参考:Spring Boot优雅的集成Spring Security),那怎么在Swagger页面设置全局的登录Token呢?Swagger提供了SecurityScheme抽象类,来专门解决认证的问题,其下有3个实现.
2020-06-21 11:41:20
7718
6
原创 谈谈我的云笔记使用之路
我的第一款云笔记有道云笔记。最初使用的时候,是为了记录各种网站的密码,感觉自己记性不好,又有点强迫症,在注册任何网站用户之前,先把想好的账号密码记到笔记里,现在任何网站登录的时候,我都先翻下有道,准能找到。近几年,也是图省事,有些账户密码直接存到Google账户里了,但这个习惯却是保留了下来。大量使用有道云笔记,是刚工作那会,技术总监对我们算是放养式,只要按点交活就行,就有了很多自由的时间去鼓捣,每尝试一次新技术、遇到一个bug,都详细的记录下来,也没想着给谁看,就觉得以后再遇到同样的问题,有个文档能参
2020-05-22 21:51:32
1007
原创 Spring Security密码登录流程源码分析
初识Spring Security是通过SecuriyFilterChains过滤器链来保证应用安全的,而这些过滤器链由FilterChainProxy(本质上是个Filter)来管理,每个uri都对应一个SecurityFilterChain,即对应SecurityFilterChain中的Filters。FilterChainProxy中由SecurityFilterChain维护了很多Filter,debug进入可以看到:SpringSecurity的密码登录就是由UsernamePasswo
2020-05-22 21:44:02
361
原创 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
4704
8
原创 SpringBoot中如何优雅的使用多线程
本文带你快速了解@Async注解的用法,包括异步方法无返回值、有返回值,最后总结了@Async注解失效的几个坑。在 SpringBoot 应用中,经常会遇到在一个接口中,同时做事情1,事情2,事情3,如果同步执行的话,则本次接口时间取决于事情1 2 3执行时间之和;如果三件事同时执行,则本次接口时间取决于事情1 2 3执行时间最长的那个,合理使用多线程,可以大大缩短接口时间。那么在 Spri...
2020-04-22 17:50:25
2273
原创 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
453
原创 介绍 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
1748
原创 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
2567
原创 前言(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
405
原创 介绍个好用的内网穿透工具:nps
最早开始接触内网穿透,是在调试微信支付的时候,微信需要回调一个公网地址,经过一番搜索,我选用了 natapp,优点是有免费隧道,缺点是公网域名和端口是随机分配的,偶尔调试用下还可以。后来,因为要映射公司和家里 Windows 远程连接的端口,natapp 那种随机域名和端口的服务,不满足我的需求。这时 frp 出现在可选列表里,只需要一台公网服务器,就可以搭建,通过服务端和客...
2020-04-19 15:21:36
6861
4
原创 Docker运行常用软件,亲测
使用Docker可以快速搭建你的开发环境,以下是我经常用到的几个常用软件。文章的最后会总结下使用docker run的套路。默认的,Docker会从官方的 Docker Hub 拉取镜像,国内用户想要提升访问 Docker Hub 拉取镜像的速度及稳定性,需要配置镜像站,这里使用的是DaoCloud的镜像站以Linux系统为例:$ curl -sSL https://...
2020-04-19 15:04:01
1625
原创 利用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
5449
原创 spring4.3.7整合quartz2.2.3
项目背景首先引入Quartz的jar包在数据库中建立Quartz相关的表新建Quartz相关的配置文件quartzproperties整合Spring和Quartz添加定时任务作为示例service只写了一个方法接口就不写了定时任务具体的业务逻辑重点来了 因项目需要,在SSM中整合quartz,其中遇到了几处很坑的地方,作为记录,方便以后查看。项
2018-01-27 19:23:01
3383
原创 Spring MVC中用@ResponseBody转json,字段为NULL或者为空不参加序列化方法汇总
Spring MVC中,在controller层使用@ResponseBody返回json时,我这里使用的是jackson。在使用@ResponseBody注解时,返回的对象中,有的字段为空,如果想字段为空时,或者字段为默认值时,不返回该字段。有一下三种方法:1. 在实体类上添加注解;2. 在配置文件中配置;3. 在代码中
2017-12-14 13:47:38
14740
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人