自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(80)
  • 收藏
  • 关注

原创 Java实现根据地址获取经纬度(基于高德地图API)

本文介绍如何通过Java调用高德地图API,将具体地址转换为经纬度坐标。通过简单的代码示例演示完整的地址解析流程,并提供可直接复用的工具类。

2025-03-03 10:11:18 561

原创 Nacos 知识点全解析:微服务架构的核心组件

(Naming and Configuration Service)作为阿里巴巴开源的服务治理平台,凭借其轻量级、高可用、易扩展的特性,成为微服务生态中的重要工具。:微服务启动时向 Nacos Server 注册自己的信息(如 IP、端口、健康状态)。:消费者通过 Nacos Server 查询可用服务列表,实现服务间的动态调用。:通过监听机制(长轮询)实现配置的实时推送,无需重启服务。:支持服务实例的动态注册、健康检查及服务列表的实时推送。:提供统一的配置中心,支持配置的动态更新与版本管理。

2025-02-12 11:20:55 1387

原创 java 并发编程

提供了更强的同步保证,适用于需要保护整个方法或代码块的情况。volatile更适合于简单的状态标志或者那些不需要考虑原子性的简单变量更新场景。选择哪种方式取决于具体需求以及希望如何管理并发访问。在某些情况下,可能还需要结合使用其他并发工具,例如类,以提供更加高效的解决方案。

2025-02-11 17:48:21 213

原创 Java中的垃圾回收(GC)机制是如何工作

Java的垃圾回收机制通过一系列复杂的算法来确保应用程序能够高效地使用内存资源。虽然开发者不需要直接管理内存,但是了解这些机制有助于编写更高效的代码,并能更好地诊断和解决与内存相关的性能问题。例如,理解对象的生命周期可以帮助我们设计出更适合GC行为的数据结构和算法,减少不必要的对象创建和销毁,从而提高应用的整体性能。

2025-02-11 09:41:27 714

原创 横扫Spring Boot面试!高频面试题深度解析(附答案)

实战示例@Bean在下创建。

2025-02-10 09:35:20 952

原创 Spring Boot从入门到精通:核心知识点+实战指南

以开发一个短信服务Starter为例:创建@Bean。

2025-02-10 08:51:32 1171

原创 MyBatis面试题解析

在Java开发中,MyBatis作为一个优秀的持久层框架,常常是面试中的重点考察内容。

2025-02-08 09:19:51 512

原创 MyBatis面试题解析

在Java开发中,MyBatis作为一个优秀的持久层框架,常常是面试中的重点考察内容。

2025-02-08 09:18:35 888

原创 MyBatis 知识点解析

MyBatis 是一款优秀的持久层框架,在 Java 开发中应用广泛。它通过将 SQL 语句与 Java 代码分离,简化了数据库操作,提高了开发效率。

2025-02-08 09:13:48 735

原创 常见的 Redis 面试题

【代码】常见的 Redis 面试题。

2025-01-02 11:01:09 847

原创 Redis 入门与实战指南

Redis(Remote Dictionary Server)即远程字典服务器,它不仅仅是一个简单的键值对存储系统,更是一个支持多种数据类型的内存数据库。它可以用来构建缓存层、消息队列、会话管理等解决方案,广泛应用于各类 Web 应用和服务中。Redis 以其出色的性能和灵活的功能成为现代 Web 开发不可或缺的一部分。希望通过本文的介绍,你能对 Redis 有一个较为全面的认识,并在未来的项目中充分发挥它的优势。当然,学习永无止境,随着技术的发展,Redis 也会不断推出新的特性和改进。

2025-01-02 10:28:54 1013

原创 数据库交互--JDBC编程

JDBC(Java Database Connectivity)是Java语言中用来规范客户端程序如何访问数据库的应用程序接口,它提供了诸如查询和更新数据库中数据的方法。通过JDBC,Java应用程序可以与各种类型的SQL数据库进行交互。JDBC的核心思想在于提供了一套标准API,使得开发者能够编写独立于具体数据库的代码,而具体的实现细节则由各个数据库厂商提供的驱动程序来完成。

2024-12-16 10:10:46 587

原创 JVM--性能调优

性能调优是指通过一系列的技术手段和策略,对系统、应用或服务进行优化,以提高其运行效率、响应速度和整体性能的过程。这一过程旨在用更少的资源提供更好的服务,实现成本利益的最大化。为了达到这样的目标,性能调优通常涉及硬件、操作系统、应用程序等多个层面的调整与优化。

2024-12-16 09:51:29 722

原创 JVM--类加载机制

类加载机制是Java虚拟机(JVM)运行时动态加载类的过程,确保了程序在执行过程中所需的类能够被正确加载到内存中。这一过程不仅包括将编译后的.class文件转换为内存中的类实例,还涉及到对这些类数据的校验、准备、解析和初始化等步骤。下面我们将深入探讨类加载机制的具体内容。

2024-12-12 13:51:54 868

原创 JVM--垃圾回收机制

垃圾回收机制(Garbage Collection,简称GC)是Java虚拟机(JVM)中的一项关键技术,它自动管理程序运行时产生的内存分配与释放,从而减轻了程序员手动管理内存的负担,并减少了由于错误的内存管理而导致的问题。GC的核心任务是在不影响应用程序正常运作的前提下,识别并回收不再使用的对象所占用的内存空间。

2024-12-12 13:46:54 1011

原创 JVM--JVM内存模型

JVM(Java虚拟机)内存模型是理解Java应用程序运行时行为的关键,它定义了Java程序在执行期间如何管理内存。根据Java虚拟机规范,JVM的内存主要分为五个部分:程序计数器、Java虚拟机栈、本地方法栈、堆以及方法区。随着JDK版本的发展,特别是从JDK 8开始,方法区的概念发生了变化,引入了元空间(Metaspace)。

2024-12-11 10:23:24 691

原创 Java核心语言特性--注解

要创建自己的注解,必须使用@interface关键字来定义一个新的接口形式的注解。每个定义的方法实际上代表了一个配置参数,而返回值则定义了该参数的数据类型。此外,还可以为这些参数设置默认值。在这个例子中,是一个自定义注解,它有一个名为value的参数,默认值为。当应用此注解时,可以选择是否指定这个参数的具体值。

2024-12-11 09:55:38 374

原创 Java核心语言特性--泛型

泛型(Generics)是Java语言中的一个重要特性,它允许开发者编写可以处理多种数据类型的代码,而无需为每种类型都单独实现一遍逻辑。泛型最早出现在JDK 5中,它的引入极大地增强了Java的表达能力和灵活性,同时也提高了代码的安全性和可读性。

2024-12-10 08:48:37 732

原创 Java--手机号、身份证号脱敏

【代码】Java--手机号、身份证号脱敏。

2024-12-09 16:47:02 167

原创 Java核心语言特性--输入输出流

输入输出流(I/O Streams)是Java编程语言中用于处理数据传输的基础组件,它们提供了从程序到外部资源(如文件、网络连接或内存)之间进行数据交换的标准方式。在Java中,所有的I/O操作都是基于流的,这意味着无论是读取还是写入数据,都必须通过某种类型的流来完成。根据数据流动的方向,流可以分为输入流和输出流;依据传输单位的不同,则有字节流与字符流之分。

2024-12-09 13:54:12 297

原创 Java核心语言特性--多线程与并发

多线程与并发(Concurrency)是Java编程中的重要主题,它们允许程序在同一时间处理多个任务,从而提高应用程序的效率和响应速度。在Java中,实现多线程的方式主要包括通过Thread类、Runnable接口创建线程,以及使用更高级别的抽象如框架来管理和调度线程池。此外,Java还提供了诸如LockCondition和Atomic类等工具来帮助开发者更好地控制并发行为,确保线程安全。

2024-12-09 13:49:37 384

原创 Java核心语言特性--异常处理

除了内置的异常类型外,Java还允许用户自定义异常。通过继承Exception或其他异常类,可以根据业务需求创建更加具体的异常类型,从而提高代码的可读性和维护性。例如,在复杂业务环境下,Java自带的异常可能无法满足所有业务需求,这时就可以自定义异常来进行对业务异常的处理。

2024-12-09 11:04:48 1125

原创 Java核心语言特性--Java集合框架

Java集合框架(Collections Framework)是Java中用于表示和操作集合的一套统一架构,它提供了一系列接口、实现类以及工具方法,极大地简化了开发者处理集合数据的方式。根据提供的资料,我们可以深入探讨List、Set、Map等主要接口及其常见的实现类。

2024-12-09 10:53:15 408

原创 Java核心语言特性--面向对象编程

抽象是从具体的事物中抽取共同特征的过程,目的是为了简化问题域。在Java中,抽象可以通过抽象类和接口来实现。抽象类包含至少一个没有具体实现的方法(抽象方法),并且不能被实例化。接口则是一组抽象方法的集合,任何实现了该接口的类都必须提供这些方法的具体实现。抽象有助于提高代码的复用性和模块化程度。

2024-12-09 10:45:07 405

原创 Nacos面试题

在Nacos中,主要关注的是一致性和可用性两个方面。创建配置集:在控制台左侧导航栏中点击“配置列表”,然后点击“新建配置”,填写配置的 Group(配置组)和 Data ID(配置项名称),选择命名空间(如果有多个命名空间),输入配置内容,并点击“发布”。分布式配置共享:Nacos 具有配置共享的功能,可以在不同的环境和集群之间共享配置,方便多个应用程序之间的联合开发和配置管理。服务发现和注册:Nacos 提供了服务注册和发现功能,可以轻松地将服务注册到Nacos服务器,并在需要时发现和调用这些服务。

2024-04-01 10:12:00 892

原创 递归算法掌握

递归算法在某些情况下可以很方便地解决问题,特别是对于问题的结构具有递归性质的情况。但是,递归算法也有一些缺点,例如递归调用会带来函数调用的开销,递归深度过大时可能导致栈溢出等问题。因此,在使用递归算法时需要谨慎处理递归的边界条件和递归深度。递归算法是一种自我调用的算法,在算法中,函数会调用自身来解决子问题,直到达到基本情况。递归算法通常将问题分解为更小的子问题,然后通过解决这些子问题来解决原始问题。方法通过递归实现了递减输出序列的功能。方法则通过递归计算了n的阶乘。

2024-03-13 10:22:27 464

原创 查找算法掌握

插值查找(Interpolation Search):对于有序数据集,根据目标值与数据集中最小值和最大值的关系,估算目标值所在的位置,从而快速定位。插值查找的优势在于对于均匀分布的有序数组,可以快速定位到目标元素,从而提高查找效率。哈希查找的优势在于平均时间复杂度为O(1),即查找时间与数据规模无关,具有快速的查找速度。此外,哈希查找对于非均匀分布的数据集合,可能会导致哈希冲突增多,影响查找效率。以上只是常见的一些查找算法,根据具体的数据集特点和查找需求,选择不同的算法可以提高查找效率。

2024-03-13 10:16:08 1102

原创 java正整数校验

上述两种方法都可以有效验证一个字符串是否代表正整数。第一种方法利用正则表达式快速判断输入字符串是否只包含数字且非空;第二种方法则是尝试将字符串转换为整数,并检查结果是否大于0,如果转换失败(即抛出NumberFormatException),则说明该字符串不是有效的正整数。方法2:尝试转换为Integer。方法1:使用正则表达式。

2024-03-12 17:32:20 1955

原创 经典算法掌握

选择排序是每次从未排序的元素中找到最小(或最大)的元素,将其放在已排序序列的末尾(或开头),直到所有元素都排好序。快速排序是通过选择一个基准元素,将序列分割成左右两部分,使得左边的元素都小于等于基准元素,右边的元素都大于等于基准元素,然后分别对左右两部分进行递归排序。插入排序是将未排序的元素逐个插入已排序的序列中,通过不断比较和交换元素的位置,最终得到一个有序序列。冒泡排序是通过不断比较相邻的两个元素并交换位置,让较大(或较小)的元素逐渐往后(或往前)移动,直到所有元素都排好序。

2024-03-12 13:58:35 1440 1

原创 算法基本概念

不同的算法可能对同一个问题有不同的效率和复杂度,因此选择合适的算法对于解决问题非常重要。链表(Linked List):由节点(Node)组成的线性数据结构,每个节点包含数据和指向下一个节点的指针。有明确的步骤:算法由一系列明确的步骤组成,每个步骤都是可执行的,并且按照特定的顺序执行。这些基本的数据结构在算法设计中扮演着重要的角色,不同的数据结构适用于解决不同类型的问题。可行性:算法的每个步骤都可以通过已知的基本操作来实现,不依赖于未知或不可行的操作。基本的数据结构是算法操作的数据的组织方式。

2024-03-12 10:55:35 504

原创 java获取前十二个月的时间

【代码】java获取前十二个月的时间。

2023-10-25 14:31:57 348

原创 java 获取本月开始时间

【代码】java 获取本月开始时间。

2023-10-25 14:29:38 244

原创 java 获取本周开始时间

【代码】java 获取本周开始时间。

2023-10-25 14:28:35 343

原创 java 获取前一天日期

【代码】java 获取前一天日期。

2023-10-25 14:26:13 353

原创 java 获取本年第一天

【代码】java 获取本年第一天。

2023-10-25 14:25:20 508

原创 sql update select批量处理

【代码】sql update select批量处理。

2023-07-26 10:46:06 290

原创 大数据量统计展示

基础表数据过大,查询慢问题--> 使用中间表处理。2、java定时器 每日定时跑数据。

2023-07-07 09:24:18 143

原创 idea闪退,端口占用处理

3、找到对应的进程,使用 taskkill /pid 端口号 /f。2、 输入命令 jps 查看进程。4、 重启项目 ,即可。

2023-07-06 16:55:14 1485

原创 java导出excel标题列合并

/横向:合并第一行的第1列到第N列。// 开始行,结束行,开始列,结束列。

2023-07-06 15:35:12 409

原创 java导出excel合并单元格(行合并)

/例如从第0行开始得到一个初始值,然后读取到第十行时内容变了,那么合并的截至行就是第十行减去一行,就是从第0行合并至第九行。System.err.println("第"+num+"次合并,从第"+firstRow+"至第"+(i-1)+"行");//在合并最后一组相同的单元格内容时由于读取到最大行也没有出现不相同的单元格内容,所有需要再此处进行合并一下最后一组相同的单元格。System.err.println("最后一次合并,从第"+firstRow+"至第"+(rows-1)+"行");

2023-07-06 15:21:01 1652

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除