自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 关于AI的思考:AI进化困局与破茧之路

当ChatGPT用流畅的句子回答哲学问题时,当Midjourney生成媲美艺术家的画作时,人们似乎看到了智慧的火花。但若揭开这层华丽的面纱,会发现这些令人惊叹的成果,本质上仍是互联网时代经验碎片的拼图游戏。人工智能正在经历搜索引擎曾经遭遇的认知陷阱——在浩如烟海的数据迷宫中,我们建造了一个无限接近完美的经验复制系统,却始终未能触摸到真正的创新之门。

2025-04-02 10:49:57 924

原创 Mavan项目打包插件 打包成可执行Jar包

如果你的项目依赖了其他库,并且需要将所有依赖打包到一个可执行的 JAR 文件中,可以使用。中添加以下内容,确保生成的 JAR 文件包含。来正确生成包含主清单属性的 JAR 文件。你可以使用 Maven 的。

2025-03-25 10:42:17 336

原创 国产化各组件选型

东方通TongHttpServer。东方通TongLINK/Q。金蝶天燕ADMQ(首选)东方通TongWeb。东方通TongRDS。

2025-03-03 14:28:47 455

原创 《IDEA配置Maven:从零开始的优雅依赖管理之旅》

引言:为什么需要Maven?想象一下,你正在开发一个Java项目,突然需要引入一个第三方库。手动下载Jar包、解决版本冲突、管理依赖关系……这感觉就像在超市里推着购物车,却找不到货架上的商品。而Maven,就是那个帮你自动整理购物车、精准定位商品的“智能管家”。今天,我们就从零开始,用IDEA配置Maven,让它成为你开发路上的“最佳拍档”。

2025-02-26 14:46:57 1526

原创 Windows实现无感锁屏

复制代码到文本中,修改后缀为.bat;然后双击运行,即可看到系统开始倒计时,然后10s之后锁屏;再新建一个vbs脚本,调用这个bat脚本,可以实现无感锁屏。双击运行,好像什么都没发生,但是到时间后就会自动锁屏~这个小黑窗很烦人,不想让他每次弹出;

2025-02-20 16:51:54 343

原创 缓存方案分享

选择合适的缓存方案是提升系统性能和可扩展性的关键。对于数据更新较频繁的系统,可以考虑使用覆盖更新策略;而对于不常更新的数据,则可以采用删除缓存策略。此外,进阶的缓存方案如缓存预热、缓存分层、缓存失效策略等,能够根据具体场景进一步优化缓存的效率和性能。针对不同的业务需求,结合不同的缓存策略,可以在保证数据一致性的同时,极大提升系统的响应速度和可扩展性。选择合适的缓存方案时,需要权衡数据一致性、查询性能、缓存管理成本等多方面因素。希望本文的分享能够帮助大家更好地理解和应用缓存技术,提升系统的性能和可靠性。

2024-11-27 16:47:42 1013

原创 Centos7安装最新版EMQX(v5.8.1)

由于从centos停止维护,导致yum源不可用,好多方法安装都有问题,各种缺依赖;其实最简单就是换操作系统,Ubuntu,centos停止维护之后我们现在服务器基本上都是Ubuntu;而我的环境又不想再折腾,所以折腾了一下centos安装,确实比较绕;记录一下;

2024-11-01 10:46:36 1010 5

原创 ThingsBoard最新版本(v3.8)源码编译运行

ThingsBoard最新版本(v3.8)源码编译运行

2024-10-18 15:09:38 1998 9

原创 工厂模式在短信发送中的应用 —— 以腾讯云、阿里云、华为云为例

工厂模式是一种创建型设计模式,它允许我们通过定义一个工厂接口来决定在运行时创建哪个对象,而不是直接在代码中硬编码具体类。这样,我们的代码将与具体的实现类解耦,便于未来扩展和维护。首先,定义一个通用的短信发送接口SmsService,其中包含发送短信的核心方法sendSms。每个短信服务商都必须实现这个接口。/*** 发送短信的方法* @param phoneNumber 接收短信的手机号* @param message 发送的短信内容*/

2024-09-25 11:07:34 597

原创 工厂模式的介绍及实现

工厂模式(Factory Pattern)是一种创建型设计模式,提供了一种创建对象的接口,而无需显式指定对象的具体类。在这种模式中,我们通过定义一个工厂类,专门负责生产各种类型的对象,这样我们可以避免直接在代码中实例化具体类,使代码更具扩展性、灵活性和维护性。解耦:客户端代码与具体的类解耦,避免了对象创建逻辑的重复。简化对象创建:通过工厂统一管理对象的创建逻辑,使代码更清晰易懂。扩展性强:新增类时,只需在工厂中增加创建逻辑,而不必修改现有的业务代码。

2024-09-25 10:59:43 283

原创 设计模式种类?23种设计模式是哪23种?

中所提到的,总共有 23 种设计模式。这些模式可以分为三大类:创建型模式(Creational Patterns)、结构型模式(Structural Patterns)、行为型模式(Behavioral Patterns)。当然,我们还会讨论另一类设计模式:J2EE 设计模式。根据设计模式的参考书。

2024-09-23 14:36:59 387

原创 设计模式六大原则:面向对象设计的核心

在面向对象编程(OOP)中,设计模式为编写高效、可维护且可扩展的代码提供了重要指导。而这背后的核心是设计模式中的六大原则。本文将详细介绍这些原则,并使用Java代码实例进行说明。

2024-09-23 14:24:48 578

原创 pig4cloud自定义SecurityFilterChain、Filter

在现在pig4cloud的版本中具体的做法是声明一个Configuration配置类,然后声明要生成SecurityFilterChain的方法,逻辑里将要添加的Filter可以做成一个List集合,然后添加到SecurityFilterChain中;要自定义多个SecurityFilterChain只需要在MySecurityConfig中再写一个返回SecurityFilterChain的方法,跟4.2中的一样,添加test2的SecurityFilterChain;重新启动项目,然后发送请求;

2024-09-20 16:15:00 686

原创 pig4cloud中RequestMatcher的添加

他们都已经有了匹配规则。这个方法主要是创建一个metadataSource,通过metadataSource创建FilterSecurityInterceptor对象,然后将其加入到http对象的filter中;可以看到添加了一个AntMatcher,将所有要放行的url(之前配置文件application.yml有配过的security.oauth2.ignore中的和默认放行的)最后将处理好的FilterSecurityInterceptor放入HttpSecurity的对象http的filter中;

2024-09-20 08:30:00 844

原创 pig4cloud的Filter匹配matcher过程

循环执行matches方法进行匹配,第一个是OrRequestMatcher,这个RequestMatcher的实现是将多个RequestMatcher进行组合,只要满足一个就算匹配;顺着第一条FilterChain进入matches方法,会先进入DefaultSecurityFilterChain(FilterChain的实现对象)中的matches方法;然后再调用自己的内部类的对象的接口实现,然后去父类AntPathMatcher中进行最终的url匹配。pig4cloud版本:3.7.1-JDK8。

2024-09-19 15:30:00 912

原创 人工智能时代,程序员如何保持核心竞争力?

在当今人工智能时代,科技的飞速发展如同一股汹涌的浪潮,不断冲击着各个行业。对于程序员这个群体来说,AIGC(如 ChatGPT、Midjourney、Claude 等)大语言模型的涌现以及 AI 辅助编程工具的日益普及,无疑带来了深刻的变革。在这个充满挑战与机遇的时代,程序员们究竟该如何保持核心竞争力,成为了一个备受关注的问题。

2024-09-19 12:19:49 1057

原创 pig4cloud鉴权token的处理流程

pig4cloud鉴权token的处理流程,源码刨析。

2024-09-19 10:40:48 1099

原创 pig4cloud登录请求处理流程以及token的签发

可以看到有4种converter的实现,跟进其converter方法,可以看到,其实就是根据grantType检查是否支持此操作,而这个OAuth2ResourceOwnerBaseAuthenticationConverter是支持password方式的,然后跟进第一个AnonymousAuthenticationProvider的support方法中,可以看到此方法支持的token是AnonymousAuthenticationToken或者他的子类、实现类。可以看到可选的providers有14个;

2024-07-31 11:26:35 1379

原创 pig4cloud请求分发流程和pig4cloud的Filter

OAuth 2.0令牌端点的过滤器,它处理OAuth 2.0授权授予的处理。这实际上是对旧的httpessioncontextintegrationfilter的重构,将存储问题委托给一个单独的策略,允许在请求之间维护安全上下文的方式上进行更多定制。这个过滤器是一个比较重要的,当客户端访问资源时,RequestCacheAwareFilter尝试冲缓存中查找已经保存的Request,默认是存储到Session的Attitude种的,默认的key为SPRING_SECURITY_SAVED_REQUEST。

2024-07-31 11:08:13 1011

原创 ubuntu24无法网络无法连接的问题

今天使用ubuntu的最新版24.04碰见个很奇怪的问题,所有防火墙都是关闭的,但是无法访问3306端口。通过官方文档发现,原来新版本引入了AppArmor,进行了跟高级别的安全控制,这就是为什么所有的服务都是正常的,防火墙也都是关闭的却无法连接的原因。关闭AppArmor或者配置AppArmor的规则,命令请自行查找哈。

2024-07-21 02:41:51 1723

原创 pig4cloud启动流程

pig4cloud启动流程源码刨析

2024-07-20 17:15:00 1584

原创 基于SpringSecurity的最佳实践:Pig4Cloud

java 认证、权限管理框架

2024-07-20 08:30:00 1074

原创 redis操作set时的性能分析y以及一系列问题

redis zset的性能情况以及一系列问题

2024-07-19 09:00:00 774

原创 zset分数相同元素排序问题、score类型和值的问题

redis的 zset分数相同元素排序问题

2024-07-19 08:15:00 464

原创 Java操作Excel技术选型

Java操作Excel技术选型

2024-07-18 10:38:52 1009 1

原创 Java动态执行jar包中类的方法

通过反射可以实现动态调用jar包中类的方法

2024-07-08 16:07:48 1152 1

原创 微信小程序点击事件冲突的解决

有父组件group,里面有个button,当点击button时,目的是触发button的事件,实际却触发了container的事件点击按钮触发click1。

2024-06-29 05:54:14 690

原创 使用@Lazy注解解决循环依赖的问题

订单服务与用户服务的循环依赖假设在一个电商系统中,我们有两个服务类:OrderService 和 UserService。OrderService 需要访问用户服务来获取或更新订单关联的用户信息。例如,当处理订单时,可能需要检查用户的信用状态或地址信息。UserService 同样也需要访问订单服务,比如为了统计用户的购买行为或者计算用户的积分,这可能涉及到查询某个用户下的所有订单。

2024-06-25 13:38:45 589

原创 IDEA注释模板内容

Idea配置快捷键的内容;Idea注释模板

2024-06-03 14:15:12 232

原创 基于SpringBoot实现WebSocket实时通讯的服务端和客户端

实现服务端注册的客户端的列表;服务端向客户端发送广播消息;服务端向指定客户端发送消息;服务端向多个客户端发送消息;客户端给服务端发送消息;

2024-03-20 10:10:07 1100

原创 Tomcat的安装

Windows安装Tomcat、Linxu安装Tomcat,最简单方便的安装Tomcat;

2024-03-15 14:09:43 396

原创 数据库设计的三范式

数据库设计的范式,数据库设计的三范式。第一范式(1NF):字段不可再拆分第二范式(2NF):表中任意一个主键或者任意一组联合主键,可以确定除该主键外的所有非主键值第三范式(3NF):在任意主键都可以确定非主键值的情况下,不能存在通过某非主键字段A还可以获取到某非主键字段B。

2024-03-15 11:07:25 517

原创 host文件的位置,Linux中、Win中host文件的位置

host文件的位置,Linux中host文件的位置、Win中host文件的位置。

2024-03-14 16:11:05 851

原创 编码、加密、哈希化分别是什么意思

一文讲清楚什么是编码、加密、哈希化

2024-02-28 14:59:22 510

原创 Java连接MySQL实现增删改查最简单的实现

小白都能看懂的Java使用JDBC连接MySQL实现增删改查

2024-02-28 14:45:02 2282

原创 设计模式概述

什么是设计模式?为什么要用设计模式?设计模式的使用场景?设计模式的定义?设计模式的六大原则?设计模式适用什么情况,什么情况不适用?

2024-02-28 10:37:00 368

原创 for、foreach、stream循环性能比较

for、foreach、stream都可以循环处理数据,如果单纯当循环使用,for、foreach、stream哪个性能更好?

2024-01-29 10:27:48 909 1

原创 下载大文件时内存溢出情况分析解决

下载小文件没有问题,在超过100M左右时会报错`org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.OutOfMemoryError: Java heap space`;

2024-01-26 13:38:31 1729

原创 重构第十二章:大型重构 and结语

至此这本书就这样草草结束了,后面肯定是还会来刷第二遍、第三遍的,在这一次的阅读中,我基本上只是快速的找手法,对深入理解可能还有欠缺,尽管如此,我还是深感收获颇丰,对代码重构这一看似琐碎而实则深具影响力的技术有了更深刻的理解。首先,本书以通俗易懂的语言阐释了代码重构的核心理念和基本原则,使得这个看似复杂的主题变得亲切而易于理解。通过“马老师”的引导,我逐渐认识到重构并非只是修补 bug 或优化代码,更是一种有组织、有策略的代码演进方式。

2023-12-29 09:45:27 652

原创 重构第十一章:处理概括关系

第十一章系统介绍了一系列处理概括关系的重构手法,旨在优化继承关系和其他类型的概括关系,提高代码的可维护性和可读性。在使用这些技巧时,要根据实际情况选择最适合你的方法,确保代码清晰易懂,确保代码的质量和可维护性。解决方法:将相似的属性和方法提取到一个超类中,让多个类都能继承这个超类。解决方法:将只有某个子类使用的方法移到该子类中,使得方法更加局部化。解决方法:将只有某个子类使用的字段移到该子类中,使得字段更加局部化。问题:子类的逻辑只是调用了父类的方法,没有实际的扩展。问题:父类中的方法只有某个子类使用。

2023-12-27 09:45:38 768

基于微信小程序的校园二手交易平台

系统分为三个端,分别是客户端、管理端、服务端; 客户端:使用原生微信小程序实现 管理端:使用Layui实现 服务端:使用Java SpringBoot实现 用到的所有技术栈: 客户端:微信小程序 管理端:Html、Css、JavaScript、Layui、Ajax、JQuery 服务端:Java JDK8、SpringBoot、Mybatis 数据库:MySQL 工具:Idea、HBuilderX、微信小程序开发者工具、xampp、Navicat 安装教程 启动MySQL服务,新建数据库second_market,导入数据库文件second_market.sql 启动服务端,在idea中打开SecondMarketServer,修改application.yml文件中的数据库连接信息,启动项目 启动管理端,在HBuilderX中打开SecondMarketManager;修改AppConfig.js中的服务器信息, 配置web服务器,可以使用Nginx或者

2024-07-31

空空如也

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

TA关注的人

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