- 博客(258)
- 资源 (2)
- 问答 (8)
- 收藏
- 关注
原创 spring cloud负载均衡分析之FeignBlockingLoadBalancerClient、BlockingLoadBalancerClient
这个方法主要根据配置注册懒加载bean或者是立即实例化的类,配置key是:spring.cloud.openfeign.lazy-attributes-resolution ,如果是true的话应该会加长应用启动时间,只有配置了true才会懒初始化;可以看出该注解类是一个 @Import 的复合注解,也就是说在启动过程中该注解具备@Import的功能,会引入FeignClientsRegistrar类;被@FeignClien注解的类,在运行的时候容器会生成一个动态类,从调用堆栈能看出;
2025-07-13 10:11:43
732
原创 【我的开源】多人协作思维导图 jsmindmulti(可本地安装、扩展开发)
jsmindmultijsmind多人协作版介绍多人协作脑图,站在巨人的肩膀上:前台是赫赫有名的开源的jsmind(可自己改源码,扩展性强),工具中对源码做了小小的改动;适合不能访问外网、或者不想把数据放外网的公司(现在很多互联网免费的协作脑图产品)..................
2022-04-10 15:59:05
11019
7
原创 【我的开源】远端服务器日志实时查看工具 Web-tailf
前一段时间由于项目原因,需要经常上服务器看日志;由于没有公共的页面查看与下载,就需要频繁的登录服务器,然后执行一堆命令,最后才能看到日志;这个过程太痛苦,网上搜了一圈没有合适的工具,于是自己下来写了一个日志实时查看的工具,取名叫tailf。gitee地址https://gitee.com/aqu415/tailf效果...
2021-03-06 11:07:00
4932
5
原创 Springboot2 自动扫描默认包路径来龙去脉
ConfigurationClassPostProcessor注入org.springframework.context.annotation.ConfigurationClassPostProcessor是一个BeanDefinitionRegistryPostProcessor(父类是BeanFactoryPostProcessor),会在容器初始化好并装载完第一阶段的bean定义后调用,我理解的其主要作用是执行一些框架内部方法也让用户自定义再次注入自定义的bean定义;它的注册是在Spring
2020-12-20 18:09:46
3414
2
原创 Springboot2 自动装配之spring-autoconfigure-metadata.properties和spring.factories(SPI机制核心)
SpringBoot启动源码分析
2020-07-29 21:51:45
19867
12
原创 理解rebase和代码合并操作流程
idea里合并代码选项提供了rebase和merge,其中有一个rebase xx onto yy,这个的意思是把xx分支基于yy分支最新记录重新变更提交记录,使变更记录变得简洁;
2025-12-13 11:20:32
196
原创 spring-boot之@KafkaListener注解自动装配流程
KafkaListener是spring-kafka框架提供的注解,spring-boot对其提供了原生的支持,即只要引入依赖及在配置文件加入kafka相关的配置就会触发kafka组件的自动状态(以spring-kafka 2.5.14为例子)
2025-12-08 15:25:43
174
原创 spring ai 初始化工具,代码链分析
org.springframework.ai.mcp.server.common.autoconfigure.StatelessToolCallbackConverterAutoConfiguration#syncToolsio.modelcontextprotocol.server.McpServer.StatelessSyncSpecification#buildio.modelcontextprotocol.server.McpStatelessAsyncServer#McpStatelessAsy
2025-11-22 10:48:56
177
原创 springboot项目启动时打印maven打包时间
生产环境部署的时候,开发给的包部署后没有生效;运维说开发给的包不对,开发说运维没有部署正确;于是想着能有一种方法来减少这种错误,启动的时候把打包的时间打印出来;在资源目录新增一个properties文件,注意这里一定是一个properties文件,不能是yaml。用两个@符号将maven打包可识别的变量包住。关键配置:filtering 为true。
2025-08-31 17:24:14
225
原创 正向代理与反向代理理解
应用a请求ng,然后ng根据不同请求路径将请求转发到不同的服务器,对于应用a来说这个ng是正向代理角色还是反向代理呢?,通过 Nginx 访问互联网上的其他服务(如。),此时 Nginx 是正向代理。但在你的描述中,Nginx 是作为。,因此属于反向代理。
2025-07-19 08:01:42
345
原创 win系统设置Windows Terminal Preview为默认启动的终端
安装完毕,这个时候在鼠标右键的地方会出现快捷菜单;但是在目录的地址栏或者操作系统搜索框里直接输入cmd打开的还是系统自带的黑窗口,不是很美观;点击下拉框的 终端设置,进入配置界面;然后设置“终端”为我们刚刚安装的 Windows Terminal Preview即可。地址:https://github.com/microsoft/terminal/releases。我们可以通过以下设置修改系统默认打开 Windows Terminal Preview。第一种方法是通过windows自带的应用商店安装。
2025-06-15 10:04:49
519
原创 【大模型系列】使用fastapi为langchain应用快速对外提供restful api
浏览器访问:http://localhost:8000/llm_chain/playground/ 可进入api调试界面。点击start,调用接口调试。以下是一个简单的例子。执行main方法启动。
2025-05-07 16:58:22
415
原创 【大模型系列】使用Hugging Face 提供的一个开源库Transformers下载模型并在本地加载运行
接上一篇,以下大概介绍通过transfers api从huggingface下载和本地运行模型的流程;
2025-05-05 08:11:03
897
原创 Java使用xmind8提供plugin sdk导出图片
3、下载后安装,到安装目录的plugins文件下找对于的jar包,jar包搜集到lib目录里(其中swt这个jar包需要根据不同操作系统选择)1、xmind8及之前的版本都是java开发的,以后版本是electron开发,那么xmind8的安装目录一定有文件导出相关的api;之前有一个大佬把xmind-core的部分代码上传了maven仓库,尝试了好像里面没有文件导出相关的api。2、下载xmind8最高版本地址:https://xmind.cn/xmind8-pro/
2025-04-30 12:20:00
510
转载 初识响应式编程之Flux 和 Mono
Reactor 是一个响应式编程的基础类库,其中有两个很关键的类:Flux 和 Mono。掌握这两个类和相关概念有助于我们学习响应式编程。Flux 和 Mono 都是数据流的发布者,使用 Flux 和 Mono 都可以发出三种数据信号:元素值,错误信号,完成信号;错误信号和完成信号都代表终止信号,终止信号用于告诉订阅者数据流结束了,错误信号终止数据流同时把错误信息传递给订阅者。
2025-04-09 21:36:05
181
原创 【大模型系列】提示词集合推荐
歌词和音乐创作:专门针对音乐生成系统“Suno AI”进行的歌词和音乐创作活动,根据系统规范和用户偏好,创作出适合特定音乐风格和结构的歌词和音乐作品。你是一位顶级作词、作曲专家,特别擅长编写优质押韵歌词,编写优美旋律歌曲!
2025-03-22 16:01:22
554
原创 【大模型系列】llama.cpp本地运行大模型
上一篇链接:我们讲了ollama本地运行大模型,这里我们介绍另一种本地运行大模型的方法:llamacpp。
2025-03-12 21:18:55
583
原创 【大模型系列】开发工具Cursor使用配置及备忘
Cursor 是一个基于Visual Studio Code(VS Code)技术构建的高级代码编辑器,专为提高编程效率并更深度地整合 AI 功能而设计;由于个人对vscode也是比较陌生,最近切换到这个工具最开始也是很不适应,不过时间长了还好逐步开始适应了新的工具;最近一段时间大模型开发工具cursor是比较火爆的,其提供的一个比较有价值的特性就是其ai辅助功能,其内部集成了若干大模型 提供免费使用期;做大模型开发这个话题应该是绕不过的,就像开发java使用idea;
2025-03-09 12:45:30
1424
原创 【大模型系列】使用ollama本地运行千问2.5模型
接上一篇介绍 https://blog.csdn.net/Aqu415/article/details/145668678 了本地运行大模型的方式,这篇简单介绍ollama方式。
2025-02-25 21:05:14
1233
原创 【大模型系列】使用docker安装向量数据库Milvus问题备忘
在大模型应用开发过程中,向量数据库是一个重要的知识点,在应用中扮演重要角色;以下介绍向量数据库 milvus。
2025-02-23 20:54:31
442
原创 【大模型系列】入门常识备忘
1、huggingface 网址 https://huggingface.co/2、魔塔社区 网址:https://modelscope.cn/home。
2025-02-16 18:57:18
393
原创 Springboot3 自动装配流程与核心文件:imports文件
spring-boot3应用启动入口是SpringApplication的构造方法,这个构造方法里做了一些初始化,比较重要。@A:标签当前应用的启动主类,也就是我们平常写的xxxApplication类。
2025-01-22 20:56:44
917
原创 spring-webmvc根据请求路径找到对应的 HandlerMethod
代码中有的时候想通过请求地址获得对应的controller处理方法(此时HttpServletRequest对象还没有生成),可以使用以下方法(以spring-webmvc6.1.2版本为示例)拿到HandlerMethod 进而可以获得对应的反射Method,进而获取到方法上的注解,可以做很多事情了。
2024-11-14 07:07:27
609
原创 maven指定模块快速打包idea插件Quick Maven Package
但是我们想打包指定的包,并想把这个组件依赖的组件也一起重新打包,只有第一:通过自己手动拼接命令 如:mvn package -pl 使用pl参数;随着组件的数量增加,就会引入一个问题问:我们在打包时只想打包某一个组件,使用idea自带maven插件打包时,如果依赖的包已经在本地install了,就不会对依赖的包重新进行打包了;这个时候有第三个方法:使用 Quick Maven Package插件对指定组件和该组件依赖的组件进行打包;该组件原理很简单就是拼接 mvn package -pl脚本然后执行。
2024-10-06 16:01:27
722
原创 spring boot通过全局配置解决jackson UnrecognizedPropertyException异常
在开发过程中,微服务间调用通过jackon做反序列化的时候,如果接收的对象和接收到的报文结构在字段上不一样,就会抛出以下异常。加载application.yaml配置文件里即可。
2024-09-25 21:34:23
499
原创 系统架构的发展历程之模块化与组件化
每个组件的运行仅依赖于平台或者容器,组件与组件之间不存在直接的耦合关系。组件经过组装后可以与其他组件进行业务上的交互。组件化也不等同于应用集成,应用集成是将一些基于不同平台或不同方案的应用软件有机地集成到一个无缝的、并列的、易于访问的单一系统中,以建立一个统一的综合应用。模块化开发方法是指把一个待开发的软件分解成若干个小的而且简单的部分,采用对复杂。也就是不同模块之间的关系尽可能弱,以利于软件的升级和扩展。块是高内聚的,具有三种以上功能的模块则是低内聚的。(4)模块调用链的深度(嵌套层次)不可过多。
2024-09-07 20:09:34
767
原创 spring boot3框架@Validated失效
在网上查了相关资料,添加了spring-boot-starter-validation依赖但还是不行。springboot3添加@Validated后校验的是 javax.validation.constraints 包下的注解,有加了spring-boot-starter-validation还没生效的,可以按照这个方向去排查一下;但是项目引用的还是javax.validation.constraints包下的注解,导致不生效;经过层层调试,终于发现问题;
2024-09-04 10:07:56
1917
原创 Gradle之使用国内镜像下载压缩包
使用国内的镜像地址,可在 https://mirrors.cloud.tencent.com/gradle/ 查看找到自己需要的,然后替换配置文件里的distributionUrl配置。在导入一些开源项目,比如大名鼎鼎的spring-framework,现在都是用gradle进行依赖;使用gradle有一个特别的地方就是每个项目可能使用不同的gradle版本;如上图,需要的gradle版本是8.5;但是有一个问题就是这个下载很慢,可能会下载失败;刷新后,就会开始下载了。
2024-08-26 09:37:08
932
原创 【Git命令】git rebase之合并提交记录
最后使用 git push origin your-branch-name 命令将变更推送到远端,如果涉及的提交部分已经在远端存在,则需要使用 git push --force-with-lease origin your-branch-name 命令进行推送。在本地提交了两个commit,但是发现根本没有没必要分为两次,需要想办法把两次提交合并成一个提交;然后会进入如下界面,键盘点击 i 进入编辑模式,使用 # 注释掉不必要的注释。键盘点击 esc 进入命令模式,再输入 :wq 点击 enter。
2024-07-20 08:59:05
1335
原创 RestTemplate文件上传之直接发送内存文件对象
在使用RestTemplate调用文件上传接口的时候,可以使用ByteArrayResource,FileSystemResource,InputStreamResource对文件进行包装。
2024-07-16 10:54:04
633
原创 maven打包指定的模块
在大的项目中,为了节约事件,我们有的时候只需要构建指定的项目,而不是全量的项目;但是在idea上勾选指定项目进行构建时,只会到仓库中寻其找依赖的模块,并不会把其依赖的项目也构建;由于仓库中可能不是最新的,这样就可能会导致构建失败。
2024-07-07 10:55:22
775
原创 文件上传之使用一个属性接收多个文件
在开发过程中,可能遇到这样的业务:文件上传时个数不定,这样我们不能枚举出所有的文件name,这种情况下我们可以使用一个name将所有的文件接收下来;
2024-06-02 11:00:18
496
原创 【spring boot外部化配置】之additional-location与import
如果我们想在spring boot里把某些配置独立出来到其他配置,而这些配置文件不被框架自动加载;配置路径:bootstrap.yml。
2024-05-19 17:53:50
781
原创 spring-cloud-starter-alibaba-nacos-discovery如何从nacos上获得已经注册的服务地址
在Spring Cloud中,可以使用Spring Cloud Alibaba Nacos Discovery来从Nacos服务器获取所有微服务的地址。然后注入DiscoveryClient。根据服务名称获得ip跟端口。
2024-05-05 14:16:51
820
1
原创 让人迷糊的ThreadLocalMap,看清他的本质
我们怎么才能更好的理解这个数据机构呢,首先给出答案:其实我们被他的名字弄迷糊了,他存数据的结构其实本质上是一个Array,我们把ThreadLocalMap改名成ThreadLocalArray就很清晰了;比如我们项目中创建了多个ThreadLocal对象A、B、C,并且每一个对象都调用了set方法,那么上面的数组就会被填充多个值;底层原理就是根据上面的对象A、B、C计算出这些对象在Entry数组中应该占用的位置,然后将set方法传的值保存进去。2、获得当前线程对象的ThreadLocalMap属性。
2024-04-14 10:06:45
326
原创 【工具】将类里的属性解析成属性描述的JSONArray数组
新建一个类,将类里的属性逐个解析出来,用一个json对象封装每一个属性的描述,展示上下级关系;
2024-04-07 21:00:30
437
lombok idea插件怎么做到在编译前不报错的
2022-12-26
lombok怎样做到编译器级别扩展的(开发工具-intellij-idea)
2023-01-02
lombok原理探索
2022-12-25
关于#FileChannel#的问题,如何解决?(语言-java)
2022-07-31
公司里都使用什么管理平台来管理k8s集群呢
2022-04-15
公司里都使用什么管理平台来管理k8s集群呢
2022-04-17
python中如何做代码复用呢
2021-06-07
python 有使用html构建gui的模块吗
2021-10-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅