pdai
码龄17年
求更新 关注
提问 私信
  • 博客:90,864
    社区:12
    问答:386
    动态:214
    91,476
    总访问量
  • 60
    原创
  • 333
    粉丝
  • 16
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:中国
加入CSDN时间: 2009-03-03

个人简介:10+,海归,外资100强,专家研究员

博客简介:

pdai的博客

博客描述:
Java全栈知识体系 https://www.pdai.tech
查看详细资料
个人成就
  • 获得71次点赞
  • 内容获得24次评论
  • 获得551次收藏
  • 代码片获得150次分享
  • 博客总排名552,003名
创作历程
  • 30篇
    2022年
  • 9篇
    2021年
  • 8篇
    2020年
  • 8篇
    2019年
  • 5篇
    2018年
成就勋章
TA的专栏
  • SpringBoot
    21篇
  • Spring框架
    14篇
  • Tomcat源码
    3篇
  • 知识体系
    14篇
  • 常用类库
    1篇
  • 单元测试
    1篇
  • mongodb
    1篇
  • redis
    1篇
  • Java重构技巧
    2篇
  • 博客建站
    1篇
  • 并发编程
    1篇
  • 开发工具
    2篇
  • 技术调研
    2篇
  • 后端模板
    1篇
  • Web
    1篇
  • 认证
    1篇
  • 读书笔记
    2篇

TA关注的专栏 0

TA关注的收藏夹 0

TA关注的社区 0

TA参与的活动 1

兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    spring架构
  • 搜索
    elasticsearch
  • 服务器
    linux
创作活动更多

AI 镜像开发实战征文活动

随着人工智能技术的飞速发展,AI 镜像开发逐渐成为技术领域的热点之一。Stable Diffusion 3.5 FP8 作为强大的文生图模型,为开发者提供了更高效的图像生成解决方案。为了推动 AI 镜像开发技术的交流与创新,我们特此发起本次征文活动,诚邀广大开发者分享在 Stable Diffusion 3.5 FP8 文生图方向的实战经验和创新应用 本次征文活动鼓励开发者围绕 Stable Diffusion 3.5 FP8 文生图方向,分享以下方面的内容: 1. 技术实践与优化 - Stable Diffusion 3.5 FP8 模型架构解析与优化技巧 - 文生图生成效果的提升方法与技巧 - 模型部署与加速策略,例如使用 Hugging Face、Diffusers 等工具 - 针对特定场景(例如二次元、写实风)的模型微调与定制化开发 2. 应用场景探索 - Stable Diffusion 3.5 FP8 在不同领域的应用案例分享,例如游戏设计、广告创意、艺术创作等 - 利用 Stable Diffusion 3.5 FP8 实现图像编辑、图像修复、图像增强等功能的探索 - 结合其他 AI 技术(例如 NLP、语音识别)构建更强大的应用 3. 创新应用与思考 - 基于 Stable Diffusion 3.5 FP8 的创新应用场景设计 - AI 镜像开发的未来发展方向的思考与展望 - 对 AI 镜像开发伦理、安全等问题的探讨

28人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

SpringBoot定时任务 - Spring自带的定时任务是如何实现的?有何注意点?

通过前文我们基本梳理了定时任务体系:Timer和ScheduledExecutorService是JDK内置的定时任务方案,以及Netty内部基于时间轮实现的HashedWheelTimer,再到Quartz以及分布式任务(ElasticJob,xxl-job等等)。对于Springboot简单应用,还可以采用Spring自带task方式,本文主要介绍Spring自带的Task的案例和其实现方式。@pdai。...
原创
博文更新于 2022.08.05 ·
545 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

SpringBoot定时任务 - 开箱即用分布式任务框架xxl-job

XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。如下内容来源于xxl-job官网1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,一分钟上手;2、动态:支持动态修改任务状态、启动/停止任务,以及终止运行中任务,即时生效;3、调度中心HA(中心式):调度采用中心式设计,“调度中心”自研调度组件并支持集群部署,可保证调度中心HA;...
原创
博文更新于 2022.08.03 ·
547 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

SpringBoot定时任务 - 什么是ElasticJob?如何集成ElasticJob实现分布式任务调度?

使用 ElasticJob 能够让开发工程师不再担心任务的线性吞吐量提升等非功能需求,使他们能够更加专注于面向业务编码设计; 同时,它也能够解放运维工程师,使他们不必再担心任务的可用性和相关管理需求,只通过轻松的增加服务节点即可达到自动化运维的目的。ElasticJob-Lite: 定位为轻量级无中心化解决方案,使用 jar 的形式提供分布式任务的协调服务。Elasticjob-lite的案例- SpringBoot集成定时任务 - 分布式Elasticjob-lite方式ElasticJob-Cloud:
原创
博文更新于 2022.08.02 ·
522 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

SpringBoot定时任务 - 集成quartz实现定时任务(单实例和分布式两种方式)

Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的程序。Jobs可以做成标准的Java组件或 EJBs。它的特点如下注: 上图来源于https://www.cnblogs.com/jijm123/p/14240320.html当程序突然被中断时,如断电,内存超出时,很有可能造成任务的丢失。 可以将调度信息存储到数据库里面,进行持
原创
博文更新于 2022.08.01 ·
3288 阅读 ·
4 点赞 ·
2 评论 ·
16 收藏

SpringBoot集成文件 - 如何基于POI-tl和word模板导出庞大的Word文件?

如下内容来源于,poi-tl官网。poi-tl(poitemplatelanguage)是Word模板引擎,使用Word模板和数据创建很棒的Word文档。优势它还支持自定义插件,如下是官网代码仓库支持的特性Feature✅Text✅Picture✅Table✅Chart✅Markdown✅WordSDT✅Textbox✅Style✅Merge。...
原创
博文更新于 2022.07.31 ·
1414 阅读 ·
1 点赞 ·
0 评论 ·
14 收藏

一文深入浅出理解国产开源木兰许可系列协议

木兰系列许可证包含“木兰宽松许可证”和“木兰公共许可证”(后续可能还有更多),均由北京大学作为牵头单位,依托全国信标委云计算标准工作组和中国开源云联盟,联合开源生态圈产学研优势团队和个体、尤其是开源法务和律师,起草、修订并发布。木兰开源许可证第一个版本于2019年8月5日发布,第二版本于2020年1月发布。PSMulanPSL是国内首个被OSI认定的“国产开源软件协议”。MulanPSLv2版本通过OSI认证,是否意味着v1本身就不符合开源定义,在开源生态中不具有实际意义?。...
原创
博文更新于 2022.07.21 ·
1951 阅读 ·
0 点赞 ·
0 评论 ·
11 收藏

SpringBoot数据库管理 - 用flyway对数据库管理和迁移

Flyway是一款数据库迁移(migration)工具。简单点说,就是在你部署应用的时候,帮你执行数据库脚本的工具。Flyway支持SQL和Java两种类型的脚本,你可以将脚本打包到应用程序中,在应用程序启动时,由Flyway来管理这些脚本的执行,这些脚本被Flyway称之为migration。PS本质上和liquibase机制一致。按照verion的顺序(和数据库中的更新记录对比,找到未更新的),更新如下更新记录如下。...
原创
博文更新于 2022.07.20 ·
683 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

SpringBoot数据库管理 - 用Liquibase对数据库管理和迁移?

Liquibase是一个用于用于跟踪、管理和应用数据库变化的开源工具,通过日志文件(changelog)的形式记录数据库的变更(changeset),然后执行日志文件中的修改,将数据库更新或回滚(rollback)到一致的状态。它的目标是提供一种数据库类型无关的解决方案,通过执行schema类型的文件来达到迁移。其优点主要有以下支持几乎所有主流的数据库,目前支持包括Oracle/SqlServer/DB2/MySql/Sybase/PostgreSQL等各种数据库为何会出现Liquibase这类工具呢。..
原创
博文更新于 2022.07.19 ·
393 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

SpringBoot接口 - API接口有哪些不安全的因素?如何对接口进行签名?

**}
原创
博文更新于 2022.07.18 ·
1199 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

SpringBoot接口 - 如何生成接口文档之非侵入方式(通过注释生成)Smart-Doc?

smart-doc是一款同时支持JAVARESTAPI和ApacheDubboRPC接口文档生成的工具,smart-doc在业内率先提出基于JAVA泛型定义推导的理念,完全基于接口源码来分析生成接口文档,不采用任何注解侵入到业务代码中。你只需要按照java-doc标准编写注释,smart-doc就能帮你生成一个简易明了的Markdown、HTML5、PostmanCollection2.0+、OpenAPI3.0+的文档。零注解、零学习成本、只需要写标准JAVA注释。...
原创
博文更新于 2022.07.15 ·
332 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SpringBoot接口 - 如何生成接口文档之Swagger技术栈?

OpenAPI 规范(OAS)定义了一个标准的、语言无关的 RESTful API 接口规范,它可以同时允许开发人员和操作系统查看并理解某个服务的功能,而无需访问源代码,文档或网络流量检查(既方便人类学习和阅读,也方便机器阅读)。正确定义 OAS 后,开发者可以使用最少的实现逻辑来理解远程服务并与之交互。此外,文档生成工具可以使用 OpenAPI 规范来生成 API 文档,代码生成工具可以生成各种编程语言下的服务端和客户端代码,测试代码和其他用例。官方GitHub地址: OpenAPI-Specificat
原创
博文更新于 2022.07.14 ·
296 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SpringBoot接口 - 如何优雅的写Controller并统一异常处理?

如果我们不统一的处理异常,经常会在controller层有大量的异常处理的代码, 比如:那怎么实现统一的异常处理,特别是结合参数校验等封装?对于400参数错误异常对于自定义异常对于其它异常Controller接口(接口中无需处理异常)运行测试这里用postman测试下[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DH0L3pwF-1657668397711)(https://pdai.tech/_images/spring/springboot/springbo
原创
博文更新于 2022.07.13 ·
480 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SpringBoot接口 - 如何优雅的对参数进行校验?

后端对前端传过来的参数也是需要进行校验的,如果在controller中直接校验需要用大量的if else做判断以添加用户的接口为例,需要对前端传过来的参数进行校验, 如下的校验就是不优雅的:针对这个普遍的问题,Java开者在Java API规范 (JSR303) 定义了Bean校验的标准validation-api,但没有提供实现。hibernate validation是对这个规范的实现,并增加了校验注解如@Email、@Length等。Spring Validation是对hibernate vali
原创
博文更新于 2022.07.12 ·
325 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

SpringBoot接口 - 如何优雅的对接口返回内容统一封装?

Representational State Transfer,翻译是“表现层状态转化”。可以总结为一句话:REST 是所有 Web 应用都应该遵守的架构设计指导原则。面向资源是 REST 最明显的特征,对于同一个资源的一组不同的操作。资源是服务器上一个可命名的抽象概念,资源是以名词为核心来组织的,首先关注的是名词。REST 要求,必须通过统一的接口来对资源执行各种操作。对于每个资源只能执行一组有限的操作。符合 REST 设计标准的 API,即 RESTful API。REST 架构设计,遵循的各项标准和准
原创
博文更新于 2022.07.11 ·
465 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SpringBoot开发 - 什么是热部署和热加载?devtool的原理是什么?

严格意义上,我们需要区分下热部署和热加载, 对于Java项目而言:热部署热加载LiveLoad是提供浏览器客户端自动加载更新的工具,分为LiveLoad服务器和Liveload浏览器插件两部分; devtools中已经集成了LiveLoad服务器,所以如果我们开发的是web应用,并且期望浏览器自动刷新, 这时候可以考虑LiveLoad.同一时间只能运行一个LiveReload服务器。 开始应用程序之前,请确保没有其他LiveReload服务器正在运行。如果从IDE启动多个应用程序,则只有第一个应用程序将支持
原创
博文更新于 2022.07.10 ·
554 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

SpringBoot开发 - 如何定制自己的Banner?还能用图片?

我们在启动Spring Boot程序时,有如下Banner信息:那么如何自定义成自己项目的名称呢?在application.yml中添加配置在resource下创建banner.txt,内容自定义:修改后,重启的app的效果SpringApplication还可以设置自定义的Banner的接口类[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4SGYeFwx-1657363965931)(https://pdai.tech/_images/spring/springboo
原创
博文更新于 2022.07.09 ·
829 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

[推荐]深入浅出学习Spring框架系列

本系列主要介绍Spring框架整体架构,Spring的核心IOC,AOP的案例和具体实现机制;以及SpringMVC框架的案例和实现机制。
原创
博文更新于 2022.07.07 ·
236 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

Spring框架系列(14) - SpringMVC实现原理之DispatcherServlet处理请求的过程

前文我们有了IOC的源码基础以及SpringMVC的基础,我们便可以进一步深入理解SpringMVC主要实现原理,包含DispatcherServlet的初始化过程和DispatcherServlet处理请求的过程的源码解析。本文是第二篇:DispatcherServlet处理请求的过程的源码解析。...
原创
博文更新于 2022.07.06 ·
476 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Spring框架系列(13) - SpringMVC实现原理之DispatcherServlet的初始化过程

前文我们有了IOC的源码基础以及SpringMVC的基础,我们便可以进一步深入理解SpringMVC主要实现原理,包含DispatcherServlet的初始化过程和DispatcherServlet处理请求的过程的源码解析。本文是第一篇:DispatcherServlet的初始化过程的源码解析。...
原创
博文更新于 2022.07.05 ·
529 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

Spring框架系列(12) - Spring AOP实现原理详解之JDK代理实现

JDK动态代理是有JDK提供的工具类Proxy实现的,动态代理类是在运行时生成指定接口的代理类,每个代理实例(实现需要代理的接口)都有一个关联的调用处理程序对象,此对象实现了InvocationHandler,最终的业务逻辑是在InvocationHandler实现类的invoke方法上。jdk代理不需要任何依赖。定义实体User被代理的类和接口接口如下实现类如下:JDK代理类代理类如下:使用代理启动类中指定代理目标并执行。简单测试我们启动上述类main 函数,执行的结果如下:JDK
原创
博文更新于 2022.07.04 ·
252 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多