- 博客(36)
- 资源 (1)
- 收藏
- 关注
原创 深入理解Maven中的scope和type:使用场景与实例详解
通过本文的详细讲解,相信读者已经对Maven中的scope和type有了深入的理解:scope决定了依赖在项目构建和运行时的作用范围。type指定了依赖的类型。希望本文的示例和场景分析能够帮助你在实际开发中更加得心应手地使用Maven进行依赖管理。如果你有任何问题或建议,欢迎在评论区留言讨论!Maven官方文档《Maven实战》
2025-02-19 14:00:02
1106
原创 深入了解Kafka:分布式流处理的利器
Kafka是由Apache软件基金会开发的分布式流处理平台,旨在处理和存储实时数据流。它最初是由LinkedIn开发的,后来成为Apache项目,得益于其卓越的性能可伸缩性和容错性,Kafka在大数据领域得到了广泛的应用。
2023-11-21 11:06:08
234
原创 【学习笔记】Elasticsearch之入门用法
本文将介绍一下Elasticsearch的入门用法,也是自己总结了在学习过程中觉得非常有趣的地方。
2023-11-08 14:23:28
342
原创 【学习笔记】Elasticsearch之环境搭建
Elasticsearch 是一个分布式文档存储系统。与将信息存储为行列数据不同,Elasticsearch 存储复杂的数据结构,这些数据结构被序列化为 JSON 文档。当您有多个 Elasticsearch 节点组成集群时,存储的文档会分布在整个集群中,并可以从任何节点立即访问。Elasticsearch 使用一种称为倒排索引的数据结构,支持非常快速的全文搜索。
2023-11-08 10:49:40
170
原创 【学习笔记】PostgreSQL之继承
在 PostgreSQL 中,表继承是一种数据建模技术,它允许你创建一个包含所有共享结构的父表,然后为不同的子表添加特定的列或约束。它在某些特定情境下非常有用,但也有一些限制和注意事项,例如不支持外键约束在父表和子表之间的引用,因此需要仔细设计和规划。
2023-11-03 15:32:52
655
原创 【学习笔记】PostgreSQL之事务
各个步骤之间的中间状态对于其他并发事务是不可见的,并且如果有某些错误发生导致事务不能完成,则其中任何一个步骤都不会对数据库造成影响。这意味着事务是数据库操作的基本单位,要么全部成功执行,要么全部回滚到事务开始前的状态,以确保数据的一致性和完整性。
2023-11-03 15:11:38
660
原创 【学习笔记】PostgreSQL之外键
在 PostgreSQL 中,外键(Foreign Key)是一种数据库约束,用于维护表之间的关联关系。外键确保一个表的一列(子列)的值引用了另一个表(父表)的主键或唯一键列的值。这有助于维护表之间的一致性和完整性,以及执行引用完整性检查。
2023-11-03 14:51:28
3136
原创 【学习笔记】PostgreSQL之视图
视图允许用户通过始终如一的接口封装表的结构细节,这样可以避免表结构随着应用的进化而改变。PostgreSQL中的视图(View)是一个虚拟的表,是由一个或多个基本表(或其他视图)生成的结果集。你可以使用视图来隐藏复杂的查询逻辑,简化常见查询,并提高数据的安全性,因为你可以限制用户访问表的特定部分。对视图的更新和删除操作将直接影响基本表,因此在进行此类操作时要格外小心,确保你要执行的操作是正确的。是一个可更新的视图,它允许执行插入、更新和删除操作,这些操作实际上会影响名为。选项可以同时删除依赖于视图的对象,
2023-11-03 14:36:15
2952
原创 CronJob执行数据库里的函数入门
本文将介绍如何用定时任务,执行postgresql数据库里的函数。这里我每分钟运行一下这个函数,并且将所有的日志输出到指定的文件夹。
2023-11-01 16:10:30
76
原创 看完这篇文章,maven用起来如鱼得水
Maven 是一个项目管理和构建工具,可用于管理项目依赖关系、构建和打包项目,并管理项目的部署和发布。Maven 通过中央仓库和插件生态系统,使得开发人员能够更轻松地构建和管理 Java 项目。
2023-04-27 16:34:05
176
原创 你会用IDEA的Code With Me功能吗?用完发现真香
优势:实时协作:Code With Me 提供实时协作功能,多个开发人员可以同时在同一个 IDE 中协作编写代码。这使得团队成员可以远程协作,分享代码和技能。提高生产力:使用 Code With Me 可以大大提高生产力。开发人员可以即时共享代码和文档,共同解决问题,减少错误,增加代码可读性。更好的团队沟通:Code With Me 使开发人员之间的沟通更加方便。团队成员可以即时交流想法,分享经验,共同解决问题。这有助于改善团队合作,加强沟通。
2023-04-24 11:29:02
17248
1
原创 2分钟学会编写maven插件
Maven 是 Java 项目中常用的构建工具,可以自动化构建、测试、打包和发布 Java 应用程序。Maven 插件是 Maven 的一项重要功能,它可以在 Maven 构建过程中扩展 Maven 的功能,实现自定义的构建逻辑。Maven 插件可以提供很多不同的功能,例如:生成代码、打包文件、部署应用程序等。插件通常是在 Maven 构建生命周期中的某个阶段执行,例如:编译、测试、打包、安装和部署。Maven 的生命周期和插件机制让开发人员可以很方便地实现自定义构建逻辑,从而加快项目的开发和部署。
2023-04-23 10:17:26
831
原创 看完这篇文章还不会创建Mybatis插件吗?
本篇博客详细介绍了如何创建一个 MyBatis 插件,并在项目中使用。我们首先创建了一个拦截器,然后将其注册到 MyBatis 中。最后,在项目中使用插件,成功地拦截了查询语句并打印了 SQL 语句和执行时间。
2023-04-21 11:27:07
146
原创 面试官:知道TDD是什么吗?在项目中怎么用的?和DDD有啥区别?
TDD是一种非常有用的开发方法,可以帮助我们编写更加健壮和可靠的代码。在TDD的过程中,我们需要先编写测试用例,然后编写足够的代码来使测试用例通过,最后进行重构。通过这个过程,我们可以保证我们的代码质量更高,并且更容易维护。
2023-04-20 14:25:50
882
原创 还不会Mybaits吗?一招解决
MyBatis是一款非常优秀的持久层框架,它具有简单易用、灵活可控、可定制化等特点,深受广大开发者的喜爱。本文对MyBatis的概念、使用方法以及一些常用功能进行了详细介绍,并提供了大量的Java代码示例,希望对大家学习和使用MyBatis有所帮助。
2023-04-19 16:16:27
154
原创 再有人问你DDD,把这篇文章丢给他
在上面的代码中,我们可以看到,Blog 类定义了博客的业务逻辑,例如如何验证博客的标题和内容是否有效,如何处理博客的标签和评论等等。但是,这个类并没有定义博客的业务逻辑,例如如何验证博客的标题和内容是否有效,如何处理博客的标签或评论等等。购物车服务将购物车领域模型和产品服务进行组合,负责将商品添加到购物车、从购物车中删除商品、更新购物车中商品的数量和计算购物车中商品的总价。购物车领域模型只负责购物车的业务逻辑,包括将商品添加到购物车、从购物车中删除商品、更新购物车中商品的数量和计算购物车中商品的总价。
2023-04-18 16:24:39
152
原创 4000字初识Docker,原来这么简单
Docker是一种强大的容器化平台,可以帮助我们更轻松地构建、分发和运行应用程序。它提供了一种轻量级的虚拟化技术,使得应用程序可以在不同的环境中运行,而不会受到环境变化的影响。Docker还提供了许多有用的功能,如容器编排、服务发现和容器管理等,使得应用程序的部署和管理变得更加简单和可靠。
2023-04-17 14:24:47
116
原创 吐血整理Java集合框架,免费送
Java 集合框架提供了丰富的集合类型和操作方法,可以方便地进行数据存储、查找、删除、遍历等操作。不同类型的集合具有不同的优缺点和适用场景,开发人员可以根据实际需要选择合适的集合类型来使用。在实际开发中,需要根据数据量、访问方式、时间复杂度等因素来选择合适的集合类型。例如,对于数据量较小且需要有序访问的场景,可以选择使用 List 类型的集合;对于数据量较大且需要快速访问的场景,可以选择使用 Map 类型的集合。同时,也需要注意集合类型之间的转换和使用方法的选择,避免出现不必要的性能问题和逻辑错误。
2023-04-15 13:01:04
177
1
原创 【从零到一的Java Stream,保姆级教学】
Java Stream 是 Java 8 中的一项重大新功能,它提供了一种强大的功能,用于处理集合和数组等数据结构的元素序列。Stream 基于 lambda 表达式,它允许我们使用一种简洁而直观的方式来处理数据,而不用关心底层的实现细节。本文将详细介绍 Java Stream 的用法。Java Stream 是一个用于描述数据流的 API,它提供了一个面向函数式编程的方式来处理集合和数组等数据结构的元素序列。Stream 中的元素是以管道方式处理的,类似于 Unix 管道,数据从一个端点流入,经过一系列操
2023-04-14 10:42:43
232
1
原创 java设计模式之——状态(State)模式
GoF的23种设计模式设计模式之——状态(State)模式状态模式定义状态模式的优点状态模式的缺点状态模式的实现状态模式的使用场景设计模式之——状态(State)模式状态模式定义允许一个对象在其内部状态改变时改变它的行为状态模式的优点减少对象间的相互依赖。有利于程序的扩展。状态模式的缺点状态模式的结构与实现都较为复杂,如果使用不当会导致程序结构和代码的混乱。状态模式的使用会增加系统的类与对象的个数。状态模式的实现定义一个环境类/** * @ClassName Envir
2020-06-20 00:10:54
158
原创 java设计模式之——责任链(Chain of Responsibility)模式
GoF的23种设计模式设计模式之——责任链(Chain of Responsibility)模式命令模式定义责任链模式的优点责任链模式的缺点责任链模式的实现责任链模式的使用场景设计模式之——责任链(Chain of Responsibility)模式命令模式定义为了避免请求发送者与多个请求处理者耦合在一起,将所有请求的处理者通过前一对象记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这条链传递,直到有对象处理它为止。责任链模式的优点降低了对象之间的耦合度。增强了系统的可扩展
2020-06-18 18:49:01
213
原创 java设计模式之——命令(Command)模式
GoF的23种设计模式设计模式之——命令(Command)模式命令模式定义命令模式的优点命令模式的缺点命令模式的实现命令模式的使用场景设计模式之——命令(Command)模式命令模式定义将一组行为抽象为对象,实现二者之间的松耦合。命令模式的优点增加或删除命令方便;降低系统的耦合度。命令模式的缺点可能产生大量具体命令类。命令模式的实现定义一个抽象命令/** * @ClassName AbstractCommend * @Description TODO * @Autho
2020-06-17 17:05:16
217
原创 java设计模式之——策略(Strategy)模式
GoF的23种设计模式设计模式之——策略(Strategy)模式策略模式定义策略模式的优点策略模式的缺点策略模式的实现策略模式的使用场景设计模式之——策略(Strategy)模式策略模式定义指对象有某个行为,但是在不同的场景中,该行为有不同的实现算法。策略模式的优点可以避免使用多重条件语句,去掉if-else的最佳选择;提供相同行为的不同实现,客户可以根据不同时间或空间要求选择不同的;满足开闭原则,可以在不修改原代码的情况下,灵活增加新算法。策略模式的缺点客户端必须理解所有策略算
2020-06-16 18:15:27
353
原创 java设计模式之——模板方法(Template Method)模式
GoF的23种设计模式设计模式之——模板方法(Template Method)模式模板方法模式定义模板方法模式的优点模板方法模式的缺点模板方法模式的实现模板方法模式的使用场景设计模式之——模板方法(Template Method)模式模板方法模式定义定义了一个算法的步骤,并允许子类别为一个或多个步骤提供其实践方式。让子类别在不改变算法架构的情况下,重新定义算法中的某些步骤。模板方法模式的优点它封装了不变部分,扩展可变部分,便于子类继续扩展。部分方法是由子类实现的,符合开闭原则。模板方法
2020-06-15 20:08:17
240
原创 java设计模式之——组合(Composite)模式
GoF的23种设计模式设计模式之——组合(Composite)模式组合模式定义组合模式的优点组合模式的缺点组合模式的实现组合模式的使用场景设计模式之——组合(Composite)模式组合模式定义将对象组合成树形结构以表示“部分-整体”的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性。组合模式的优点使客户端代码能够一致处理单个对象和组合对象,这简化了客户端代码;更容易在组合体内加入新的对象,客户端不会因为加入了新的对象而更改源代码,满足“开闭原则”;组合模式的缺点设计
2020-06-14 17:19:25
267
原创 java设计模式之——享元(Flyweight)模式
GoF的23种设计模式设计模式之——享元(Flyweight)模式享元模式定义享元模式的优点享元模式的缺点享元模式的实现享元模式的使用场景设计模式之——享元(Flyweight)模式享元模式定义它使用共享物件,用来尽可能减少内存使用量以及分享资讯给尽可能多的相似物件;它适合用于只是因重复而导致使用无法令人接受的大量内存的大量物件。通常物件中的部分状态是可以分享。享元模式的优点相同对象只保存一份,降低了系统中对象的数量,降低了系统中细粒度对象给内存带来的压力。享元模式的缺点为了使对象可
2020-06-13 20:30:11
253
原创 java设计模式之——外观(Facade)模式
GoF的23种设计模式设计模式之——外观(Facade)模式外观模式定义外观模式的优点外观模式的缺点外观模式的实现外观模式的使用场景设计模式之——外观(Facade)模式外观模式定义通过为多个复杂的子系统提供一个一致的接口,而使这些子系统更加容易被访问的模式。该模式对外有一个统一接口,外部应用程序不用关心内部子系统的具体的细节,这样会大大降低应用程序的复杂度,提高了程序的可维护性。外观模式的优点实现了子系统与客户端之间的松耦合关系。客户端屏蔽了子系统组件,减少了客户端所需处理的对象数目,并
2020-06-12 18:32:32
357
原创 java设计模式之——装饰(Decorator)模式
GoF的23种设计模式设计模式之——装饰(Decorator)模式装饰模式定义装饰模式的优点装饰模式的缺点装饰模式的实现装饰模式的使用场景设计模式之——装饰(Decorator)模式装饰模式定义指的是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。装饰模式的优点Decorator模式与继承关系的目的都是要扩展对象的功能,但是Decorator可以提供比继承更多的灵活性。通过使用不同的具体装饰类以及这些装饰类的排列组合,设
2020-06-11 18:19:14
331
原创 java设计模式之——桥接(Bridge)模式
GoF的23种设计模式设计模式之——桥接(Bridge)模式桥接模式定义桥接模式的优点桥接模式的缺点桥接模式的实现桥接模式的使用场景设计模式之——桥接(Bridge)模式桥接模式定义桥接模式是将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接口(Interfce)模式。桥接模式的优点扩展能力强。桥接模式的缺点增加了系统的理解与设计难度。桥接模式的实现定义一个接口/** * @ClassName
2020-06-10 13:32:18
172
原创 java设计模式之——适配器(Adapter)模式
GoF的23种设计模式设计模式之——适配器(Adapter)模式适配器模式定义适配器模式的优点适配器模式的缺点适配器模式的实现适配器模式的使用场景设计模式之——适配器(Adapter)模式适配器模式定义将一个类的接口适配成用户所期待的。一个适配允许通常因为接口不兼容而不能在一起工作的类工作在一起,做法是将类自己的接口包裹在一个已存在的类中。适配器模式的优点客户端可以透明地调用目标接口。将目标类和适配者类解耦,解决了目标类和适配者类接口不一致的问题。复用了现存的类,不需要修改原有代码。
2020-06-09 13:17:49
496
原创 java设计模式之——代理(agent)模式
GoF的23种设计模式设计模式之——代理(agent)模式代理模式定义代理模式的优点代理模式的缺点代理模式的实现代理模式的使用场景设计模式之——代理(agent)模式代理模式定义为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式的优点代理对象可以在客户端和目标对象之间起到中介的作用,这样起到了中介的作用和保护了目标对象的作用;代理模式将客户端与目标对象分离,在一定程度上降低了系统
2020-06-08 13:34:32
1802
原创 java设计模式之——建造者(Builder)模式
GoF的23种设计模式设计模式之——建造者(Builder)模式建造者模式定义建造者模式的优点建造者模式的缺点建造者模式的实现建造者模式的使用场景设计模式之——建造者(Builder)模式建造者模式定义指将一个复杂对象的构造与它的表示分离,使同样的构建过程可以创建不同的表示。建造者模式的优点每个具体的建造者互相独立,便于系统的扩展;客户端无需知道产品内部组成的部分,有利于控制风险。建造者模式的缺点产品的组成部分必须相同;产品的内部如果变化复杂,就会增加很多建造者。建造者模式的
2020-06-07 15:43:01
201
原创 java设计模式之——抽象工厂
GoF的23种设计模式设计模式之——抽象工厂(AbstractFactory)抽象工厂模式定义抽象工厂模式的优点抽象工厂模式的缺点抽象工厂模式的实现工厂方法模式的使用场景设计模式之——抽象工厂(AbstractFactory)抽象工厂模式定义为访问类(客户端)提供创建一组相关或相互依赖对象的接口,且访问类(客户端)无须指定所要产品的具体类就能得到同族的不同等级的产品的模式结构。抽象工厂模式的优点有利于产品的一致性。当一个系列的产品对象被设计成一起工作时,一个应用一次只能使用同一个系列中的对象
2020-06-06 17:34:01
218
原创 java设计模式之—工厂方法
GoF的23种设计模式设计模式之——工厂方法(FactoryMethod)工厂方法模式定义工厂方法模式的优点工厂方法模式的缺点工厂方法模式的实现工厂方法模式的使用场景设计模式之——工厂方法(FactoryMethod)工厂方法模式定义定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。核心工厂类不再负责产品的创建工厂方法模式的优点用户只需要知道具体工厂的名称就可得到所要的产品,无须知道产品的具体创建过程,对用户来说,创建过程是完全不透明的;在系统增加新的产品时只需增加产品类和对应
2020-06-05 13:25:47
120
原创 java设计模式之—原型模式
GoF的23种设计模式设计模式之——原型模式(Prototype)原型(Prototype)模式定义原型模式的分类(克隆)浅克隆的实现深克隆的实现使用父类clone方法的实现重写父类clone方法的实现设计模式之——原型模式(Prototype)原型(Prototype)模式定义用一个已经创建成功的实例作为原型,通过复制该原型对象来创建一个和原型相同或相似的新对象。原型模式的分类(克隆)1. 浅克隆 含义:只复制基本类型的数据,引用类型的数据只复制了引用的地址,引用的对象并没有复制,在新的对象
2020-06-04 13:41:41
131
原创 java设计模式之—单例模式
GoF的23种设计模式设计模式之——单例模式(Singleton)单例(Singleton)模式定义单例模式具有三个特征单例模式的结构和实现单例模式的结构如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入设计模式之——单例模式(Singleton)单例(Singleton)模式定义引用仅具有一个实例的
2020-05-28 14:34:06
129
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人