摘要: 【主流技术】日常工作中关于 JSON 转换的经验大全(Java) 不知道大家在 Java 日常开发中是否会经常遇到关于 JSON 的各种转换的场景,我把自己日常工作中遇到的 JSON转换场景做了一个总结,希望可以对大家有帮助。 注:本文都是基于阿里的 fastjson 来讲解操作的。 阅读全文
posted @ 2024-03-11 16:56 CodeBlogMan 阅读(1528) 评论(0) 推荐(3)
摘要: 【专业技能】程序员的软件工程素养之画好 UML 时序图 笔者在本科的时候上过软件工程的专业课,虽然也完成过类似的课堂作业,但是工作以后一直没怎么用上。碰巧前段时间有碰到一个复杂系统的部分功能设计,作为设计文档的一部分,时序图也被我拿起来派上用场了。 阅读全文
posted @ 2024-03-05 10:48 CodeBlogMan 阅读(2771) 评论(0) 推荐(7)
摘要: 【进阶篇】使用 Redis 实现分布式缓存的全过程思考(一) 在笔者近 3 年的 Java 一线开发经历中,尤其是一些移动端、用户量大的互联网项目,经常会使用到 Redis 分布式缓存作为解决高并发的基本工具。但在使用过程中也有一些潜在的问题是必须要考虑的,比如:数据一致性、缓存穿透和雪崩、高可用集群等等。 阅读全文
posted @ 2024-02-27 14:11 CodeBlogMan 阅读(2660) 评论(0) 推荐(3)
摘要: 【解决方案】Java 互联网项目如何防止集合堆内存溢出(一) OOM 几乎是笔者工作中遇到的线上 bug 中最常见的,一旦平时正常的页面在线上出现页面崩溃或者服务无法调用,查看服务器日志后你很可能会看到“Caused by: java.lang.OutOfMlemoryError: Java heap space” 这样的提示,那么毫无疑问表示的是 Java 堆内存溢出了。 阅读全文
posted @ 2024-02-20 14:30 CodeBlogMan 阅读(1120) 评论(2) 推荐(3)
摘要: 【进阶篇】Java 实际开发中积累的几个小技巧(一) 笔者目前从事一线 Java 开发今年是第 3 个年头了,从 0-1 的 SaaS、PaaS 的项目做过,多租户下定制化开发项目也做过,项目的 PM 也做过... 在实际的开发中积累了一些技巧和经验,包括线上 bug 处理、日常业务开发、团队开发规范等等。现在在这里分享出来,作为成长的记录和知识的更新,希望与大家共勉。 阅读全文
posted @ 2024-02-04 15:19 CodeBlogMan 阅读(3499) 评论(18) 推荐(15)
摘要: 【深度思考】一线开发大头兵对于工作的感悟分享 笔者目前有两段工作经历,都是在一线当开发大头兵,职级倒是随着跳槽而有所上升。做过从0-1的SaaS、PaaS的自研项目,也做过基于多租户的标准化项目,还有过半年的 PM 的经历...这些都让我有了一些关于工作上的感悟。现在简单总结一下,拿出来和大家做分享交流。 阅读全文
posted @ 2024-01-29 09:37 CodeBlogMan 阅读(16413) 评论(79) 推荐(141)
摘要: 【解决方案】如何使用 Http API 代替 OpenFeign 进行远程服务调用 看到标题大家可能会有点疑惑吧:OpenFeign 不是挺好用的吗?尤其是微服务之间的远程调用,平时用的也挺习惯的,为啥要替换呢? 阅读全文
posted @ 2024-01-22 14:16 CodeBlogMan 阅读(1879) 评论(10) 推荐(3)
摘要: 【进阶篇】使用 Stream 流和 Lambda 组装复杂父子树形结构 在最近的开发中,遇到了两个类似的需求:都是基于 Stream 的父子树形结构操作,返回 List 集合对象给前端。于是在经过需求分析和探索实践后有了新的认识,现在拿出来和大家作分享交流。 阅读全文
posted @ 2024-01-15 17:14 CodeBlogMan 阅读(2106) 评论(8) 推荐(7)
摘要: 【解决方案】MySQL 百万数据迁移到 ElasticSearch 的思考 在日常项目开发中,可能会遇到使用 ES 做关键词搜索的场景,但是一般来说业务数据是不会直接通过 CRUD 写进 ES 的。 因为这可能违背了 ES 是用来查询的初衷,数据持久化的事情可以交给数据库来做。那么,这里就有一个显而易见的问题:ES 里的数据从哪里来? 本文介绍的就是如何将 MySQL 的表数据迁移到 ES 的全过程。 阅读全文
posted @ 2023-12-06 15:23 CodeBlogMan 阅读(2690) 评论(4) 推荐(8)
摘要: 【主流技术】详解 SpringBoot 集成 ElasticSearch7.x 全过程 ElasticSearch 简称 es,是一个开源的高扩展的分布式全文检索引擎,目前最新版本已经到了8.11.x了。 它可以近乎实时的存储、检索数据,且其扩展性很好,是企业级应用中较为常见的检索技术。 下面主要记录学习 ElasticSearch7.x 的一些基本结构、在Spring Boot 项目里基本应用的过程,在这里与大家作分享交流。 阅读全文
posted @ 2023-11-22 17:29 CodeBlogMan 阅读(4027) 评论(0) 推荐(1)
摘要: 【主流技术】一文掌握 Redis 在 Java 中的 5 大基本结构应用 Redis 是目前互联网后端的热门中间件之一,在许多方面都有深度的应用,作为后端开发熟练掌握该技术是十分有必要的。 Redis 的五种数据类型是:1、String(字符串);2、Hash(哈希);3、List(列表);4、Set(集合);5、Sort Set (有序集合)。其余的用的比较少,本文暂不涉及。其中,String(字符串)是 Redis 中最基本的数据类型,一个 Key 对应一个 Value。 阅读全文
posted @ 2023-11-10 10:30 CodeBlogMan 阅读(752) 评论(0) 推荐(0)
摘要: 【主流技术】MongoTemplate 与 Spring Boot 项目集成(附CURD技巧) MongoTemplate 是Spring Data MongoDB 中的一个核心类,为 Spring 与 MongoDB 数据库的交互提供了丰富的功能集。 MongoTemplate 提供了创建、更新、删除和查询 MongoDB 文档的便利操作,并提供了编程语言的领域对象(POJO)和 MongoDB 文档之间的映射。 阅读全文
posted @ 2023-09-25 09:49 CodeBlogMan 阅读(890) 评论(0) 推荐(1)
摘要: 【项目管理】敏捷项目每日站会中的四大“坑” 每日站会(Daily Standup)是团队统一节奏的、在固定时间发生的、帮助团队内部快速同步进展的敏捷实践活动。 阅读全文
posted @ 2023-08-23 17:59 CodeBlogMan 阅读(753) 评论(0) 推荐(2)
摘要: 【设计模式】分享 Java 开发中常用到的设计模式(一) 不知道大家在开发的时候,有没有想过(遇到)这些问题: 1、大家都是按需要开发,都是一个职级的同事,为什么有些人的思路就很清晰,代码也很整洁、易懂;而自己开发,往往不知道怎么下手设计,写完了也是bug一堆,codeReview的时候更是频频被怼... 2、感觉每天都是CURD,写重复的代码,做类似的需求,怎么才能提高自己的水平? 3、每每看到大佬的代码,或者优秀框架的源码,总是似懂非懂,怀疑自己是不是缺少了哪些知识? 阅读全文
posted @ 2023-08-09 10:33 CodeBlogMan 阅读(785) 评论(2) 推荐(2)
摘要: 在最近的互联网项目开发中,需要获取用户的访问ip信息,并进行后续统计分析。 这些ip信息是在第三方的服务中分组存放的,且每个分组都都是分页(1页10条)存放的,如果一次性访问大量的数据,API很有可能会报错。 怎样通过HTTP的方式去获取到信息,并且模拟浏览器每页每页获取10条的信息,且持久到数据库中,就成了当下亟需解决的问题。 阅读全文
posted @ 2023-05-30 10:49 CodeBlogMan 阅读(875) 评论(0) 推荐(0)