随笔分类 -  15.Java/Scala

1 2 3 4 5 ··· 19 下一页
摘要:idea与cursor的整合方案众所周知,cursor是基于vs code魔改的一个独立应用,并不象copilot、通义灵码 这类采用plugin机制的AI辅助编码工具。在cursor-cli 与 idea MCP出来之前,只能通过idea里安装 Switch2Cursor Plugin for JetBrains IDEs | 阅读全文
posted @ 2025-10-19 00:40 菩提树下的杨过 阅读(793) 评论(0) 推荐(0)
摘要:虚拟线程的pinned问题终于被jdk25完美解决了虚拟线程是一个非常有用的特性,但是JDK25以前,一直存在pinned问题,一些场景下会导致平台线程被占用无法释放。 比如下面的代码,在JDK 21下运行时,会卡住: import java.time.Duration; import java.util.concurrent.Executors; 阅读全文
posted @ 2025-10-16 20:48 菩提树下的杨过 阅读(61) 评论(0) 推荐(1)
摘要:langchain4j 学习系列(3)-工具调用(Tool Calling)大模型本身的”知识体系“一般来说,局限于受训练时使用的数据。超出这个数据范围的问题,靠模型自身是无法解答的,得依赖各种外挂工具来增强体验。参考下图: 这一节,我们来学习langchain4j 如何让大模型能利用工具外挂增强自身。 假设一个场景:输入1个订单号,让AI回答订单号现在的状态。 AI连是什 阅读全文
posted @ 2025-09-30 14:04 菩提树下的杨过 阅读(59) 评论(0) 推荐(0)
摘要:langchain4j 学习系列(2)-调用远程deepseek接上一篇继续,langchain4j支持open-ai兼容的各种模式,包括deepseek 一、修改pom依赖 1 <!-- LongChain4j OpenAI Integration (支持DeepSeek) --> 2 <dependency> 3 <groupId>dev.langchain 阅读全文
posted @ 2025-09-28 20:08 菩提树下的杨过 阅读(46) 评论(0) 推荐(0)
摘要:langchain4j 学习系列(1)-ollama本地调用langchain4j是比spring-ai更早出现的大模型相关工程开源框架,社区成熟,活跃度高。下面演示如何用langchain4j调用本地ollama 一、核心pom依赖 1 <!-- LongChain4j Core --> 2 <dependency> 3 <groupId>dev.lang 阅读全文
posted @ 2025-07-20 17:00 菩提树下的杨过 阅读(483) 评论(0) 推荐(0)
摘要:spring-ai 学习系列(8)-上下文记忆-多轮对话继续spring-ai学习之旅,大模型本身是无状态的,也就是每次请求对它来说,都是全新的,无记忆!比如:我们以ollama本地加载qwen3:0.6b模型为例,依次问它以下三个问题: 有1个变量A,它的值是5,那么A加1后,变成几? A再乘上3,结果是多少? A再减1,现在是多少? 直接用postm 阅读全文
posted @ 2025-07-20 11:08 菩提树下的杨过 阅读(471) 评论(1) 推荐(0)
摘要:spring-ai 学习系列(6)-文生图继续来学习spring-ai如何实现“文生图” 一、pom依赖 1 <dependency> 2 <groupId>org.springframework.ai</groupId> 3 <artifactId>spring-ai-starter-model-zhipuai</artifactId> 阅读全文
posted @ 2025-07-12 23:20 菩提树下的杨过 阅读(334) 评论(0) 推荐(0)
摘要:spring-ai 学习系列(5)-MCP(webflux sse)前面学习了stdio模式的MCP使用,可以看到这种方式局限性比较大,mcp host/mcp client/mcp server通常要在同1台机器上,使用进程间通讯。更常见的做法是,大家各自部署自己的mcp server,就象常规后端http api一样,想部署在哪都行,只要http能访问即可。 一 阅读全文
posted @ 2025-07-12 22:43 菩提树下的杨过 阅读(565) 评论(0) 推荐(0)
摘要:spring-ai 学习系列(4)-MCP 处理过程分析上一节,通过1个最基本的MCP Server/Client示例,初步了解了MCP的用法.STDIO模式下,client与server同在1台机器上,client会创建1个子进程来启动server,然后使用json rpc来做为约定的消息格式进行通讯。 如果想知道交互过程中的json原文,可以下载 h 阅读全文
posted @ 2025-07-12 16:33 菩提树下的杨过 阅读(428) 评论(0) 推荐(0)
摘要:spring-ai 学习系列(3)-MCP(stdio)使用spring-ai创建1个MCP Server很容易,下面演示MCP(stdio模式)的写法: 一、添加依赖项 1 <dependency> 2 <groupId>org.springframework.ai</groupId> 3 <artifactId>spring-ai-starter-m 阅读全文
posted @ 2025-07-10 19:37 菩提树下的杨过 阅读(439) 评论(0) 推荐(0)
摘要:spring-ai 学习系列(2)-调用远程deepseek上一节学习了spring-ai调用本地ollama,这次继续学习调用远程deepseek 一、pom依赖调整 加入openai的依赖 1 <dependency> 2 <groupId>group.springframework.ai</groupId> 3 <artifactId>spring-a 阅读全文
posted @ 2025-07-10 09:04 菩提树下的杨过 阅读(354) 评论(0) 推荐(0)
摘要:spring-ai 学习系列(1)-调用本地ollamaspring-ai框架为java程序员快速融入AI大潮提供了便利,下面演示如何调用本地deepseek模型 一、安装ollama https://www.ollama.com/ 首页下载安装即可 选择适合的模型,pull到本地,个人电脑建议选择deepseek-r1:7b或1.5b 启动模型 oll 阅读全文
posted @ 2025-07-06 23:07 菩提树下的杨过 阅读(565) 评论(0) 推荐(0)
摘要:全自助使用Cursor生成的DeepSeek Demo java 项目今天尝试用cursor全自助生成了1个spring boot调用ollama(本地模型) +远程deepseek的示例项目。 效果图: .. 主要特性(摘自Readme.md,其实也是 Cursor生成的) 🎯 项目特色 🤖 双AI支持: 同时支持本地Ollama和远程DeepSeek两种AI提 阅读全文
posted @ 2025-06-29 00:04 菩提树下的杨过 阅读(133) 评论(0) 推荐(0)
摘要:shardingsphere从4.4.1升级至5.5.5注意事项为方便讨论,假设有下面2张订单表:t_order_vip(用于存放VIP的订单),t_order_normal(用于存放普通用户的订单) -- 注:为了演示自定义分片算法而设想的场景,大家不必太纠结其真实性。 分片规则:根据user_id,假设user_id为1,2,3的为VIP用户,其它id为普通 阅读全文
posted @ 2025-04-12 22:47 菩提树下的杨过 阅读(828) 评论(2) 推荐(0)
摘要:如何控制java虚拟线程的并发度?本文用一个订单提交的示例,描述了如何在使用虚拟线程时,合理控制执行的并发数,防止把下游资源打爆 阅读全文
posted @ 2024-11-18 21:02 菩提树下的杨过 阅读(646) 评论(2) 推荐(1)
摘要:java取cookie的一些坑1. cookie有2个版本(version 0与version 1),version 0最早是网景公司定的,比较保守,value值不能有特殊字符,比如 冒号之类的,象 GMT+05:30,在version 0下,取出来,就变成GMT+05,冒号后的:30丢了 2. java中目前支持的是 vers 阅读全文
posted @ 2024-05-17 16:56 菩提树下的杨过 阅读(179) 评论(0) 推荐(0)
摘要:JDK17与Hbase client的兼容性问题最近有1个项目升级到JDK17,里面用到了hbase-client(版本:以1.2.0-cdh5.7.1为基础,公司的大数据同学内部做了一些二次开发 ),启动时发现一直连不上集群,直接报错了,上hbase 官网看了下: 别说JDK 17了,连JDK11都支持不完善,难道把JDK版本又降回去?有点不甘 阅读全文
posted @ 2023-06-17 19:13 菩提树下的杨过 阅读(1079) 评论(0) 推荐(0)
摘要:mybatis 3.x 升级时遇到的keyProperty问题小坑背景: 有1个项目,原来是用的mybatis 3.4.6版本,其中有一些插入mapper是这样写的: Integer insertEntitySelectiveShard(@Param("tableSuffix") String tableSuffix,@Param("entity") XXXEnt 阅读全文
posted @ 2023-06-17 15:59 菩提树下的杨过 阅读(808) 评论(0) 推荐(0)
摘要:java线程池使用小技巧:自定义拒绝策略自定义java线程池拒绝策略,实现异常情况的监控埋点 阅读全文
posted @ 2023-03-12 16:10 菩提树下的杨过 阅读(1250) 评论(0) 推荐(2)
摘要:java中如何处理夏令时?在国际化的项目中,处理时间时经常会遇到夏令时(BST,British Summer Time)问题,发明夏令时(以及冬令时)主要是为了省电。 冷知识:中国历史上也曾经采用过(1986-1991)夏令时,后来因为各种原因,最终取消了这一制度(参见:https://baijiahao.baidu.com 阅读全文
posted @ 2022-11-13 14:57 菩提树下的杨过 阅读(2900) 评论(1) 推荐(1)

1 2 3 4 5 ··· 19 下一页