- 博客(83)
- 收藏
- 关注
原创 Spring Boot 多数据源解决方案:dynamic-datasource-spring-boot-starter 的奥秘(上)
dynamic-datasource-spring-boot-starter 是一个用于在 Spring Boot 项目中实现动态数据源切换的工具。在实际的应用开发中,经常会遇到需要连接多个数据源的情况,例如一个销售系统会根据不同的业务模块,如线索、订单、库存、物流等连接到不同的数据库。手动管理多个数据源的切换和配置是一项复杂且容易出错的任务,而这个 starter 就是为了解决这些问题而生。
2026-04-04 05:26:56
287
原创 MySQL数据库报错:ERROR 2002 (HY000) Can‘t connect to local MySQL server through socket
在安装或配置MySQL数据库时,是一个常见的错误,这可能会阻碍数据库的正常使用。本文将深入探讨这个错误的原因、诊断方法以及详细的解决步骤,帮助你快速恢复MySQL数据库的正常运行。
2026-04-04 02:27:18
142
原创 SpringBoot3 集成 Shiro
是一个强大且易用的Java安全框架,提供了身份验证、授权、密码学和会话管理等功能。它被广泛用于保护各种类型的应用程序,包括Web应用、桌面应用、RESTful服务、移动应用和大型企业级应用。没有Spring Security 那么多晦涩的概念和术语,其原理非常清晰易懂,也非常容易集成到自己的项目中。SpringBoot 2.x 已于去年底End of life,升级到 SpringBoot 3 成了一件必须要做的事情,而SpringBoot 3 在集成 Shiro 时,有一些坑,也有一些与之前不同之处。
2026-04-02 07:29:17
221
原创 Partition架构
用户的请求保证在同一机房内完成闭环,但部分场景并不适合划分单元化,比如多机房库存扣减问题。【3】增加监控和库存不足告警通知,除了自动资源调配,对活动上线后进行机房间的库存情况实时观测和实时手动调配;【1】业务扣库存逻辑不调整,还是同步扣库存,但事先根据流量分配好每个机房库存;【2】增加库存调配机制,当库存不足时触发库存调配,从有多余库存的机房进行调配;流量比例,扩容成功率恢复后,需要恢复流量比例关系;倾斜,过峰后,因成本因素,恢复原有状态;故障域内收敛,故障会影响整个。故障域内收敛,故障会影响整个。
2026-04-02 04:13:01
327
原创 MS SQL Server partition by 函数实战三 成绩排名
关键语句:row_number() over (partition by zwmc order by kszcj desc,kscj1 desc,kscj2 desc),按 zwmc (职位名称)分区,以kszcj(考试总成绩) 降序排列,第二排序以kscj1(分项考试成绩1) 降序排列,,第三排序以kscj2(分项考试成绩2) 降序排列,row_number() 函数起到了总排序功能。现希望根据总成绩计算排名,成绩越高排名越靠前,相同成绩排名并列,另外有并列则按总数递增,如两个第1后是第3。
2026-04-02 00:55:42
351
原创 IDEA+Docker一键部署项目SpringBoot项目
接着需要编写一个用于定义和构建 Docker 镜像的文本文件,文件名为 Dockerfile,Dockerfile 中的配置可根据自身项目情况进行调整。在设置中找到 Docker,点击 +,选择以 SSH 方法连接到 Docker 守护进程,接着点击下拉列表,选择刚才创建的 SSH 配置。如果你点击小三角后部署失败,并且 IDEA 给出了以下提示,可能是因为 SSH 配置中的用户并没有连接 Docker 的权限。点击 +,创建一个新的 SSH 连接,填入主机、用户名和密码后点击测试连接。
2026-04-01 23:06:05
290
原创 数据界的达克摩斯之剑----深入浅出带你理解网络爬虫(First)
Raghavan等人提出的HIWE系统中,爬行管理器负责管理整个爬行过程,分析下载的页面,将包含表单的页面提交表单处理器处理,表单处理器先从页面中提取表单,从预先准备好的数据集中选择数据自动填充并提交表单,由爬行控制器下载相应的结果页面。传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定。聚焦爬虫爬行策略实现的关键是评价页面内容和链接的重要性,不同的方法计算出的重要性不同,由此导致链接的访问顺序也不同。
2026-04-01 19:41:14
410
原创 删除文件夹,被提示“需要来自 TrustedInstaller 的权限。。。”的解决方案
TrustedInstaller 是一个内置的系统账户,主要用于安装和更新 Windows 操作系统文件。这个账户具有非常高的权限,可以对系统文件和文件夹进行修改,而普通用户和管理员账户通常没有这样的权限。当你尝试删除或修改某些系统文件夹(如 windows.old),系统会提示你需要 TrustedInstaller 的权限,因为这些文件夹最初由 TrustedInstaller 创建,并且只有它具有完全控制的权限。
2026-04-01 05:38:06
284
原创 SpringBoot 集成 Activiti 7 工作流引擎
初始库表、定义、部署、操作任务代码创建测试类// 创建 ProcessEngine 对象// /**// * 初始化数据库表:第一种方式// */// @Test// }/*** 初始化数据库表* 通过读取 activiti.cfg.xml 配置文件*/@Test/*** 流程部署*/@Test// 创建 ProcessEngine 对象// 获取 repositoryService 对象// 进行部署。
2026-03-31 05:51:58
203
原创 node.js+npm的环境配置以及添加镜像(保姆级教程)
双击安装包,点击【Next】,勾选使用许可协议,点击【Next】,选择安装位置(可根据个人情况更换路径,例如在 D:App odejs)我上面点了Add to PATH,在安装的时候就自动配置好了,如果不行再根据这个方法手动配置一下环境变量。4.5在这里填入nodejs的安装地址,比如:D:App odejs,之后点击【确定】不选中,直接点击【Next】按钮,之后点击【Install】安装。4.1进入环境变量,编辑【系统变量】下的变量【Path】4.3选中系统变量中的path,点击【编辑】
2026-03-31 02:38:58
222
原创 MySQL JDBC连接数据库详细教程【全程干货】
JDBC,即,java数据库连接。是一种用于执行SQL语句的Java API,它是Java中的数据库连接规范。这个API由包中的一些类和接口组成,它为Java开发人员操作数据库提供了一个标准的API,可以为多种关系数据库提供统一访问最后来总结一下本文所学习的内容??
2026-03-30 11:50:25
316
原创 Java进阶总结——集合
说明:对于以上的框架图有如下几点说明1.所有集合类都位于java.util包下。Java的集合类主要由两个接口派生而出:Collection和Map,Collection和Map是Java集合框架的根接口,这两个接口又包含了一些子接口或实现类。集合接口:6个接口(短虚线表示),表示不同集合类型,是集合框架的基础。抽象类:5个抽象类(长虚线表示),对集合接口的部分实现。可扩展为自定义集合类。实现类:8个实现类(实线表示),对接口的具体实现。Collection 接口是一组允许重复的对象。
2026-03-30 11:03:41
268
原创 Golang 构建学习
Web开发虽然可以用多种不同的语言实现,但是基本的理论是一致的,比如鉴权,路由,数据库抽象,参数校验,mvc分层等等。第三个括号是输出参数的声明,注意这个没有向上面例子中提前声明返回值变量,需要在函数体中。函数如果是在模块内部,也就是同一个package目录下,则不同导入,直接调用就行。与以上雷同,区别在于返回值,如果两个相同类型的返回值,则可以采用省略的写法。引用传递: 函数中使用的是指向值的指针地址,通过函数修改传递的数据。值传递:函数中使用的是被复制的值,不影响外部数据。第二个括号是输入参数的声明。
2026-03-30 10:17:10
317
原创 RabbitMQ高级特性----生产者确认机制
题记:在Java微服务开发中,对于一个功能需要调用另一个服务下的功能才能实现的情况,我们通常会使用异步调用取代同步调用,进而实现增强业务的可拓展性和实现故障隔离以及流量削峰填谷的目的。而消息队列就是异步调用的解决方案之一。不过在使用消息队列实现异步调用的时候,可能会出现消息无法传递到位进而导致业务信息出现差异的情况,因此消息的传递的可靠性就显得尤为重要。
2026-03-30 06:32:53
275
原创 MYSQL 创建索引
第一次使用删除语句报错的原因是:由于自增列的错误,所以下面是先删除了自增属性,然后重新删除主键。创建唯一索引的方式有三种,和上面添加主键索引大致上是相同的,故只给出对应的代码部分。创建符合索引与创建普通索引语法相同,只不过是指定多个列,列与列之间用逗号隔开。其中:主键索引用PRI表示,唯一索引用UMI表示,普通索引用MUL表示。普通索引的三种创建方式和上面两种差不多,不过还是有一些不同的。查看索引的三种方式,在上面都有提到,现在可以进行一下总结。index 是创建索引的关键字,括号里是索引列。
2026-03-30 03:00:28
170
原创 【mysql】ERROR 1819 (HY000) Your password does not satisfy the current policy requirements的解决方案
创建mysql新用户的时候,提示如下错误。因为你设置的密码没有满足系统当前的密码安全策略要求。解决方案:出现错误信息 “Your password does not satisfy the current policy requirements” 通常是因为你设置的密码没有满足系统当前的密码安全策略要求。这种情况通常发生在你为 MySQL 用户或系统用户设置密码时。
2026-03-28 12:30:12
190
原创 SpringBoot 集成 Activiti 7 工作流引擎
初始库表、定义、部署、操作任务代码创建测试类// 创建 ProcessEngine 对象// /**// * 初始化数据库表:第一种方式// */// @Test// }/*** 初始化数据库表* 通过读取 activiti.cfg.xml 配置文件*/@Test/*** 流程部署*/@Test// 创建 ProcessEngine 对象// 获取 repositoryService 对象// 进行部署。
2026-03-28 08:21:33
171
原创 Nginx—Rewrite
匹配输入字符串的起始位置匹配输入字符串的结束位置匹配前面的字符零次或多次匹配前面的字符一次或多次匹配前面的字符零次或一次匹配除 之外的任何单个字符转义字符,使后面的字符被视为普通字符或特殊字符d匹配数字(相当于[0-9]{n}匹配前面的字符恰好 n 次{n,}匹配前面的字符至少 n 次{n,m}匹配前面的字符至少 n 次,至多 m 次[]定义字符集,匹配括号内的任意单个字符[c]匹配单个字符 c[a-z]匹配小写字母中的任意一个匹配所有大小写字母或数字()
2026-03-27 13:20:22
338
原创 SpringBoot+Mybatis-plus实现分页查询(一看就会)
首先我们需要引入分页插件配置,然后创建DTO和VO,DTO包含我们需要的进行查询的字段,继承PageDto,VO是返回信息的对象,这样做不会影响我们创建的实体类。接下来就是service接口和serviceImpl实现类的创建,在实现类里面编写我们分页的逻辑然后三部分结构,引入Page实例、查询语句编写、page方法进行查询并复制给VO对象用于返回信息。
2026-03-26 12:54:04
308
原创 Spring Boot问题总结
Svn 的 Update 与Maven 的update project 作用有什么区别 - 费曼带我飞 - 博客园。Spring Boot的启动器Starter详解 - chszs的专栏 - CSDN博客。参考了下其它正确的Spring Boot项目,发现是这行配置及代码出错了。然后执行:右击项目–>Maven–>Update Project(貌似Maven项目重新编译时使用后者比较好使。把它改成如下代码,重新install成功了。猜测可能是代码编译问题,尝试重新编译,Web开发要用后者。
2026-03-26 11:59:09
152
原创 Nginx在windows下安装启动
更改文件后要重新启动程序,才可运行,且除了80可以不写端口,其他都需要编写端口号。logs:存放Nginx日志的目录(登录的ip地址,正在运行的进程pid号)下载稳定版本,下载的为压缩包,解压到桌面,如图为1.26.2版本解压后文件。nginx:启动nginx程序,点击即可启动nginx程序。输入本机ip地址,点击浏览器浏览本机网址即可查看运行页面。docs:存放Nginx文档的目录(license)html:存放静态html文件的目录(登录的网页)nginx为应用程序,点击即可启动无其他画面。
2026-03-26 04:35:26
36
原创 JAVA进阶之线程
回答这个问题,就先要知道一点点计算机的工作方式。总所周知,计算机有五部分:输入输出、计算器、存储器、控制器。而在计算机内,CPU、内存、I/O之间的运行速度差别十分巨大,因此,为了使这几部分速度平衡、使计算机整体协调起来、提升性能,计算机分别在软硬件上做了努力:CPU增加缓存,以调节与内存的速度差异(可见性);操作系统增加进程、线程,分时使用CPU(原子性);编译器优化了程序的执行次序指令,使得缓存能够更加合理使用(时序性)由此可见,多线程实际上是在更有效地利用CPU的资源、使得程序运行更流畅。
2026-03-26 01:29:28
342
原创 Spring中的IOC详解
单例Bean和多实例Bean的生命周期主要区别在于实例化和销毁的管理方式,单例Bean在容器启动时创建一个实例,并由容器负责管理其生命周期的完整过程。在Spring框架中,Bean是应用程序的核心组件,它们由Spring容器创建、组装和管理,以帮助开发者实现松耦合、可测试和可维护的代码。IOC的一个重点是在系统运行中,动态的向某个对象提供它所需要的其他对象。Bean的自动装配是Spring框架提供的一种便捷的方式,用于自动解析和设置Bean之间的依赖关系,而无需显式配置每一个依赖关系的方式。
2026-03-26 00:01:26
391
原创 SpringBoot整合easy-es
EasyES是一款基于Elasticsearch官方提供的RestHighLevelClient开发的ORM框架,旨在简化开发流程并提高效率。EasyES在保持RestHighLevelClient原有功能的基础上进行增强,而不做任何改变。它采用与相似的语法,使得开发者可以无缝迁移至EasyES,无需额外学习成本。EasyES的核心理念是将简单、易用性留给用户,将复杂性留给框架,致力于成为全球最受欢迎的ElasticSearch搜索引擎开发框架。
2026-03-25 23:17:26
320
原创 spring.factories和org.springframework.boot.autoconfigure.AutoConfiguration.imports
spring.factories和org.springframework.boot.autoconfigure.AutoConfiguration.imports都是Spring Boot自动配置机制中的重要组成部分。
2026-03-25 22:32:51
251
原创 Redis的安装教程(Windows+Linux)【超详细】
点这里Redis是开放源代码(BSD许可)的内存中数据结构存储,用作数据库,缓存和消息代理。Redis提供数据结构,例如 字符串,哈希,列表,集合,带范围查询的排序集合,位图,超日志,地理空间索引和流。Redis具有内置的复制,Lua脚本,LRU逐出,事务和不同级别的磁盘持久性,并通过以下方式提供高可用性:Redis Sentinel和Redis Cluster自动分区。您可以 对这些类型运行原子操作,例如追加到字符串;在哈希中增加值;将元素推送到列表;计算集的交, 并与差;或获得排序集中排名最高的成员。
2026-03-25 16:06:35
276
原创 Nodemailer使用教程:在Node.js中发送电子邮件
Nodemailer是Node.js平台上最流行的电子邮件发送库,它提供了一个简单而强大的解决方案,支持Unicode内容、HTML内容、附件、图片嵌入等功能。SMTP(Simple Mail Transfer Protocol,简单邮件传输协议) 是一个在互联网上发送电子邮件的标准协议。
2026-03-25 14:52:30
186
原创 数据库高安全—openGauss安全整体架构&安全认证
具体认证方法如表2。Kerberos是一种基于对称秘钥技术的身份认证协议,开源组件Kerberos可以解决集群内节点或者进程之间的认证问题,即当开启kerberos之后,恶意用户无法仿冒集群内节点或进程来登录数据库系统,只有内部组件才可以持有用于认证的凭证,从而保证通过Kerberos认证,消减了仿冒风险,提升了数据库系统的安全性。其中第1列代表套接字方法,第2列代表允许被访问的数据库,第3列代表允许被访问的用户,第4列代表允许访问的IP地址,第5列代表访问的认证方式,第6列则作为对第五列认证信息的补充。
2026-03-25 00:05:15
186
原创 Window下Redis的安装和部署详细图文教程(Redis的安装和可视化工具的使用)
是Windows installer开发出来的程序安装文件,它可以让你安装,修改,卸载你所安装的程序。文中介绍了Windows中Redis的安装包mis和压缩包zip的安装教程,还有几个Redis常用的可视化插件,如。是用JAVA开发的,基于WEB方式对Redis管理,windows环境下载解压即可使用,里面有部署说明。如果出现连接不成功,注意服务打开以后,另启一个 cmd 窗口到Redis所在的目录执行命令,进行安装了,如果安装有杀毒软件可以会权限提示,全部允许即可,不要点错了。
2026-03-24 14:00:42
424
原创 SpringBoot项目如何导入外部jar包:详细指南
导入外部jar包到SpringBoot项目是一个简单的过程,只需要几个步骤:将jar包复制到资源目录,修改pom.xml文件以包含对jar包的引用,并确保在打包时包含这些系统依赖项。通过这种方式,你可以轻松地扩展你的SpringBoot应用的功能,而不受Maven中央仓库的限制。希望这篇文章能帮助你在SpringBoot项目中成功导入外部jar包。如果你有任何疑问或需要进一步的帮助,请随时在评论区留言。
2026-03-24 02:41:56
214
原创 SpringBoot 如何调用 WebService 接口
调用WebService接口的方式有很多,今天记录一下,使用 Spring Web Services 调用 SOAP WebService接口根据接口给出的SAOP的示例,封装好对应的实体类,因为我这里的类型都是String,大家也可以根据实际情况,封装好对应的类注意注解的参数,namespace = “http://*******/” 给接口提供的域名地址。
2026-03-23 16:56:38
32
原创 Spring Boot中使用Server-Sent Events (SSE) 实现实时数据推送教程
总结,Spring Boot中利用SSE实现实时数据推送既简单又实用,特别适合实时更新频率不高、实时性要求不严苛的场景。在Spring Boot项目中,无需额外引入特定的依赖,因为Spring Web MVC模块已经内置了对SSE的支持。创建一个SseEmitter,用uid进行标识,uid可以是用户标识符,也可以是业务标识符。3,通过ajax(/sendMsg),触发后端业务(循环十条数据发往页面),向页面发送消息。在这个例子中,前端每接收到一次SSE推送的事件,就会在id为"con"的元素中追加数据。
2026-03-23 15:51:21
215
原创 Redis Desktop Manager(Redis可视化工具)安装及使用详细教程
如下图所示:图2.2.6.1图2.2.6.1如下图所示:图3.2.1图3.2.1。
2026-03-23 10:41:50
393
原创 MySQL SQL100道基础练习题
select * from newtable where gz > (select max(gz) from newtable where dept_id = (select id from dept where dept_name = ‘财务部’));select name,(select dept_name from dept where id = dept_id) as ‘职位’,gz from newtable where name in (‘黄语焉’,‘李嘉欣’);
2026-03-23 02:48:41
204
原创 如何查询SQL Server数据库服务器的IP地址
本文将介绍几种简单而有效的方法,帮助你轻松获取这一信息。无论你是新手还是经验丰富的专业人士,这些方法都能为你提供所需的信息。获取SQL Server的IP地址有多种方法,从简单的T-SQL查询到使用图形界面工具。无论你选择哪种方法,了解如何获取这一信息都将有助于更好地管理和配置你的SQL Server环境。T-SQL(Transact-SQL)是SQL Server的扩展版本,提供了强大的查询能力。虽然这种方法不是特定于SQL Server的,但它可以快速获取服务器的网络信息。打开命令提示符(CMD)
2026-03-22 12:27:28
206
原创 史上最强!Spring Boot 3.3 高效批量插入万级数据的多种方案
自定义SQL批处理通过使用的方法,将多个插入操作打包成一个批量操作一次性提交。这种方法结合了Spring的和自定义的SQL批处理。在这篇文章中,我们深入探讨了几种在SpringBoot 3.3中实现高效批量插入数据的方法,包括JDBC批处理、自定义SQL批处理、单条插入、拼接SQL、MyBatis-Plus的`saveBatch和循环插入+批处理。每种方法都具有独特的优点和适用场景,在实际开发中可以根据需求选择最合适的方法。
2026-03-22 11:46:45
292
原创 从零开始在Windows系统上搭建一个node.js后端服务项目
打开app.js(原默认是index.js,没有选择直接回车,而是在后面输入app.js后再回车,因此我的入口文件就改成了app.js),可以看到,文件内是没有配置端口,以及启动打印的数据的,在这里可以自行手动配置下(app.get()或app.set()需要在var app = express();package文件内容随之改变,由于程序主入口是index.js,所以要创建index.js文件,(文件后缀必须是js)编辑index.js文件内容,为了快速,我们直接找到express官网,打开里面的示例。
2026-03-22 11:05:49
448
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅