- 博客(367)
- 资源 (17)
- 收藏
- 关注
原创 大纲Java文章
Java相关的文章大纲。并发编程 NIO,输入输出 异常与错误 Java事务隔离 Spring事务传播机制 Java网络编程,socket Java设计模式 Spring切面编程 Tomcat
2021-02-10 07:15:42
374
1
原创 SCA:三、配置中心(SpringCloud2025.x+Nacos3.3.0)
本文介绍如何在Spring Cloud Alibaba项目中集成Nacos配置中心。通过添加依赖、配置application.yml,启用spring.config.import实现配置动态刷新,并使用@RefreshScope注解使配置变更实时生效。
2026-11-06 18:24:29
9
原创 SCA:二、Sentinel熔断降级
本文详解在Spring Cloud Alibaba环境下,通过Nacos与OpenFeign集成Sentinel实现服务降级的完整配置流程。重点包括:添加Sentinel依赖、开启Feign支持、定义降级兜底类(需@Component)、Feign接口配置fallback,并部署Sentinel Dashboard进行熔断限流规则配置。
2026-11-06 15:15:21
24
原创 SCA:一、eclipse中搭建Spring Boot4 + SCA 2025.1.0.0 + Nacos + OpenFeign 完整 Demo
本文基于Spring Boot 4与Spring Cloud Alibaba 2025.1.0,演示如何使用Nacos实现服务注册与Feign远程调用。通过创建Maven父子工程,配置Nacos注册中心,分别开发提供者(nacos-provider)和消费者(nacos-consumer)模块,利用Feign声明式接口完成跨服务调用。启动后访问/call/jangle即可验证服务间通信,完整展示了微服务架构下的服务发现与负载均衡实践。
2026-11-06 09:12:34
176
原创 7、Maven:生命周期与插件
Maven生命周期与插件紧密关联,生命周期阶段通过绑定插件目标完成实际构建任务。默认插件已为各阶段(如compile、test、package、install、deploy)配置好目标。插件可包含多个目标,支持内置与自定义绑定,一个阶段可绑定多个目标,一个目标也可绑定至多个阶段。插件配置可通过命令行、POM中全局或任务级配置实现,灵活控制构建行为。
2026-11-03 18:58:38
241
原创 Maven:豆包:公司局域网搭建私服之后,我们是在pom里配置这个远程仓库还是在settings.xml文件里配置镜像呢?
企业内网私服推荐使用settings.xml配置mirrorOf=*,实现全局请求转发至公司私服,保障安全、统一与高效。pom.xml中repository仅用于声明项目专属仓库,不建议在镜像模式下使用。前者全局生效、密码不外泄;后者随代码分发,适合多私服混合或开源场景。避免在pom中写仓库导致被镜像拦截失效,关键点:mirror是路由,repository是定义,二者语义不同,选型需根据团队协作与安全需求决定。
2026-11-03 15:12:51
342
原创 eclipse中配置maven,以及在本地使用maven。
本文介绍了Maven在Eclipse中的配置与使用方法。可选用Eclipse自带Maven插件或手动添加本地Maven,需配置UserSettings文件以指定仓库路径。若在CMD中使用本地Maven,需将Maven的/bin目录加入系统Path环境变量,并通过mvn -version验证配置。配置完成后,可执行清理、打包等操作,成功构建项目。推荐从Apache Maven官网下载并配置本地Maven。
2026-10-31 14:19:41
184
原创 Springboot4.0.9,添加Filter(拦截器)
本文介绍在Spring Boot中自定义Filter实现登录拦截功能。首先编写实现Filter接口的LoginFilter类,通过配置规则(如结尾、包含、不包含路径)决定是否拦截请求,并判断用户会话状态,未登录则跳转至登录页。随后通过@Configuration和@Bean注册该Filter,使用FilterRegistrationBean配置初始化参数与拦截路径,确保其在请求处理链中优先执行。关键点包括Filter包位置及配置顺序。
2026-10-26 18:52:50
157
原创 19、设计模式应用举例:桥接模式:制作电视节目
本文通过桥接模式实现中央电视台频道与节目内容的解耦。定义抽象类CCTV和接口Program,将频道(CCTV5/CCTV6)与节目实现(体育/电影)分离。通过组合方式,使不同频道可灵活切换节目类型,实现抽象与实现的独立扩展,提升系统灵活性与可维护性。
2026-10-23 12:08:32
59
原创 17、设计模式应用举例:单件模式:多线程争冠军
本文设计并实现了一个基于单例模式的“冠军”类,通过多个线程模拟选手比赛。每个线程控制一个按钮从左向右移动,最先到达指定位置的线程将创建唯一的Champion实例,作为冠军。程序使用synchronized同步机制确保单例唯一性,并通过GUI展示比赛过程与结果,验证了单例模式在多线程环境下的正确应用。
2026-10-20 15:09:44
68
原创 14、设计模式应用举例:抽象工厂模式:存款凭证
本文基于抽象工厂模式设计银行存款凭证系统,通过定义抽象产品(存款单、公章)与具体实现,为不同银行(中国银行、建设银行、交通银行)提供定制化凭证。各银行类实现抽象工厂方法,生成对应存款单与具有独特形状和名称的公章图像。应用程序通过统一接口创建不同银行的凭证,实现产品族的协同生成,体现了抽象工厂模式在解耦与扩展性方面的优势。
2026-10-19 15:43:24
153
原创 13、设计模式应用举例:工厂方法模式:创建药品对象
本文基于工厂方法模式设计药店药品系统,定义抽象产品Drug及具体子类Paracetamol、Amorolfine,通过DrugCreator接口与具体创建者ParaDrugCreator、AmorDrugCreator实现对象的延迟创建。药店应用仅调用工厂方法获取药品实例,避免直接调用构造函数,确保成分信息由药厂提供,符合开闭原则,提升系统可扩展性与职责分离。
2026-10-18 16:42:10
266
原创 11、设计模式应用举例:迭代器模式:使用多个集合存储对象
本文设计并实现了一个基于迭代器模式的学生信息管理系统。使用链表存储学生数据,通过散列表快速查询指定学号学生,利用树集按成绩自动排序。系统支持添加、查找及按分数升序输出学生信息,体现了迭代器模式在遍历与数据组织中的高效应用。
2026-10-17 13:55:48
87
原创 10、设计模式应用举例:外观模式:解析文件
本文设计并实现了一个外观模式,封装了ReadFile、AnalyzeInformation和WriteFile三个子系统类。通过ReadAndWriteFacade外观类,用户只需调用doOption方法即可完成读取文件、删除指定内容(如HTML标签)并保存结果的完整流程,简化了复杂交互。该设计降低了客户端与子系统间的耦合,提升了可维护性与易用性。
2026-10-16 14:20:34
91
原创 9、设计模式应用举例:责任链模式:计算阶乘
本文基于责任链模式设计阶乘计算系统,通过UseInt、UseLong、UseBigInteger三类依次处理不同范围的阶乘计算:优先使用int型(内存少、速度快),超出后自动转为long型,最终由BigInteger处理任意大数。各处理者通过链式结构连接,实现灵活扩展与无缝切换,兼顾性能与计算能力。
2026-10-15 16:47:01
158
原创 8、设计模式应用举例:适配器模式:Iterator接口与Enumeration接口
本文通过适配器模式实现新旧系统图书名称数据的兼容。原系统使用Vector与Enumeration,新系统采用LinkedList与Iterator。设计IteratorAdapter类,将Enumeration适配为Iterator,使新系统能无缝导入旧系统数据。运行结果成功将“JAVA程序设计”等图书名称导入新系统并打印输出,体现了适配器模式在系统集成中的高效应用。
2026-10-14 14:45:03
93
原创 7、设计模式应用举例:策略模式:加密、解密文件
本文基于策略模式设计文件加密系统,定义EncryptStrategy接口封装加密与解密行为。实现两种具体策略:StrategyOne(加减法)和StrategyTwo(异或运算),均支持自定义密码。通过EncodeContext上下文类动态切换策略,实现对文件的灵活加密与解密。应用程序演示了使用不同策略对A.txt和B.txt进行加密、解密操作,验证了策略模式在算法替换中的灵活性与可扩展性。
2026-10-13 15:44:02
141
原创 6、设计模式应用举例:装饰模式:读取单词表
本文基于装饰模式拓展原有系统,实现对英文单词文件的多维度扩展。通过抽象组件ReadWord与具体组件ReadEnglishWord,结合装饰类Decorator及具体装饰WordDecorator,在不修改原代码的前提下,依次添加汉语解释和英文例句功能。利用外部文本文件(chinese.txt、englishSentence.txt)提供附加信息,最终实现读取单词并附带解释与例句的灵活扩展,满足不同用户需求。
2026-10-12 10:08:04
187
原创 5、设计模式应用举例:观察者模式:统计文本中的单词和数字
本文实现了一个基于观察者模式的文本分析窗口:用户在可编辑文本区输入内容时,系统自动触发更新,两个不可编辑文本区分别显示所含单词(按字典序)和数字。通过Observable与Observer机制,实现了主题与观察者的解耦,体现了发布-订阅模式的核心思想。
2026-10-11 11:54:32
263
原创 在tomcat应用里添加了一个线程池对象,向这个线程池发送任务,让其执行。 我希望在tomcat停机时,能等待线程池里的任务执行完了再停机,要如何实现?
本文介绍了如何通过ServletContextListener实现Tomcat停机时的线程池优雅关闭。
2026-04-20 14:56:48
82
原创 nginx:前后端分离常用配置
本文介绍了Nginx配置前后端分离项目的方法。前端静态资源(dist目录)配置在nginx/html/dist下,通过try_files处理Vue/React路由刷新问题。后端接口通过/api/**路径转发到SpringBoot应用(127.0.0.1:8080),并配置了代理请求头。重点说明了proxy_pass两种配置方式的区别:不带斜杠会保留/api前缀转发请求,带斜杠则去除/api前缀再转发。例如/api/user/login分别会转发到http://127.0.0.1:8080/api/user/
2026-04-17 13:00:06
117
原创 nginx:负载均衡
本文介绍了Nginx负载均衡的基础配置与常用策略。基础轮询方式通过在upstream块定义后端服务器,实现请求的依次分发。四种常用策略包括:1)权重轮询,根据服务器性能分配不同权重;2)IP哈希,确保同一IP访问固定服务器;3)最少连接,优先分配给连接数最少的服务器;4)URL哈希,使相同资源请求定向到固定服务器。此外还介绍了高可用配置,通过max_fails和fail_timeout参数实现故障自动剔除与恢复机制,并可设置备用服务器提升系统可靠性。
2026-04-17 11:28:38
159
原创 算法:双指针解:盛最多水的容器
本文介绍了一个求解"盛最多水的容器"问题的双指针算法。给定表示垂线高度的数组,通过初始化左右指针计算当前容器的面积,并移动较短边的指针来寻找更大面积。时间复杂度为O(n),空间复杂度O(1)。示例中数组[1,8,6,2,5,4,8,3,7]的最大盛水量为49。该算法高效地通过比较指针处的高度并移动较小者,逐步逼近最优解。
2026-03-18 18:40:13
99
原创 算法:用哈希求最长连续序列
摘要:本文提出一种O(n)时间复杂度算法,用于寻找未排序整数数组中最长连续数字序列的长度。算法首先将数组元素存入哈希集合,然后遍历集合,对每个可能的序列起始点(即其前驱不存在的数字),向后查找连续数字并计数。通过比较保留最大序列长度。示例验证了算法的正确性,如输入[100,4,200,1,3,2]输出4(序列[1,2,3,4])。该方法利用哈希集合实现高效查询,满足线性时间复杂度要求。
2026-03-17 18:38:04
65
原创 算法:字母异位词分组
本文介绍了将字符串数组中字母异位词分组的方法。算法核心是将每个字符串的字符排序后作为哈希表的键,原字符串作为值存入对应列表。这样具有相同排序结果的字符串(即字母异位词)会被自动归为一组。示例展示了如何将["eat","tea","tan"]等输入分组为[["ate","eat","tea"],["nat","tan"],["bat"
2026-03-16 18:42:07
39
原创 算法:用哈希求2数之和
摘要:本文介绍了在整数数组中找到两个数使其和等于目标值的问题。通过使用哈希表存储已遍历元素的值和索引,可以在O(n)时间复杂度内高效解决。算法核心是检查当前元素与目标值的差是否存在于哈希表中,若存在则返回对应索引,否则将当前元素存入哈希表。示例展示了该方法的应用过程,如输入[2,7,11,15]和target=9时,返回[0,1]。该方法优于暴力解法的O(n²)时间复杂度,实现了更优的解决方案。
2026-03-13 18:37:10
56
原创 用excel写一个年会抽奖的小程序
摘要:本文介绍了一个简单的Excel随机抽奖方法。在A列输入姓名后,在B1单元格输入公式=INDEX(A:A,RANDBETWEEN(2,COUNTA(A:A))),按住F9键可随机刷新姓名,松开即完成抽奖。中奖后可直接删除该行姓名,避免重复中奖。这个方法操作简单,适用于小型抽奖活动。
2026-01-29 13:48:46
228
原创 bartender打印软件连接excel文档进行标签打印
本文介绍了使用Bartender软件批量打印二维码标签的详细步骤:首先在桌面新建文档并创建包含数据的Excel表格;接着设置纸张布局(以A4纸5行3列为例);然后添加二维码并关联Excel数据库字段;最后通过打印对话框选择需要打印的记录范围(如1-5行)。整个过程包含18个关键操作步骤,从文档创建到最终打印输出,完整演示了如何利用Bartender实现数据驱动的标签批量打印功能。
2026-01-14 14:31:49
1317
原创 比较有BufferedOutputStream和无BufferedOutputStream 但使用byte[8192]的字节数组的写入速度
本文比较了使用BufferedOutputStream和普通FileOutputStream配合8192字节数组的文件写入性能。通过测试复制大文件,结果显示两种方式的执行时间相近(无缓冲约370ms,有缓冲约406ms),表明当手动使用足够大的缓冲区时,两者性能差异不大。代码演示了两种实现方式:一种使用缓冲流包装,另一种直接使用字节数组缓冲。测试结果表明,合理设置缓冲区大小可以消除缓冲流的性能优势。
2026-01-04 14:04:08
192
原创 使用Apache http的get方法,分片下载文件到本地
摘要:该代码实现了从飞书云盘分块下载大文件的功能。主要方法downloadRarFile通过循环调用httpGet方法,以100MB为分块单位进行断点续传下载。关键点包括:1)使用长整型变量处理超过2GB的大文件;2)通过HTTP Range头实现分块请求;3)支持206(部分内容)和200(成功)状态码处理;4)采用追加写入模式保存文件分块;5)包含完善的异常处理和日志记录。代码结构清晰,通过HTTP客户端实现高效的文件下载功能。
2025-12-31 10:23:00
125
原创 MinIO上传字节数组(java实现)
摘要:本文展示了一个Java程序示例,演示如何使用MinIO客户端将字节数组上传到MinIO对象存储服务。代码包含MinIO基础配置(端点、密钥、存储桶),通过MinioClient构建客户端,检查并创建存储桶,将字节数组转为输入流后上传。示例包含文本和图片上传方法,支持指定MIME类型。程序处理了可能出现的MinIO异常和其他异常情况,并输出上传结果信息。
2025-12-21 10:25:14
163
原创 飞书知识库备份
摘要:本文介绍了飞书知识库备份的Java实现方案。通过创建应用并添加机器人能力,获取知识空间ID后,使用递归方法遍历知识空间节点树,对文件类型节点进行下载保存。代码实现了分页处理、子节点递归遍历、文件下载及重试机制,将知识库内容备份到本地指定目录。核心类FeishuZSKMain包含获取节点列表和下载文件两个主要方法,支持自动创建目录结构并处理异常情况。
2025-12-18 15:25:11
329
原创 SQL进阶:not exists谓词
摘要:本文介绍了使用SQL中的NOT EXISTS子句进行成绩查询的两种方法,重点演示了如何将肯定条件转换为双重否定表达式。第一个查询查找所有科目成绩均高于50分的学生,通过"不存在任何科目低于50分"的条件实现;第二个查询筛选数学≥80分且语文≥50分的学生,转换为"不存在数学低于80分或语文低于50分"的条件。文中提供了完整的SQL表结构、数据插入语句和查询示例,展示了逻辑转换在数据库查询中的实际应用。
2025-10-24 18:28:15
376
原创 SQL示例:按时间,每隔10分钟分组统计产能
该SQL查询将生产数据按10分钟间隔分组统计,从2025年10月9日到16日的assemble表中提取数据。通过计算UNIX时间戳并取整到10分钟边界,生成标准格式的时间段标识(time_slot),然后统计每个时间段内的总产量(total_production)。结果按时间段排序输出,便于分析生产节拍和产能分布。查询适用于生产节拍分析、产能监控等场景。
2025-10-17 09:40:44
240
原创 POI:excel导出,合并单元格
摘要:该代码实现了一个Excel导出功能,通过查询Op300数据并生成XSSFWorkbook表格。首先创建表头,包含条码、时间、生产结果等8列字段。然后遍历查询结果,将测试项、测试值等数据拆分后逐行填充,并对相同记录的条码、时间等字段进行单元格合并。最后将表格写入字节流,设置响应头为附件形式返回给客户端。该方法处理了数据拆分和单元格合并,最终生成可下载的Excel文件。
2025-10-17 09:18:44
148
maven+ssm+mysql+bootstrap(项目框架2024)
2024-07-30
oracle连接工具plsqldev9,64位
2018-09-29
oracle 11G连接工具plsqldev9,64位和32位
2018-09-29
springboot.demo.zip
2020-05-17
ssm五层架构+log4j+JUnit+通配
2018-07-04
ssm+log4j+JUnit(eclipse)
2018-06-26
Maven的聚合与继承DEMO(以及前后端分离)
2020-05-18
maven+Springmvc+spring+mybatis+log4j的Demo
2018-08-10
ssm+log4j+JUnit+ajax
2018-07-06
Springmvc+Spring+MybatisDemo
2018-06-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅