微笑听雨。
码龄8年
关注
提问 私信
  • 博客:711,778
    711,778
    总访问量
  • 117
    原创
  • 12,454
    排名
  • 2,486
    粉丝
  • 23
    铁粉
  • 学习成就

个人简介:在职全栈工程师。拥有多年系统架构和物联网研发经验!在博客中分享个人的技术总结,希望帮助更多IT朋友成长

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:河南省
  • 加入CSDN时间: 2017-04-21
博客简介:

微笑听雨

博客描述:
一名专注于 Java 开发的工程师。工作期间,积累了丰富的项目经验,擅长 Java 并发编程、Spring 框架和微服务架构。这个博客主要分享我的技术学习笔记、实战经验和最佳实践,希望能帮助更多人提升编程技能。
查看详细资料
  • 原力等级
    成就
    当前等级
    5
    当前总分
    1,480
    当月
    44
个人成就
  • Java领域新星创作者
  • 获得2,114次点赞
  • 内容获得205次评论
  • 获得1,982次收藏
  • 代码片获得3,190次分享
创作历程
  • 108篇
    2024年
  • 3篇
    2023年
  • 3篇
    2022年
  • 3篇
    2021年
成就勋章
TA的专栏
  • java 进阶教程
    60篇
  • 大数据
    3篇
  • netty最全教程
    12篇
  • 中间件
    10篇
  • linux
    2篇
  • db
    12篇
  • 微服务
    10篇
  • maven
    3篇
  • nginx实战
    2篇
兴趣领域 设置
  • 大数据
    mysqlredis
  • 前端
    javascriptcssvue.jswebpack前端框架
  • 后端
    springnode.js架构
  • 网络与通信
    https
  • 搜索
    elasticsearch
  • 运维
    jenkinsdevops自动化
  • 服务器
    linuxcentos
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

使用 MySQL 从 JSON 字符串提取数据

在现代数据库管理中,JSON 格式因其灵活性而广泛使用。然而,当数据存储在 JSON 中时,我们经常需要将其转换为更易于处理的格式。本篇文章将通过一个具体的 SQL 查询示例,展示如何从存储在 MySQL 中的 JSON 字符串提取数据并重新格式化。
原创
发布博客 2024.10.21 ·
933 阅读 ·
25 点赞 ·
0 评论 ·
18 收藏

redis连接工具 redis-desktop-manager

发布资源 2024.09.23 ·
rar

深入探讨 Maven 循环依赖问题及其解决方案

循环依赖指的是两个或多个项目(或模块)之间相互依赖,形成一个循环。这意味着项目 A 依赖于项目 B,项目 B 又依赖于项目 A,形成了一个依赖环。这种情况可能涉及多个项目,形成复杂的依赖链。例如,假设有两个模块ModuleA和ModuleBModuleA的pom.xml
原创
发布博客 2024.08.08 ·
1951 阅读 ·
34 点赞 ·
2 评论 ·
26 收藏

深入解析MySQL执行计划:详细优化建议与示例分析

EXPLAIN语句用于显示MySQL查询优化器生成的查询执行计划。它提供了关于查询执行过程中各个阶段的信息,帮助识别性能瓶颈并进行优化。优化MySQL查询性能的关键在于有效地利用执行计划(EXPLAIN)来识别并解决潜在的瓶颈。通过分析EXPLAIN输出中的每一列(如id、select_type、table、type等),可以获取有关查询执行过程的重要信息。针对这些信息,我们可以实施具体的优化策略,如创建合适的索引、优化查询重写、调整统计信息、利用缓存机制以及处理特定的查询问题等。关键优化建议包括索引优化。
原创
发布博客 2024.08.07 ·
1312 阅读 ·
16 点赞 ·
0 评论 ·
28 收藏

深入解析 Nginx 反向代理:配置、优化与故障排除

本文详细解析了 Nginx 反向代理的基础概念、工作原理、高级配置、性能优化技巧以及常见问题的解决方案。反向代理在现代 Web 架构中扮演着至关重要的角色,它不仅可以实现负载均衡、提升安全性、缓存内容,还能够处理 SSL 终止,从而减轻后端服务器的负担。负载均衡:有效分配流量,提升系统的可靠性和性能。增强安全性:隐藏后端服务器,防止直接攻击。缓存静态内容:加快响应速度,提高用户体验。优化连接和超时设置:通过连接池和超时配置,优化与后端服务器的通信。启用压缩:减少传输数据大小,加快响应速度。
原创
发布博客 2024.08.06 ·
3918 阅读 ·
31 点赞 ·
16 评论 ·
53 收藏

Java 设计模式之桥接模式(Bridge Pattern)

桥接模式(Bridge Pattern)是一种用于将抽象部分与其实现部分分离的结构型设计模式。这种模式通过组合关系而不是继承关系来连接抽象与实现,使代码更具扩展性和维护性。桥接模式的核心思想是将抽象和实现解耦,使得两者可以独立变化。桥接模式(Bridge Pattern)是一种结构型设计模式,旨在将抽象部分与其实现部分分离,从而使两者可以独立地变化。桥接模式通过组合关系代替继承关系,将抽象和实现解耦,使代码更具扩展性和维护性。
原创
发布博客 2024.08.05 ·
1644 阅读 ·
33 点赞 ·
3 评论 ·
11 收藏

深度对比:MySQL、Oracle、PostgreSQL 和 Kingbase 四大数据库系统的架构、功能与性能分析

在当今的数据驱动时代,选择合适的数据库系统对于企业的成功至关重要。MySQL、Oracle、PostgreSQL 和 Kingbase 是市场上最受欢迎的四种关系型数据库管理系统,各自具有独特的特性、优势和应用场景。本文将深入对比这四大数据库系统,从基本概述、架构和设计、SQL 标准支持、扩展性和性能、安全性、工具和支持、价格和许可、社区和文档支持,以及使用场景等九个方面进行详细分析。通过对它们的底层原理和技术细节的深入探讨,帮助读者理解它们的核心差异,并为数据库选择和优化提供宝贵的参考。
原创
发布博客 2024.08.03 ·
3825 阅读 ·
33 点赞 ·
21 评论 ·
18 收藏

人大金仓(Kingbase)数据库高阶函数详解

本文深入探讨了人大金仓(Kingbase)数据库中的高阶函数,包括递归查询、数学函数、集合操作符、字符串函数、JSON 函数、时间函数、聚合函数、地理空间函数和窗口函数。每种函数的介绍都配备了详细的示例和解释,以展示其实际应用和操作细节。这些高阶函数不仅扩展了数据处理的能力,还使得复杂的数据分析和操作变得更加高效和灵活。通过掌握这些函数,开发者能够更好地处理层级数据、进行数学运算、操作字符串和JSON数据、处理时间信息、执行聚合分析、处理地理空间数据,以及利用窗口函数进行高级统计分析。
原创
发布博客 2024.08.03 ·
2933 阅读 ·
21 点赞 ·
5 评论 ·
33 收藏

PostgreSQL 高阶函数详解:全面深入的功能与实用示例

本文详细介绍了 PostgreSQL 的各种高阶函数,涵盖了递归查询、数学函数、集合操作符、字符串函数、JSON 函数、时间函数、聚合函数以及地理空间函数。每个类别下的函数都配有详细的示例代码和解释,以帮助你更好地理解和应用这些功能。通过掌握这些高阶函数,你可以更高效地处理和分析数据,满足复杂的数据处理需求。无论是处理层次结构数据、进行数学计算、操作字符串、管理 JSON 数据、处理时间和日期、进行数据汇总,还是处理地理空间数据,PostgreSQL 的高阶函数都能为你提供强大的支持。
原创
发布博客 2024.08.02 ·
1311 阅读 ·
26 点赞 ·
1 评论 ·
15 收藏

Oracle 高阶函数与高级功能详解

Oracle 高阶函数提供了丰富的数据操作和分析功能,能够极大地提升 SQL 查询的灵活性和效率。本文将详细介绍一些常用的 Oracle 高阶函数,包括分析函数、窗口函数、集合操作符、递归查询、正则表达式函数,以及字符串函数、日期和时间函数、数学函数等。
原创
发布博客 2024.08.02 ·
2156 阅读 ·
32 点赞 ·
9 评论 ·
35 收藏

MySQL 8.0 高阶函数详解

MySQL 8.0 引入了丰富的高阶函数,这些函数极大地增强了数据库处理和操作的灵活性与效率。每个函数都配有详细的解释和实际应用的示例,帮助您全面掌握 MySQL 8.0 高阶函数的使用方法,从而在实际工作中高效地处理和查询数据库数据。
原创
发布博客 2024.08.01 ·
1368 阅读 ·
26 点赞 ·
7 评论 ·
16 收藏

Java 设计模式之策略模式 (Strategy Pattern) 详解

策略模式通过将算法的选择和实现分离,使得算法可以独立变化,客户端代码可以更简洁和灵活。策略模式(Strategy Pattern)是一种行为型设计模式,旨在定义一系列算法,将每个算法封装起来,并使它们可以互相替换,从而使得算法的变化不会影响使用算法的客户端。策略模式的主要结构包括策略接口、具体策略类和上下文类,通过将算法的选择与使用分离,实现了代码的可维护性和灵活性。通过策略模式和工厂模式的结合,可以实现一个灵活、可扩展且易于维护的支付系统。通过策略模式,可以根据用户选择的支付方式动态切换支付策略。
原创
发布博客 2024.08.01 ·
1702 阅读 ·
16 点赞 ·
11 评论 ·
19 收藏

Java设计模式之工厂模式

工厂模式(Factory Pattern)是创建型设计模式之一,旨在提供一个创建对象的接口,而不是直接通过 `new` 关键字来实例化对象。工厂模式在提高代码的可维护性、可扩展性和灵活性方面具有显著优势。
原创
发布博客 2024.07.31 ·
4033 阅读 ·
28 点赞 ·
6 评论 ·
51 收藏

Java 设计模式之单例模式

单例模式是一种创建型设计模式,它确保一个类只有一个实例,并提供了一种访问该实例的全局方法。这种模式有助于确保系统中的某些组件只有一个实例,并提供了一种方便的方法来访问该实例。
原创
发布博客 2024.07.31 ·
2233 阅读 ·
26 点赞 ·
2 评论 ·
17 收藏

全面解析Maven构建生命周期:阶段、作用与示例

Maven生命周期是指一系列有序的构建阶段(phases),这些阶段定义了构建过程的步骤。每个阶段代表构建过程中一个具体的任务。例如,编译源码、运行单元测试、打包成可分发的格式等。默认生命周期(Default Lifecycle):主要用于项目的构建,包含编译、测试、打包等。清理生命周期(Clean Lifecycle):用于项目的清理工作,如删除先前的构建结果。站点生命周期(Site Lifecycle):用于创建和发布项目站点文档。每个生命周期包含多个阶段。
原创
发布博客 2024.07.30 ·
1734 阅读 ·
10 点赞 ·
4 评论 ·
14 收藏

【Drools】(三)基于业务数据动态调用 DRL 规则文件:详细实现与测试指南

DRL(Drools Rule Language)文件是用来编写规则的文件格式,基于 DRT 规则模板动态配置生成 DRL 规则文件((一)基于业务需求动态生成 DRT 规则模板:事实与动作定义详解),我们可以根据不同的业务场景创建定制化的规则,提高业务规则配置的灵活性和效率。下面是:(二)基于业务需求动态生成 DRL 规则文件:事实与动作定义详解endstate: intendwhenthen。
原创
发布博客 2024.07.30 ·
1411 阅读 ·
18 点赞 ·
6 评论 ·
18 收藏

【Drools】(二)基于业务需求动态生成 DRL 规则文件:事实与动作定义详解

在现代业务规则管理系统中,灵活高效地生成和管理规则至关重要。通过动态生成 DRL(Drools Rule Language)规则文件,可以根据业务需求自定义和调整规则,从而提高业务的灵活性和响应速度。本文将详细介绍如何根据业务需求动态生成 DRL 规则文件,并结合示例界面图和代码进行说明。以下图示展示了一个规则编辑界面,包含了规则信息和规则设置两个部分:以下代码演示了如何根据业务需求动态生成 DRL 规则文件。代码通过读取 JSON 格式的规则定义,过滤和转换数据,然后使用 Drools 提供的 来生成
原创
发布博客 2024.07.29 ·
1414 阅读 ·
16 点赞 ·
6 评论 ·
15 收藏

【Drools】(一)基于业务需求动态生成 DRT 规则模板:事实与动作定义详解

在业务规则管理中,DRT 文件(Drools Rule Template)用于定义和重用规则模板,这些模板可以动态地根据实际业务需求进行填充和生成。通过动态生成 DRT 文件,我们可以根据不同的业务场景创建定制化的规则,从而提高业务规则配置的灵活性和效率。本文将介绍如何根据事实和动作定义动态生成 DRT 规则模板文件,并提供详细的代码注释,以帮助理解其生成过程。!
原创
发布博客 2024.07.29 ·
1668 阅读 ·
43 点赞 ·
16 评论 ·
18 收藏

深入解析 Java 的 switch 语句

switch语句适用于对单个变量的多个可能值进行判断,代码更加简洁和清晰。使用break语句可以避免“穿透”问题。Java 12 引入的switch表达式使得switch语句更加简洁和功能强大。yield关键字在 Java 13 中被引入,用于从switch表达式的分支中返回值,使得代码更加灵活。理解并解决常见问题,可以更有效地使用switch语句。通过本文的详细介绍,希望你对 Java 的switch语句有了更深入的了解,能够在实际编程中灵活运用这一强大的控制流语句。
原创
发布博客 2024.07.26 ·
4085 阅读 ·
29 点赞 ·
9 评论 ·
27 收藏

广度优先搜索(BFS)与深度优先搜索(DFS)详解

在实际应用中,选择BFS还是DFS取决于具体问题的要求和图的结构特性。如果需要遍历整个图或者处理深度较大的图,优先选择DFS。广度优先搜索(BFS)和深度优先搜索(DFS)是图算法中两个基本的遍历方法。深度优先搜索从起始节点开始,沿着一条路径不断深入,直到不能继续为止,然后回溯到上一节点,继续探索其他路径。广度优先搜索从起始节点开始,逐层遍历图中的所有节点,优先访问距离起始节点最近的节点。以一个更复杂的图为例,进一步对比BFS和DFS的行为。这两个算法在遍历顺序上的不同反映了它们各自的特性和适用场景。
原创
发布博客 2024.07.26 ·
995 阅读 ·
6 点赞 ·
0 评论 ·
9 收藏
加载更多