首页
学习
活动
专区
工具
TVP
发布

关忆北.

专栏作者
237
文章
184774
阅读量
27
订阅数
利用Spring Boot实现MySQL 8.0和MyBatis-Plus的JSON查询
在现代的Web开发中,处理JSON数据已经变得无处不在,而在关系型数据库中高效地查询JSON结构变得愈发重要。MySQL 8.0结合MyBatis-Plus和Spring Boot,为管理和查询JSON数据提供了强大的工具。在本文中,我们将探讨两种使用MySQL 8.0和MyBatis-Plus在Spring Boot应用中查询JSON数据的方法。
关忆北.
2024-03-08
3010
基于Java和Spring:实现图片压缩、WebP格式转换与水印添加
大多数公司通常会拥有面向企业端(B端)和消费者端(C端)的应用,如淘宝IOS/Android端和PC端。对于C端产品而言,往往具备访问量大、数据量庞大的特点,例如类似淘宝的商品详情页,其中包含大量且尺寸较大的图片。在这种前提下,为了确保良好的用户体验,需要在保证图片质量的基础上,尽可能地压缩图片的体积。
关忆北.
2024-02-25
2340
优化MyBatis查询条件:从Boolean类型判断到<choose>标签的进化
作为一名Java CRUD Coder,日常开发中会遇到类似的需求:通过下拉列表选择“是”或“否”来对数据库中的数据进行筛选。如果此时前端的传参是boolean类型的true和false,后端Mapper层的代码可能会遇到需要构造类似if (param.existFlag) and table.id not in (xxxx1,xxxx2)这样的条件查询,如果你们的ORM框架使用的是MyBatis/MyBatis Plus,请看下文内容。
关忆北.
2024-02-20
2910
深入分析 Spring 中 Bean 名称的加载机制
通过前文:《深入分析-Spring BeanDefinition构造元信息》一文我们可以了解到:Spring Framework共有三种方式可以定义Bean,分别为:XML配置文件、注解、Java配置类, 从Spring Framework 3.0(2019年12月发布)版本开始推荐使用注解来定义Bean,而不是XML配置文件,因此,本文的重点是放在探索Spring Framework如何从使用注解定义的Bean元数据中获取到Bean的名称。
关忆北.
2024-01-14
1400
深入分析-Spring BeanDefinition构造元信息
Bean Definition是一个包含Bean元数据的对象。它描述了如何创建Bean实例、Bean属性的值以及Bean之间的依赖关系。可以使用多种方式来定义 Bean Definition 元信息,包括:
关忆北.
2024-01-08
1620
探秘Spring中的BeanDefinition:每个Bean都是一个独特的“小镇居民”
在Spring框架中,核心思想之一就是将应用程序中的各种组件,例如对象、服务、数据源等,都抽象为Spring Bean,并将它们注册到Spring容器中。这种注册的方式提供了一种基于IoC(Inversion of Control,控制反转)的管理方式,即不再由应用程序主动去创建和管理对象,而是由Spring容器负责管理和注入这些对象。
关忆北.
2024-01-05
660
MapStruct @Mapping注解:优雅处理映射中的Null值
在Java开发中,对象之间的映射是一项常见而又重要的任务。MapStruct作为一款强大的对象映射框架,通过简化映射代码的编写,提高了开发效率。然而,在实际应用中,我们经常面临源对象或目标对象中存在Null值的情况。本文将深入探讨MapStruct中@Mapping注解的一些特性,特别是在映射过程中如何优雅处理Null值。
关忆北.
2023-12-28
5510
Spring Framework中BeanFactory与ApplicationContext的关系与区别
beans和context是Spring Framework的IoC容器的基础。BeanFactory接口提供了一种高级配置机制,能够管理任何类型的对象。
关忆北.
2023-12-24
1370
深入了解ThreadLocal:避免内存泄漏的陷阱与最佳实践
多线程编程中,数据共享与隔离一直是开发者需要面对的挑战之一。而Java中的ThreadLocal提供了一种优雅的解决方案,允许每个线程都拥有自己独立的数据副本,从而避免了共享数据带来的线程安全问题。然而,正如事物总有两面性一样,ThreadLocal也存在一些潜在的陷阱,尤其是与内存泄漏相关的问题。
关忆北.
2023-12-13
3820
2023年终总结-轻舟已过万重山
我来自孔孟故里山东济宁,也许是小学时的某一天,我第一次接触到了电脑,从此对它产生了强烈的兴趣,高中我有一个愿望:成为一名计算机从业者。18岁的我踏入北上的列车,进入我的大学生活。可录取通知书上并非我期待的那样:被计算机学院录取从此踏上编码的快车道。
关忆北.
2023-12-10
2180
SUM函数在SQL中的值处理原则
然而,在使用SUM函数时,对于字段中的NULL值,需要特别注意其处理原则,以确保计算结果的准确性。下面将详细介绍SUM函数在不同情况下对NULL值的处理方式。
关忆北.
2023-12-08
1410
深入解析ThreadPoolTaskExecutor的阻塞队列技术选型
在Java高级开发领域,线程池是一项关键的技术,能够有效地管理和调度多线程任务。Spring Framework 提供了一个强大的线程池实现,即org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor。在这篇博客中,我们将专注于探讨该线程池的阻塞队列,深入了解其种类、特性以及适用的业务场景。
关忆北.
2023-12-07
2090
你离高级开发只差这些IntelliJ IDEA Debug使用技巧
IntelliJ IDEA,由JetBrains(捷克共和国)开发的一款强大的Java集成开发环境(IDE),因其丰富的功能、智能的代码辅助以及用户友好的界面设计,在全球范围内广受Java开发者的喜爱,在国内,笔者遇到过不使用IDEA的Java程序员不超过三个。不仅限于Java,IntelliJ IDEA还支持多种其他编程语言和框架,如Kotlin、Scala、Groovy以及Android开发等,这进一步扩大了其用户基础。其社区版是免费的,而专业版则提供了更为高级的功能。
关忆北.
2023-12-05
2630
MySQL find_in_set函数的深入解析与应用
在数据库操作中,我们经常会遇到需要处理以逗号分隔的字符串,并且需要根据这些字符串进行查询的情况。MySQL提供了一个非常实用的函数FIND_IN_SET()来处理这种特定的查询需求。本文将深入解析FIND_IN_SET()函数的使用方法,并通过具体的应用场景来展示其强大功能。
关忆北.
2023-12-05
2930
订单场景-基于Redisson实现订单号生成
订单、指定长度随机码生成是业务系统中重要且不可避免的一个需求,往往在电商系统中,业务量、并发量庞大,如何不重复、快速、安全的生成一个订单号成了需要重点考虑的问题。这篇文章我将举一个实际的订单号生成需求,来和大家一起探究基于Redisson实现订单号的生成。
关忆北.
2023-12-02
2170
数据库设计范式
数据库设计是构建可靠和高效系统的关键步骤之一。设计范式是一种规范,它帮助开发人员减少数据冗余、提高数据一致性和完整性。本文将探讨数据库设计范式的重要性,并通过基于MySQL的表设计示例来佐证其应用。
关忆北.
2023-12-01
1920
利用Spring Boot实现客户端IP地理位置获取
在当今互联的世界中,了解客户端的地理位置对于提供个性化服务和增强用户体验至关重要。无论是根据地区偏好定制内容,还是确保符合本地法规,访问客户端IP位置都是一项宝贵的资产。如抖音评论区、用户页都会展示用户的IP属地信息。
关忆北.
2023-11-30
5900
Spring Framework IoC依赖注入-按Bean类型注入
Spring Framework 作为一个领先的企业级开发框架,以其强大的依赖注入(Dependency Injection,DI)机制而闻名。DI使得开发者可以更加灵活地管理对象之间的关系,而不必过多关注对象的创建和组装。在Spring Framework中,依赖注入可以分为两种类型:根据Bean名称注入、根据Bean类型注入,在本文中,我们将聚焦于 Spring 中的一种依赖注入方式——按类型注入,并通过一个简单的示例来说明其使用和优势。
关忆北.
2023-11-22
1310
Spring Framework IOC依赖查找 - 按类型查找解析
在Spring框架中,控制反转(IoC)是一种设计模式,它通过将对象的创建和管理交给容器来实现。依赖查找是IoC的一部分,它允许你从容器中查找所需的依赖项。按类型进行依赖查找是其中的一种方式,今天来讲Spring Framework中通过类型查找。
关忆北.
2023-11-21
1090
Spring Framework IOC依赖查找 - 按名称查找解析
在Spring Framework中,实时加载和延迟加载是指在容器启动时是否立即实例化bean的不同策略。下面我们将分别介绍这两种加载方式及其应用场景。
关忆北.
2023-11-20
960
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档