
深入浅出SpringBoot原理及实战
文章平均质量分 92
主要集中于SpringBoot的技术生态特性以及相关的SpringBoot的实战使用方案等
码界西柚
优酷资深工程师 | INTJ | 狮子座 | 高洞察力理性自律小i人,
著作《深入浅出Java虚拟机—JVM原理与实战》,
10年以上开发经验,参与设计过多个大型互联网项目,定期分享技术干货和项目经验,
希望大家可以多多支持我,点赞关注一下
展开
-
【SpringBoot技术专题】「开发实战系列」Undertow web容器的入门实战及调优方案精讲
Undertow 是红帽公司开发的一款基于 NIO 的高性能 Web 嵌入式服务器,红帽公司(RedHat)的开源产品,且是 WildFly8(JBoss)默认的 Web 服务器.;译文: Undertow是一个用java编写的灵活的高性能Web服务器,提供基于NIO的阻塞和非阻塞API。Undertow非常轻量级,Undertow核心jar包在1Mb以下。它在运行时也是轻量级的,有一个简单的嵌入式服务器使用少于4Mb的堆空间。原创 2024-01-21 12:40:37 · 1581 阅读 · 1 评论 -
【SpringBoot实战专题】「开发实战系列」深入迁出探索剖析SpringBoot服务容器特性的利器之Actuator(Web端点)
Spring Boot的Actuator模块在生产环境中为应用程序提供了关键的监控和度量功能。这些功能主要通过REST端点、远程shell和JMX等技术实现,其中REST端点是最为人们所熟知的,并且提供了全面的功能集。通过Actuator,开发人员可以轻松地管理和监控运行中的Spring Boot应用程序,确保其稳定性和性能。原创 2024-01-14 15:10:28 · 1155 阅读 · 1 评论 -
【SpringBoot实战专题】「开发实战系列」全方位攻克你的技术盲区之Spring定义Jackson转换Null的方法和实现案例
自定义的,它是一个继承自的序列化器,用于处理值为null的情况。在serialize方法中,我们将使用自定义的对象来替代值为null的字段进行序列化。因此,我们可以通过自定义ObjectMapper和注册自定义的序列化器来在转换过程中添加我们需要的控制逻辑。上述的示例代码展示了如何在WebConfig配置类中实现这一点,通过注册自定义的序列化器实现对特定字段null值的转换为默认值。在类中,我们定义了一个包含一个名为def的列表字段,用于存储默认值。原创 2024-01-06 18:05:14 · 1303 阅读 · 2 评论 -
【Spring技术专题】「实战开发系列」保姆级教你SpringBoot整合Mybatis框架实现多数据源的静态数据源和动态数据源配置落地
接下来,我们需要配置Mybatis。我们需要为每个数据源创建一个SqlSessionFactory。// application.properteis中对应属性的前缀// application.properteis中对应属性的前缀/*** 默认数据源*/// 设置数据源名// 获取数据源名// 清除数据源名。原创 2023-12-16 11:25:52 · 1007 阅读 · 1 评论 -
【SpringBoot实战专题】「开发实战系列」全方位攻克你的技术盲区之SpringBoot整合众多日志管理系统服务starter-logging
Spring Boot可以使用多种日志记录工具,例如Logback、Log4J2和Java util logging等。其中,Spring Boot默认使用Logback作为日志记录工具,并将日志输出到控制台,也可以输出到文件中。您可以通过添加spring-boot-starter-logging依赖来引入Logback,而在添加其他任何Spring Boot starter时,Spring Boot都会默认引入spring-boot-starter-logging依赖,因此您无需单独添加该依赖。原创 2023-06-13 21:00:00 · 823 阅读 · 1 评论 -
【SpringBoot技术专题】「实战系列」针对Spring注解@ConditionalOnExpression详细使用说明
通过Spring框架进行判断的Bean,Class是否存在,配置参数是否存在或者有某个值而言,这个依赖SPEL表达式的,就显得更加的高级了;其主要就是执行Spel表达式,根据返回的true/false来判断是否满足条件。至于SPEL是什么东西,下面以一个简单的demo进行演示它的使用姿势。/**原创 2023-01-28 21:23:20 · 2407 阅读 · 2 评论 -
【SpringBoot技术专题】「开发实战系列」一起搭建属于自己的SpringBoot Admin的技术要素
SpringBoot Admin是开源社区孵化的项目,用于对SpringBoot应用的管理和监控。SpringBoot Admin 分为服务端(spring-boot-admin-server)和客户端(spring-boot-admin-client),服务端和客户端之间采用http通讯方式实现数据交互;单体项目中需要整合spring-boot-admin-client才能让应用被监控。原创 2022-12-28 09:31:52 · 703 阅读 · 0 评论 -
【SpringBoot技术专题】「实战指南」从实战开发角度去分析操作RestTemplate的应用及使用技巧
当你的应用程序需要访问远程接口时,很容易被不同的浏览器和API调用协议弄晕。幸运的是,Spring框架已为我们提供了一个简单而功能强大的RestTemplate工具,它可以轻松地处理这些基础任务并提供一个简单的方式来访问各种API。RestTemplate是Spring Framework中的一个用于RESTful Web Services的HTTP客户端,是Spring Web模块中的一部分。使用RestTemplate,我们可以消费Web服务,发送HTTP请求,并的到HTTP响应。原创 2023-04-09 18:42:49 · 4130 阅读 · 1 评论 -
【SpringBoot技术专题】「JWT技术专区」带你一同开发SpringSecurity整合JWT授权和认证实战指南
Spring 中实现 JWT 授权和密码认证的步骤,同时学习了如何安全地保存用户信息。原创 2023-01-25 20:19:25 · 699 阅读 · 0 评论 -
【SpringBoot技术专题】「StateMachine」StateMachine状态机设计及实现开发学习指南
本文主要介绍一下状态机以及相关的一些概念。结合一个简单的订单状态流程,示例怎样在Springboot中集成。原创 2023-01-15 15:40:06 · 8203 阅读 · 0 评论 -
【SpringBoot技术专题】「开发实战系列」全面梳理和分析一下相关的Web核心配置
在这的addViewControllers 方法,并不会覆盖Web MvcAutoConfiguration 中的addViewControllers,也就是我们自己的配置和Spring Boot 的自动配置同时有效,这是推荐的MVC 配置的方式。如果既需要保留Spring Boot 提供的便利,又需要增加自己的额外的配置的时候,可以定义一个配置类并继承WebMvcConfigurer Adapter,无须使用@EnableWebMvc 注解。定义一个View 的Bean ,名称为jsonView。原创 2022-12-28 09:36:44 · 4628 阅读 · 0 评论 -
【SpringBoot实战专题】「开发实战系列」从零开始教你舒服的使用RedisTemplate操作Redis数据
该方法将给定对象 t 序列化为二进制数据,及字节数组。注意:对象 t 和返回值可以为 null。默认是JDK的序列化策略,这里配置redisTemplate采用的是Jackson2JsonRedisSerializer的序列化策略,参数为redisConnectionFactory。原创 2023-01-09 03:45:00 · 933 阅读 · 1 评论 -
彩蛋推荐 |【SpringBoot技术专题】「Tomcat技术专区」用正确的姿势如何用外置tomcat配置及运行(Tomcat优化分析)
可能是用户真是ip也可能是代理服务器的ipx-forwarded-for:代表客户端,也就是HTTP的请求端真实的IP,只有在通过了HTTP代理或者负载均衡服务器时才会添加该项:X-Forwarded-For:简称XFF头,它代表客户端,也就是HTTP的请求端真实的IP只有在通过了HTTP 代理或者负载均衡服务器时才会添加该项标准格式如下:X-Forwarded-For: client_ip, proxy1_ip, proxy2_ip(所以取第一个值即可)原创 2023-01-28 21:17:28 · 662 阅读 · 0 评论 -
【SpringBoot技术专题】「开发实战系列」动态化Quartz任务调度机制+实时推送任务数据到前端
SpringBoot2.0整合quartz实现多定时任务动态配置,实现任务增删改,生成Cron表达式。原创 2023-01-01 20:31:21 · 1142 阅读 · 1 评论 -
【SpringBoot技术专题】「实战开发系列」带你一同探索Shiro整合JWT授权和认证实战开发
首先要继承 AuthorizingRealm 类来自定义我们自己的 realm 以进行我们自定义的身份,权限认证操作。记得要 Override 重写 doGetAuthenticationInfo 和 doGetAuthorizationInfo 两个方法(两个方法名很相似,不要搞错)@Autowired/*** 获取身份验证信息* Shiro中,最终是通过 Realm 来获取应用程序中的用户、角色及权限信息的。原创 2023-01-25 20:14:25 · 567 阅读 · 0 评论