- 博客(96)
- 收藏
- 关注
原创 Java进阶教程(一)关键字
具体在Window->Preferences->Java->Installed JREs,选择相关版本,点击edit,在Default VM arguments里面输入-ea。expression1表示一个boolean表达式,expression2表示一个基本类型、表达式或者是一个Object,用于在失败时输出错误信息。synchronized:当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。instanceof:在运行时指出对象是否是特定类的一个实例。
2026-01-07 23:07:40
206
原创 如何配置 PostgreSQL 允许远程连接 - 以 Odoo 数据库为例
在使用 Odoo 时,我们经常需要通过远程工具(如 DataGrip、pgAdmin 等)连接数据库进行管理和查询。然而,PostgreSQL 默认只允许本地连接,需要进行适当的配置才能实现远程访问。通过以上配置,我们成功启用了 PostgreSQL 的远程连接功能,使得可以通过 DataGrip 等工具远程管理 Odoo 数据库。在实际应用中,请根据自己的网络环境和安全需求调整相关配置。配置完成后,您就可以使用 DataGrip 或其他数据库管理工具远程连接和管理您的 Odoo 数据库了。
2025-12-01 22:27:13
701
原创 【Sql Server】随机查询一条表记录,并重重温回顾下自定义函数的封装和使用
温故而知新,最近在写sql查询语句,需求是随机查询表的其中一条记录。基于这个查询,顺便把数据库自定义函数、存储过程这个两个知识点重温固定下。因此,本篇文章将在随机查询一条表记录的基础上,把sql语句封装到函数和存储过程里。SQL Server中的函数可以分为两类:系统函数和用户自定义函数。1.系统函数这些函数是由SQL Server提供的内置函数,用于执行各种操作,如字符串处理、数学运算、日期时间处理等。例如,LEN()用于返回字符串的长度,GETDATE()用于返回当前日期和时间等。
2025-12-01 20:29:13
584
原创 SQL按指定字符分割字符串
在SQL中分割字符串通常需要使用特定的函数,因为SQL本身并不像编程语言那样直接支持字符串分割。不同的数据库系统有不同的函数来处理字符串分割。
2025-12-01 18:15:26
190
原创 springboot整合modbus实现通讯
本文基于springboot和modbus4j进行简单封装,达到开箱即用的目的,目前本方案仅实现了tcp通讯。代码会放在最后,按照使用方法操作后就可以直接使用在使用本方案之前,有必要对modbus有一个简单的认知,其中包含modbus协议Modbus是一种串行通信协议,是Modicon公司(现在的施耐德电气Schneider Electric)于1979年为使用可编程逻辑控制器(PLC)通信而发表。Modbus已经成为工业领域通信协议的业界标准(De facto),并且现在是工业电子设备之间常用的连接方式。
2025-11-30 21:39:56
581
原创 Spring Boot + Spring AI快速体验
Spring AI是Spring的一个子项目,是Spring专门面向于AI的应用框架。Spring AI 项目旨在简化整合人工智能功能的应用程序开发,避免不必要的复杂性。汲取了著名的 Python 项目 LangChain 和 LlamaIndex 的灵感,但 Spring AI 并不是这些项目的直接移植。该项目的成立的信念:下一波生成式人工智能应用程序不仅将面向Python开发人员,而且将在许多编程语言中无处不在。@Bean。
2025-11-30 18:59:37
745
原创 Nginx 之Rewrite 使用详解
Nginx 的rewrite模块是处理 HTTP 请求过程中的一个重要功能,它允许基于 Perl 兼容正则表达式(PCRE)对用户请求的 URI 进行重写,并返回 30x 重定向跳转或按条件执行相关配置。这个模块提供了灵活的 URL 重写和重定向功能,可以用于实现友好 URL、301/302 重定向、条件重写等。
2025-11-30 17:03:03
902
原创 MS SQL Server partition by 函数实战二 编排考场人员
现提供考场分配信息EXCEL文件(包括考场编号 、考场名称、考场容纳人数等),希望根据准考证号升序,将考生分配于对应的考场中,并生成对应的座位号(也即每一个考场的排序号),即分配原则为准考证号越小,考场号和座位号越靠前。如图我们可以看到 lzkzh 为左截取的4位准考证分类号,zkzh2为最小号,zkzh3为最大号(本考场内),像第6考场,有两个分类范围,为了便于更直观的显示数据,将其显示为一行,我们可以编写存储过程来实现这一需求。(3)将准考证号信息左连接考场座位信息,生成考生分配明细表(包装为视图)。
2025-11-30 15:07:19
708
原创 专题二:Spring源码编译
在中我们从整体模块对Spring有个整体的印象,现在正式从最基础的Spring模块进一步学习,第一步当然是下载源码,因为Spring是用的Gradle编译,对于我们大部分使用Maven做jar包管理的还是不太熟悉,因此记录下。
2025-11-30 01:29:20
966
原创 Spring Cloud gateway 路由规则
匹配 /api/user/ 下的所有子路径,包括多级子路径,例如 /api/user/profile 和 /api/user/orders/123。作用:定义一组断言,用于决定请求是否匹配该路由。作用:定义一组过滤器,用于在请求转发前后对请求或响应进行修改。匹配 /api/user/ 后跟一个或多个数字的路径,例如 /api/user/123。匹配 /api/user/ 下的一级子路径,例如 /api/user/profile。匹配请求路径为 /api/user 的请求。
2025-11-29 20:14:12
663
原创 Nginx 之Rewrite 使用详解
Nginx 的rewrite模块是处理 HTTP 请求过程中的一个重要功能,它允许基于 Perl 兼容正则表达式(PCRE)对用户请求的 URI 进行重写,并返回 30x 重定向跳转或按条件执行相关配置。这个模块提供了灵活的 URL 重写和重定向功能,可以用于实现友好 URL、301/302 重定向、条件重写等。
2025-11-29 17:32:30
1008
原创 Java进阶06List集合&泛型
在内存中不是连续的,每个结点有自己的存储地址,包含其存储的具体数据值和下一个结点的地址。见名知义,单链表即链接方向是单向的,对链表的访问要通过顺序读取从头部开始。**注意:**next()方法每调用一次,迭代器指针会后移一位,就会把不同集合元素的信息拼接到一起打印,为了避免这种信息错乱,增强for循环是JDK5之后出现的,其内部原理就是一个Iterator迭代器,它简化迭代器的代码书写,是迭代器遍历的语法糖。接口中的某个抽象方法确定不了参数的具体类型,就可以声明泛型,让该方法的泛型去匹配接口的泛型。
2025-11-29 14:53:02
730
原创 配置MyBatis-Plus打印执行的 SQL 语句到控制台或日志文件中
不同的日志等级表示不同程度的重要性或严重性,这有助于开发者根据需要过滤和查看日志信息。这些信息在诊断问题时可能很有用,但它们可能会产生大量的日志数据,因此一般只在开发或调试环境中使用。它提供的信息量适中,既不会太多也不会太少,适合于生产环境中的常规日志记录。请注意,在生产环境中应当谨慎配置日志级别,避免因为过多的日志记录而影响性能。致命级别,代表了极其严重的错误,通常是不可恢复的情况,可能导致整个应用程序崩溃或必须立即停止操作。当你设置一个日志等级时,实际上你也在选择是否要显示更高(更严格)级别的日志。
2025-11-29 04:30:26
304
原创 使用 java -jar 命令启动 Spring Boot 应用时,指定特定的配置文件的几种实现方式
如果你想使用特定的配置文件名,而不必指定完整路径,可以使用 --spring.config.name 参数。1.指定路径和文件名:使用 --spring.config.location 或 -Dspring.config.location 指定完整路径。2.仅指定文件名:使用 --spring.config.name 或 -Dspring.config.name 指定文件名。同时使用 --spring.config.location 和 --spring.config.name。
2025-11-29 01:57:12
348
原创 ThinkPHP和PHP的区别
PHP,即“超文本预处理器”,是一种在服务器端执行的脚本语言,它与C语言类似,是常用的网站编程语言。PHP的语法混合了C、Java、Perl以及PHP自创的语法,易于学习和使用。ThinkPHP是一个基于PHP的MVC(Model-View-Controller)框架,旨在简化企业级应用开发。它提供了一整套协作开发的规范,是一个提高开发效率、优化产品结构、促进团队协作的框架。PHP是一种编程语言,提供了基础的编程功能,适合从简单到复杂的所有类型的网络应用开发。
2025-11-28 23:23:27
391
原创 Spring TransactionTemplate 深入解析与高级用法
TransactionTemplate` 是 Spring 框架中一个强大的工具,它允许开发者以编程方式控制事务。通过本文的详细解析和示例代码,我们可以看到如何使用 `TransactionTemplate` 来执行事务性操作,并处理高级事务场景。在实际开发中,合理使用事务管理对于确保数据一致性和系统稳定性至关重要。
2025-11-28 20:38:20
221
原创 Nginx—Rewrite
匹配输入字符串的起始位置匹配输入字符串的结束位置匹配前面的字符零次或多次匹配前面的字符一次或多次匹配前面的字符零次或一次匹配除 之外的任何单个字符转义字符,使后面的字符被视为普通字符或特殊字符d匹配数字(相当于[0-9]{n}匹配前面的字符恰好 n 次{n,}匹配前面的字符至少 n 次{n,m}匹配前面的字符至少 n 次,至多 m 次[]定义字符集,匹配括号内的任意单个字符[c]匹配单个字符 c[a-z]匹配小写字母中的任意一个匹配所有大小写字母或数字()
2025-11-28 17:59:22
302
原创 Java进阶06List集合&泛型
在内存中不是连续的,每个结点有自己的存储地址,包含其存储的具体数据值和下一个结点的地址。见名知义,单链表即链接方向是单向的,对链表的访问要通过顺序读取从头部开始。**注意:**next()方法每调用一次,迭代器指针会后移一位,就会把不同集合元素的信息拼接到一起打印,为了避免这种信息错乱,增强for循环是JDK5之后出现的,其内部原理就是一个Iterator迭代器,它简化迭代器的代码书写,是迭代器遍历的语法糖。接口中的某个抽象方法确定不了参数的具体类型,就可以声明泛型,让该方法的泛型去匹配接口的泛型。
2025-11-27 10:50:08
299
原创 使用Dify访问数据库(mysql)
1、在本地搭建数据库访问的服务,并使用ngrok暴露到公网。2、创建知识库,导入表结构描述。3、创建数据库访问工作流。4、创建数据库智能体。
2025-11-26 22:31:21
222
原创 【spring boot】 IDEA 启动springboot项目报missing ServletWebServerFactory
该问题出现原因多样,大多数是因为配置不当的问题,首先要确定自己问题是不是与本问题出现原因一样。
2025-11-26 21:22:45
312
原创 Windows下redis安装
进入Redis安装包目录,安装服务:redis-server.exe --service-install redis.windows.conf --service-name redisserver1 --loglevel verbosewin+r -> services.msc,可以看到服务安装成功。
2025-11-26 20:13:09
292
原创 Spring全家桶简介
它的目标是简化Spring应用和服务的创建、开发与部署,简化了配置文件,使用嵌入式web服务器,含有诸多开箱即用的微服务功能,可以和spring cloud联合部署。也就是我们经常说的spring框架,包括了ioc依赖注入,Context上下文、bean管理、springmvc等众多功能模块,其它spring项目比如spring boot也会依赖spring框架。是一个数据访问及操作的工具集,封装了多种数据源的操作能力,包括:jdbc、Redis、MongoDB等。
2025-11-26 19:03:09
409
原创 SpringBoot【十一】mybatis-plus实现多数据源配置,开箱即用!
环境说明:Windows10 + Idea2021.3.2 + Jdk1.8 + SpringBoot 2.3.1.RELEASE正常情况下我们在开发系统的时候都是使用一个数据源,但是由于有些项目同步数据的时候不想造成数据库io消耗压力过大,便会一个项目对应多个数据源,即就会有个问题,Springboot配置db都是默认加载数据源连接,连接池默认配置,但是配置多个数据库url,这该怎么实现呢?
2025-11-26 17:52:47
311
原创 使用Springboot实现MQTT通信
MQTT(Message Queuing Telemetry Transport)是一种基于发布/订阅模型的轻量级消息传输协议,常用于物联网(IoT)场景中。它设计简洁、带宽占用少,非常适合资源受限的设备和网络环境。
2025-11-25 16:36:22
235
原创 【Springboot】@Autowired和@Resource的区别
Resource 和@Autowired 这两个注解的作用都是在Spring 生态里面去实现Bean 的依赖注入。
2025-11-25 15:26:41
241
原创 Spring推出Spring AI框架,看看怎么个事
在当今快速发展的技术时代,人工智能(AI)已经成为各行各业的关键驱动力。而作为一种领先的Java应用开发框架,Spring Framework在软件开发领域享有盛誉。下面跟着我一起去了解Spring AI的庐山真面目吧。官网地址如下:https://spring.io/projects/spring-ai#learn文档地址如下:https://docs.spring.io/spring-ai/reference/index.html。
2025-11-25 12:59:45
637
原创 springboot3整合SpringSecurity实现登录校验与权限认证(万字超详细讲解)
用户提交登录请求Spring Security 将请求交给 UsernamePasswordAuthenticationFilter 过滤器处理。UsernamePasswordAuthenticationFilter 获取请求中的用户名和密码,并生成一个 AuthenticationToken 对象,将其交给 AuthenticationManager 进行认证。
2025-11-25 11:34:28
746
原创 python的sql解析库-sqlparse
sqlparse的__init__方法中提供了四个基础方法用于将一个或多个 SQL 语句的字符串解析成 Python 对象,这些对象构成了一个抽象语法树(AST)源码按照符号分割sql后返回一个元组, 可以递归获取所有的值2.format(sql)格式化代码, 返回格式化后的代码字符串源码:参数说明:sql: 需要格式化的 SQL 语句字符串。reindent=True: 自动重新缩进 SQL 语句,使代码块对齐。keyword_case=‘upper’: 将 SQL 关键字转换为大写。可选值有
2025-11-24 19:25:38
715
原创 Python爬虫完整代码拿走不谢
对于新手做Python爬虫来说是有点难处的,前期练习的时候可以直接套用模板,这样省时省力还很方便。若要更改爬取网站,则需要更改URL以及相应的html格式(代码中的“item”)。使用Python爬取某网站的相关数据,并保存到同目录下Excel。
2025-11-24 19:25:07
374
原创 MySQL 篇 - Java 连接 MySQL 数据库并实现数据交互
通过本文的介绍,你已经学会了如何在 Java 中连接 MySQL 数据库并实现数据交互。数据库连接:使用 JDBC 连接 MySQL 数据库。数据操作:实现插入、查询、更新和删除(CRUD)操作。最佳实践:使用避免 SQL 注入。在实际应用中,建议使用连接池(如 HikariCP 或 DBCP)来提高性能和资源利用率。同时,可以考虑使用 ORM 框架(如 Hibernate 或 MyBatis)来简化数据库操作,提高开发效率。希望本文能帮助你快速上手 Java 与 MySQL 的数据交互!
2025-11-24 14:08:57
398
原创 Java进阶之多线程
(2)synchronized方法控制对“对象”的访问,每个对象对应一把锁,每个synchronized方法都必须获得调用该方法的对象的锁才能执行,否则线程会阻塞,方法一旦执行,就独占该锁,直到该方法返回才释放锁,后面被阻塞的线程才能获得这个锁,继续执行。如果是模拟出来的多线程,即在一个cpu的情况下,在同一时间点,cpu只能执行一个代码,因为切换的很快,所以就有同时执行的错觉。线程同步:就是一种等待机制,多个需要同时访问此对象是线程进入这个对象的等待池形成队列,等待前面线程使用完毕,下一个线程在使用。
2025-11-24 12:58:22
835
原创 Spring Boot 多数据源解决方案:dynamic-datasource-spring-boot-starter 的奥秘(上)
dynamic-datasource-spring-boot-starter 是一个用于在 Spring Boot 项目中实现动态数据源切换的工具。在实际的应用开发中,经常会遇到需要连接多个数据源的情况,例如一个销售系统会根据不同的业务模块,如线索、订单、库存、物流等连接到不同的数据库。手动管理多个数据源的切换和配置是一项复杂且容易出错的任务,而这个 starter 就是为了解决这些问题而生。
2025-11-23 06:00:06
842
1
原创 PostgreSQL 向量扩展插件pgvector安装和使用
重新修改.bash_profile,配置PG_CONFIG和LD_LIBRARY_PATH,指定安装的postgresql 16.3版本。make编译调用的postgresql不是之前安装的 16.3,而是apt-get 安装的10.23版本。利用pgvector 前提是事先安装好postgresql,安装postgresql例可参考下文。make编译pgvector时无法识别安装的postgresql。安装的版本不是最新的版本而是10.23。pgvector的安装成功。
2025-11-23 04:51:19
948
原创 mysql表添加索引
在 MySQL 中,可以使用 ALTER TABLE 语句来为表添加索引。索引可以提高查询性能。一个表只能有一个主键索引,用于唯一标识表中的每一行。如果表中没有定义主键,可以使用 ALTER TABLE 添加。希望本文对你有所帮助!如果你有任何问题或建议,欢迎在评论区留言。用于对文本类型的列进行全文搜索。确保索引列的值是唯一的。
2025-11-23 03:40:05
349
原创 MySQL 数据库基础
数据库是一个用于存储、管理和检索数据的系统,可以组织和保存大量的数据,使得数据能够被高效地访问、更新和管理文件也可以用来存储数据,那为什么还要使用数据库呢?文件保存数据有以下缺点:文件的安全性问题文件不利于数据查询和管理文件不利于存储海量数据文件在程序中控制不方便基于上述问题,就可以使用更利于管理数据的系统 —— 数据库,它能够更有效的管理数据,且可以提供远程服务,即 通过远程连接来使用数据库,因此,也称为数据库服务器。
2025-11-23 02:31:04
775
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅