自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (3)
  • 收藏
  • 关注

原创 Java Map详解

Java 中的 Map 接口有多个实现类,每个实现类都提供了不同的特性来满足不同的使用场景。下面是一些常见的 Map 实现类及其特性和代码示例的详解和对比。

2024-04-17 09:00:37 1027

原创 JDK8垃圾回收机制

JDK8(Java Development Kit 8)的垃圾回收机制是Java语言内存管理的重要组成部分,它负责自动回收不再使用的对象,释放内存空间,从而防止内存泄漏和内存溢出。下面将对JDK8的垃圾回收机制进行详细的解析。

2024-04-16 11:14:19 935

原创 Java List 详解

Java的List是一个功能强大的集合类型,它提供了许多用于操作有序元素集合的方法。选择正确的List实现类以及正确地使用这些方法对于编写高效且可靠的Java代码至关重要。通过理解List的主要特点、常用实现类、常用方法以及性能考虑,可以更好地利用Java的集合框架来构建复杂的数据结构和算法。

2024-04-16 10:27:56 1262

原创 LocalDateTime跟Date对比

LocalDateTime 和 Date 都是Java中用于表示日期和时间的类,但它们在多个方面存在显著差异。LocalDateTime 是Java 8引入的新日期和时间API的一部分,而 Date 是Java标准库中的老类。下面我们将详细对比这两个类,并提供比较大小的代码示例。

2024-04-15 17:54:10 538

原创 初识JVM

JVM是Java语言实现跨平台性的关键,它提供了一个抽象的计算机模型,使得Java程序可以在多种平台上运行。了解JVM的工作原理和内存管理机制对于Java开发人员来说是非常重要的,它有助于我们更好地编写和优化Java程序。

2024-04-15 08:54:24 444

原创 分布式锁介绍

分布式锁是一种用于协调不同进程或线程对共享资源的访问控制的机制。在分布式系统中,由于多个节点可能同时访问或修改同一资源,因此需要一个中心化的协调机制来确保资源的访问是有序的,避免数据不一致的问题。

2024-04-14 21:35:47 415

原创 怎么成为一名入门程序员

成为一名入门程序员需要我们在理解编程与计算机科学基础知识的基础上,选择一门编程语言并学习其基础语法,通过实践编程解决问题,学习数据结构与算法,参与编程社区与持续学习,阅读编程书籍与观看在线课程,并建立正确的编程思维与习惯。这个过程可能会遇到许多困难和挑战,但只要我们有足够的耐心和毅力,就一定能够成为一名优秀的程序员。

2024-04-13 23:33:52 144

原创 链式队与循环队列的模拟、实现与应用

链式队列和循环队列是两种常见的队列实现方式,它们各自具有不同的特点和适用场景。下面我们将分别介绍这两种队列的模拟、实现以及应用。

2024-04-12 15:23:30 191

原创 数据结构-加解密算法

每种加密算法都有其特定的用途和适用场景。在实际应用中,您应该根据数据的敏感性、处理性能要求以及安全需求来选择合适的加密算法。此外,还需要考虑算法的安全性、兼容性以及是否受到已知的攻击或漏洞影响。

2024-04-11 17:28:00 267

原创 数据结构-算法复杂度

主要表示算法在运行过程中所需的时间与输入规模之间的关系。它描述了算法的运行时间随输入规模增大而增长的趋势。例如,对于一个排序算法,如果其时间复杂度为O(n log n),这意味着随着排序元素数量的增加,算法所需的时间将按照n的对数级别增长。时间复杂度的计算涉及对算法中操作数量(如比较次数、赋值次数等)的考量,并关注这些数量与输入规模n的关系。常见的时间复杂度级别包括线性级别O(n)、平方级别O(n^2)、对数级别O(log n)、指数级别O(2^n)以及阶乘级别O(n!

2024-04-10 11:40:55 979

原创 Spring 和SpringBoot的区别

Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。它解决了企业应用开发的复杂性,提供了丰富的功能来简化Java开发。Spring Boot是一个基于Spring的项目,旨在简化Spring应用的初始搭建以及开发过程。它使用“约定优于配置”的理念,通过大量的默认配置来减少开发者的配置工作量。Spring提供了大量的功能和灵活性,但这也意味着更多的配置和复杂性。相比之下,Spring Boot通过自动配置和默认设置简化了开发过程。

2024-04-09 16:42:49 648

原创 Java数据结构算法-红黑树

红黑树作为一种高效且稳定的数据结构,在计算机科学中得到了广泛的应用。通过深入理解其概念、性质、插入和验证方法,我们可以更好地利用红黑树来实现各种复杂的数据操作。

2024-04-09 11:42:13 387

原创 Redis 常见面试题

答案:Redis是一个开源的使用ANSI C语言编写的、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(string)、哈希(Hash)、列表(list)、集合(sets)、有序集合(sorted sets)等类型。Redis因其出色的性能而被广泛用于缓存、消息队列、分布式锁、计数器、会话管理等场景。

2024-04-08 13:42:24 598

原创 Java数据结构算法-图形算法

深度优先搜索是一种用于遍历或搜索树或图的算法。这个算法会尽可能深地搜索树的分支。当节点v的所在边都已被探寻过,搜索将回溯到发现节点v的那条边的起始节点。这一过程一直进行到已发现从源节点可达的所有节点为止。如果还存在未被发现的节点,则选择其中一个作为源节点并重复以上过程,整个进程反复进行直到所有节点都被访问为止。广度优先搜索是另一种用于遍历或搜索树或图的算法。这个算法从根节点(或任意节点)开始,探索最近的节点,然后进一步探索下一层的节点,依此类推。

2024-04-08 10:43:37 2925

原创 Redis之缓存穿透、击穿、雪崩

缓存穿透是指查询一个不存在的数据,由于缓存中也没有该数据,导致每次请求都会直接打到数据库上,而数据库也没有该数据,从而造成数据库压力骤增。缓存击穿是指在高并发场景下,某个热点数据在缓存中过期或失效,此时大量请求同时访问该数据,导致所有请求都直接打到数据库上,从而给数据库带来巨大压力。缓存雪崩是指由于大量缓存数据同时失效或缓存服务不可用,导致大量请求直接打到数据库上,从而给数据库带来巨大压力,甚至可能引发数据库宕机。

2024-04-07 17:43:14 733

原创 Java数据结构算法-分治算法

分治算法通过分解问题、解决子问题和合并结果的方式,将复杂的问题简化为一系列简单的子问题,从而提高了解决问题的效率。这种算法策略在计算机科学中有着广泛的应用,是解决复杂问题的一种有效方法。

2024-04-07 09:15:13 863

原创 Java数据结构算法-查找算法

Java中的查找算法种类繁多,每种算法都有其特点和适用场景。在实际应用中,我们需要根据数据的特点、数据量的大小以及性能要求等因素,选择合适的查找算法。同时,我们还需要注意算法的实现细节和性能优化,以充分发挥算法的优势。

2024-04-03 09:46:31 585

原创 Java数据结构算法-动态规划算法

动态规划是一种在数学、计算机科学和经济学中使用的,通过把原问题分解为相对简单的子问题的方式来求解复杂问题的方法。动态规划常常适用于有重叠子问题和最优子结构性质的问题。通过将子问题的解存储起来,避免重复计算,从而提高算法的效率。

2024-04-02 20:05:21 805

原创 Java数据结构算法-贪心算法

贪心算法通常遵循以下步骤:建立数学模型:首先,需要将问题转化为数学模型,以便能够用算法进行解决。选择贪心策略:确定每一步的最优选择标准,这是贪心算法的核心。实施算法:根据贪心策略编写代码,逐步构建问题的解。证明算法的正确性:通过数学归纳法或其他方法证明算法的正确性,或者通过实际测试验证算法的有效性。

2024-04-02 08:43:28 1375

原创 Java 抽象类和接口

抽象类通常用于表示一种抽象的概念或行为,其中可以包含抽象方法(只有声明,没有具体实现的方法)和非抽象方法。接口是一种完全抽象的类,它只包含抽象方法和常量,不能包含非抽象方法和实例字段。接口的主要目的是定义一种规范或契约,实现接口的类必须遵守这个规范,即实现接口中声明的所有方法。一个类可以实现多个接口,从而具备多种不同的行为。Java中的抽象类和接口都是用于定义一组具有共性的方法或属性的模板,但它们在使用和目的上有所不同。当需要定义一组具有共性的方法或属性,并且希望部分方法可以有默认实现时,可以使用抽象类。

2024-04-01 08:55:04 512

原创 Java 数据结构篇-深入了解排序算法

1. 冒泡排序(Bubble Sort)基本思想:通过相邻元素之间的比较和交换,使得每一趟排序后,最大(或最小)的元素能够“浮”到数列的一端。i < n - 1;i++) {j++) {// 交换 arr[j] 和 arr[j + 1]2. 选择排序(Selection Sort)基本思想:每一趟从待排序的元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。i < n - 1;j++) {

2024-03-29 13:45:05 909

原创 速通软件书有用吗?

本文旨在全面探讨速通软件书是否有用这一话题。首先,文章将介绍速通软件书的基本定义和特征,分析其在市场中的普及程度和使用场景。接着,文章将从多个角度展开分析,包括速通软件书对初学者的帮助、对专业人士的参考价值、以及其对技能提升和学习效率的影响等。同时,文章还将探讨速通软件书可能存在的问题和不足,如内容深度不足、错误较多等。最后,文章将总结速通软件书的优缺点,并给出使用速通软件书的建议,帮助读者根据自身需求合理选择和使用速通软件书。

2024-03-28 11:27:55 922

原创 SpringBoot集成Nacos

Nacos是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。Spring Boot是一个用于创建独立、生产级别的基于Spring的应用的框架。集成Nacos到SpringBoot中,可以方便地实现服务发现、配置管理和动态配置刷新等功能。

2024-03-28 09:07:22 770

原创 SpringBoot集成Mysql

Spring Boot是一个用于简化Spring应用开发的框架,它提供了很多默认配置,使得开发者能够快速地集成各种技术和组件,包括MySQL数据库。在Spring Boot中集成MySQL,我们通常会使用Spring Data JPA或MyBatis等持久层框架,这些框架提供了强大的数据库访问和操作功能。

2024-03-27 11:49:37 886

原创 Java 反射机制详解

Java反射机制为开发者提供了强大的动态操作能力,使得Java程序能够在运行时获取类的信息、创建和操作对象。然而,反射也带来了一定的性能开销和安全性问题,因此在使用反射时应谨慎权衡其利弊,并确保代码的安全性和性能。

2024-03-26 10:56:21 794

原创 一文熟悉SpringBoot面向AOP编程

但在实际使用中,你可能会发现@Before通知中的参数类型应该是org.aspectj.lang.ProceedingJoinPoint(仅对环绕通知有效),或者根本不需要参数。在AOP中,一个关注点被模块化为一个切面(Aspect),切面包含了一组通知(Advice)和一个切点(Pointcut)。常见的通知类型有前置通知(Before)、后置通知(AfterReturning)、异常通知(AfterThrowing)和环绕通知(Around)。确保事务在正确的地方开始和结束,并正确处理事务的传播。

2024-03-25 08:55:59 767

原创 AI大模型解读

未来随着技术的不断进步和完善,AI大模型有望在更多领域发挥更大的作用,推动人工智能技术的快速发展和应用。同时,随着技术的不断进步,AI大模型有望在更多领域发挥更大的作用,推动人工智能技术的快速发展和应用。大型模型的应用范围不断扩展,涵盖自然语言处理、计算机视觉、语音识别、推荐系统等各个领域,并逐渐向更具体的垂直领域渗透,如医疗、金融、物流等。自动驾驶汽车的地图搜索和车辆控制等任务需要强大的处理和预测能力,因此AI大型模型在自动驾驶技术的研究和开发中具有潜在的应用前景。

2024-03-22 13:39:46 426

原创 AI程序员对程序员职业的影响

随着人工智能技术的快速发展,AI程序员逐渐崭露头角,他们在机器学习、深度学习、自然语言处理等领域发挥着重要作用。这一新兴职业群体的出现,引发了人们关于AI程序员是否会抢占传统程序员饭碗的担忧。本文旨在探讨AI程序员与程序员之间的关系,分析两者之间的合作与竞争,并展望未来的职业发展趋势。

2024-03-21 10:11:01 781

原创 从零开始搭建一个基于SpringBoot的互联网采集系统【一】

自身因为是后端JAVA出身,那就选择JAVA语言开发没说的,直接就上手SpringBoot搭建一个基础框架,SpringBoot版本选用2.3.2.RELEASE,加上一些暂定基础依赖,一个基础框架就搭建完成了。分析咱这个采集系统,首先肯定是能够设置需要采集的站点,对于配置的站点又可以采集站点中的对应栏目,又能够针对不同的站点、栏目去配置对于的采集规则。这样,简单的基本数据库表就出来了。翻看了一大堆采集系统,大多不符合自己想要的,所以,本着自力更生的原则,花个时间按照自己的需求想法编写一个互联网采集系统。

2024-03-20 10:32:34 1129

原创 SpringBoot集成MybatisPlus

创建一个基于Spring Boot集成Mybatis Plus的示例项目是一个相对直接且实用的过程,它结合了Spring Boot的自动配置特性与Mybatis Plus的增强功能,使得数据库操作变得更为简便和高效。下面是一个简单的步骤说明和代码示例,帮助你快速搭建一个Spring Boot集成Mybatis Plus的Demo项目。

2024-03-19 09:59:04 466

原创 Nacos介绍和使用

Nacos是阿里巴巴开源的一个易于使用的动态服务发现、配置和服务管理平台,用于构建云原生应用。它提供了一组简单易用的特性集,帮助用户快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos致力于帮助用户更敏捷和容易地构建、交付和管理微服务平台,是构建以“服务”为中心的现代应用架构(如微服务范式、云原生范式)的服务基础设施。

2024-03-18 13:40:35 475

原创 redis的介绍和使用

Redis是一个功能强大、性能出色的NoSQL数据库,它提供了丰富的数据类型和命令来满足各种数据处理需求。

2024-03-15 11:30:37 1284

原创 JAVA开发入门

Java,作为一种高级编程语言,自诞生以来便因其独特的跨平台特性和丰富的功能库受到了广大开发者的青睐。Java语言简洁明了,易于上手,且拥有强大的面向对象编程能力,使得开发者能够用更少的代码实现更复杂的功能。在开始学习Java之前,我们需要了解Java的基本概念和特点。Java是一种面向对象的编程语言,它支持类(Class)和对象(Object)的概念,通过封装、继承和多态等特性实现代码的复用和扩展。此外,Java还具有自动内存管理、异常处理、泛型编程等先进特性,使得开发者能够更加高效地进行编程。

2024-03-14 14:09:32 437

原创 使用微信开发者工具开发小程序

同时,我们还定义了页面的生命周期函数onLoad、onShow和onHide,用于处理页面加载、显示和隐藏时的逻辑。在开发者工具中,点击预览按钮,可以选择在微信模拟器中预览小程序的效果。在弹出的窗口中,填写小程序的AppID、项目名称和项目目录,然后点击“创建”按钮。在这个示例中,元素用于创建容器和标题,元素用于创建一个按钮,并绑定了一个名为handleClick的点击事件处理函数。在这个示例中,我们定义了容器的布局方式、标题的字体大小和颜色,以及按钮的内边距、背景色、文字颜色和边框圆角。

2024-03-13 14:14:17 991

原创 首次进行小程序开发工作

这只是一个简单的小程序开发demo示例,你可以根据自己的需求进行更复杂的开发,包括添加更多的页面、逻辑和交互功能。在项目的根目录中,创建一个页面文件,比如index页面,index.json、index.js和index.wxml。小程序是一种基于微信平台的应用程序,可以在微信中进行使用。在index.json中配置页面的一些属性,比如页面标题和导航栏颜色。创建一个新的小程序项目,可以使用微信开发者工具进行创建。

2024-03-12 13:52:19 346

原创 Java中itextpdf将网页转pdf

在上面的代码中,我们首先使用Jsoup库获取网页的内容,并保存在一个Document对象中。然后,我们创建了一个PDF文档,并将网页的元素逐个添加到PDF文档中。使用iTextPDF库可以将网页转换为PDF文件。以下是一个简单的示例代码,演示了如何使用iTextPDF将网页转换为PDF文件。请注意,上述代码仅演示了基本的网页转换功能。具体的转换效果可能因网页的结构和样式而有所不同,你可能需要根据实际情况进行适当修改。变量设置为要转换的网页的URL,将。你需要将上面的代码中的。

2024-03-12 09:18:55 483

原创 Jsoup在Java中的简单运用

Jsoup是一个Java库,用于解析和提取HTML文档。

2024-03-11 10:10:13 374 1

原创 程序员是如何看待“祖传代码”的

这使得代码的阅读和理解变得相对困难,增加了后续开发和维护的复杂性。此外,由于历史的沉淀和技术的快速进步,祖传代码可能使用了过时的技术或库,与现代编程环境和需求存在较大的差异。通过深入研究祖传代码,程序员可以学习到前人的智慧和经验,掌握优秀的设计模式、高效的算法实现以及独特的问题解决思路。同时,制定代码编写规范,确保新的修改和添加的代码与原有代码风格一致,便于阅读和维护;“祖传代码”通常指的是那些历史悠久、经过多代程序员维护和修改的代码,这些代码可能充满了复杂的逻辑、冗余的结构,以及难以理解的命名和注释。

2024-03-11 09:42:12 433

vue后台管理基础版本代码

1.vue后台管理基础版本代码 2.vue3版本 3.后台管理系统通用

2024-03-20

ELK工具全套安装包资源

ELK安装包

2024-03-18

Linux系统Mysql5.7以及安装流程

Linux系统Mysql5.7以及安装流程

2024-03-18

Linux系统JDK1.8以及安装流程

Linux系统JDK1.8以及安装流程

2024-03-18

python文档LDA模型及ldavis可视化分析

1、计算单个文档的主题分布,可视化展示用ldavis展示词组关联性。 2、文本相似度计算得出查重结果排序

2021-05-17

空空如也

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

TA关注的人

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