- 博客(63)
- 收藏
- 关注
原创 Java + AI 实战:Spring AI 从入门到企业级落地
本文档为Java开发者提供Spring AI框架实战指南,帮助构建生产级AI应用。内容涵盖:1) Spring AI的优势与选型对比;2) 环境准备与项目创建;3) 核心功能实现包括提示词模板、结构化输出、多模型切换等;4) 完整AI客服助手项目示例;5) 生产部署建议。Spring AI作为Spring官方框架,支持20+模型,提供RAG能力,与Spring生态无缝集成,是Java团队集成大语言模型的优选方案。文档提供可复用的代码示例,从快速入门到企业级落地全流程覆盖。
2026-05-22 10:08:38
276
原创 SpringAI 常见问题及解决方案大全
本文总结了SpringAI框架使用中的常见问题及解决方案,涵盖依赖配置、API密钥、连接超时、模型配置、JSON解析、内存性能和并发安全等7大类问题。针对每个问题提供了详细的解决步骤,包括代码示例和配置方法,帮助开发者快速排查和解决SpringAI集成过程中的各类问题。文章特别强调了版本兼容性、API密钥安全配置、超时处理、模型选择等关键点,并提供了线程安全和性能优化的实用建议。
2026-05-21 15:24:22
328
原创 SpirngAI
Service// 模拟天气数据(实际项目中调用真实天气 API)@Tool(description = "查询指定城市的当前天气")public Weather getWeather(@ToolParam("城市名称") String city) {// 实际项目中调用第三方天气 APIreturn new Weather(city, "晴天", 25);@Tool(description = "获取当前日期和时间")
2026-05-11 17:19:03
378
原创 Jsoup HTML 表格内容替换
本文介绍了一种使用Java和Jsoup库实现HTML表格内容替换同时保留原有样式的方法。文章首先分析了直接替换会导致样式丢失的问题,然后提供了一个完整的工具类HtmlTableUpdater,通过复制旧表格的行和单元格属性(如colspan、rowspan、背景色、边框等)到新表格中来实现样式保留。工具类包含核心方法updateTableContent和copyAttributes,能够处理表格行和单元格的样式继承。文中还给出了使用示例,展示了如何将带有样式的新表格内容替换到旧表格中,同时保持原有样式不变。
2025-09-12 09:59:23
153
原创 Liunx 操作redis
1,到Liunx的redis的安装目录下/home/redis/redis-7.2.3/src 执行命令。2,执行命令后,出现以下。查看当前 db库的缓存。
2024-10-18 16:20:21
474
原创 Windows 关闭双击运行的 JAR 包
记得将<进程ID>替换为实际的进程ID。使用taskkill命令时,/F标志表示强制结束进程。如果只是简单地结束进程而不强制,可以省略/F标志。请谨慎使用taskkill命令,确保你终止的是正确的进程,以免误杀其他重要进程。当你在Windows上双击运行了一个JAR包,它通常会在任务管理器中作为一个Java进程运行。这将列出所有javaw.exe进程。
2024-07-18 16:48:01
2192
原创 List<Map<String,Object>>根据同个key的值 自定义排序
【代码】List<Map<String,Object>>根据同个key的值 自定义排序。
2024-07-12 10:01:19
325
原创 Linux jstack 与 jmap 命令安装与实战
本文介绍了Linux系统中jstack和jmap命令的安装与使用方法。这两个工具是排查Java应用问题的必备利器:jstack用于分析线程状态(如死锁、CPU占用高),jmap用于检查内存分布(如内存泄漏)。文章详细讲解了在CentOS/RHEL和Ubuntu系统上通过安装JDK开发版获取这两个命令的步骤,包括yum和apt-get两种安装方式。同时提供了命令对比表、安装流程图以及各JDK版本的推荐度,帮助开发者快速掌握这两个诊断工具的使用场景和安装方法。
2024-06-06 16:39:39
1564
原创 Liunx启动oracle 、redis命令
输入:lsnrctl status (作用是:检查监听是否启动。) 以下为没有启动。SQL> startup (作用:启动数据库实例)1、启动redis命令,启动后默认后台运行。三、检查Oracle DB监听器是否正常。二、检查Oracle 数据库是否启动。一、在Linux下启动Oracle。2.切换到oracle用户权限。3.进入sqlplus界面。找到redis的安装目录。2、启动oracle命令。查看Redis是否运行。
2024-06-03 14:54:01
460
原创 Aspose.Words 转 PDF 中文乱码问题完整解决方案
Aspose.Words转PDF中文乱码解决方案 问题原因:Linux/Docker环境默认缺少中文字体库,导致Aspose.Words转换PDF时无法正确显示中文。 解决方案: 环境级: 从Windows复制中文字体(如宋体、微软雅黑)到Linux的/usr/share/fonts/chinese/ 安装字体工具并生成缓存:mkfontscale && mkfontdir && fc-cache -fv 使用包管理器安装字体:yum install cjkuni-uming-fonts或apt insta
2024-02-26 11:24:39
1425
原创 MyBatis 动态循环拼接 SQL
本文介绍了使用MyBatis动态拼接SQL的方法,重点解决查询列不确定和关联表不固定的需求场景。通过<foreach>标签实现动态SELECT字段列表和LEFT JOIN子句的生成,支持前端灵活配置查询字段和关联表。文章详细展示了XML配置示例、Java参数传递方式以及生成的SQL语句,并解释了为何需要使用STATEMENT模式来处理表名、列名等数据库对象的动态拼接。该方法适用于报表系统、审批流程等需要灵活查询的业务场景,有效避免了为每种查询组合编写单独Mapper的问题。
2024-02-04 10:54:20
1325
1
原创 Oracle TO_CHAR 时间格式化
Oracle TO_CHAR函数完全指南:日期时间格式化详解 本文全面介绍了Oracle数据库中TO_CHAR函数的日期时间格式化功能。主要内容包括: 基本语法:TO_CHAR(date_value, format_mask [, nls_language]),支持DATE、TIMESTAMP等类型转换 格式化元素大全: 年份(YYYY、YY等) 月份(MM、MON等) 日期(DD、DAY等) 时间(HH24、MI、SS等) 时区(TZH、TZM等) 其他(Q季度、WW周数等) 常用格式化模板: 标准格式(
2023-08-24 16:03:50
387
原创 Aspose.OCR Java 图片识别
本文介绍了使用Aspose.OCR for Java进行图片文字识别的完整指南。主要内容包括:Aspose.OCR的概述、适用场景和工作原理;环境搭建步骤,包含Maven/Gradle依赖配置和安装验证;基础OCR识别示例代码;以及带参数的识别配置方法,支持多语言设置和不同检测模式。该工具支持26+种语言,适用于扫描件、证件、截图等场景的文字提取,但不适合实时视频流OCR。文章提供了详细的代码示例和技术参数说明,帮助开发者快速实现高性能OCR功能。
2023-08-15 16:12:35
1601
原创 MyBatis 查询上万条数据优化
通过JDBC取数据时,默认是10条数据取一次,即fetchSize为10(根据oracle文档,默认的fetchSize是10),如果增大这个数字可以减少客户端与oracle的往返,减少响应时间,网上建议这个数字不要超过100,要不然对中间件内存消耗大。
2023-07-26 14:41:55
2125
原创 Java 多个流文件压缩导出
本文介绍了Java中将多个输入流压缩为ZIP文件并下载的完整方案。主要内容包括: 基础知识:讲解ZIP压缩原理和Java核心类(ZipEntry、ZipOutputStream等)的使用方法。 基础版本实现:基于内存模式的完整代码,将所有文件先压缩到内存再输出,实现简单但存在内存占用大的问题。 改进版本:采用try-with-resources自动管理资源,支持UTF-8编码文件名,优化缓冲区为8KB,实现流式处理避免内存问题。 关键优化点: 使用ZipOutputStream直接写入响应输出流 设置压缩级
2023-05-24 15:15:06
470
原创 Aspose.Words Java 文档生成与导出
本文介绍了使用Aspose.Words for Java进行Word文档处理的完整技术指南。主要内容包括: Aspose.Words概述:一个无需Microsoft Office即可创建、编辑和转换Word文档的Java库,支持DOCX、PDF、HTML等多种格式。 环境搭建:提供Maven和Gradle依赖配置,说明JDK版本选择,并展示如何加载商业许可证。 文档操作: 强调每次修改后必须保存的原则 演示从零创建文档的基本流程 展示HTML转Word的实现方法,包括高级配置选项 该库支持丰富的文档处理功能
2023-05-16 18:24:55
847
原创 Nginx 版本升级
本文提供Nginx版本升级的完整指南,涵盖多种升级方式(源码编译、包管理、Docker等)及适用场景。重点介绍了生产环境推荐的平滑升级流程,包括版本检查、环境准备、源码下载、编译配置等关键步骤。特别强调必须保留旧版本的编译参数,确保新版本兼容性。同时提供了升级前检查清单、回滚方案和常见模块依赖安装说明,适用于从1.18.0升级到1.20.2等版本迁移场景。
2023-05-12 11:08:47
1697
原创 Maven 上传 JAR 包到远程私有仓库
本文详细介绍了使用Maven将JAR包上传到远程私有仓库的完整流程。主要内容包括:1) Maven仓库体系基础知识,区分本地、中央和私有仓库;2) 上传前的准备工作,如配置settings.xml文件并加密密码;3) 核心命令deploy:deploy-file的使用方法及参数详解;4) 批量上传脚本示例。文章提供了Windows和Linux环境下的命令格式,并特别说明了如何同时上传源码和文档文件。通过本指南,开发者可以轻松将第三方或内部开发的JAR包部署到Nexus、Artifactory等私有仓库中。
2022-03-18 10:50:10
1199
原创 Java 操作 Word 文档:电子签章插入与图片处理
本文介绍了使用Java和Aspose.Words库在Word文档中插入电子签章的完整解决方案。主要内容包括: 电子签章概述:说明电子签章的概念、应用场景及技术方案对比,重点推荐Aspose.Words作为企业级解决方案。 技术实现基础: 提供Maven依赖配置 介绍License初始化方法 展示核心类图结构 关键代码实现: 从数据库获取电子签章图像的实现方法 在Word文档中定位和替换占位图片的技术细节 完整展示签章插入流程 该方案适用于企业合同审批、公文流转等需要电子签章的办公场景,提供了可靠的技术实现路
2022-03-08 17:39:47
344
原创 Java HTML 转 PDF
本文介绍了使用Java和iText 5将HTML转换为PDF的完整方案,支持中文显示、全页面水印等功能。文章对比了主流PDF生成方案,重点讲解了iText 5+XMLWorker的实现方式,包括Maven依赖配置、核心转换方法html2pdf的实现细节。该方法通过包装XHTML格式、设置PDF文档属性、添加倾斜水印文字、处理中文字体等步骤,实现了HTML到PDF的转换。方案适用于在线报表导出、合同生成等场景,支持Windows和Linux系统环境,提供了完整的代码示例和字体配置方案。
2021-09-29 14:22:34
185
原创 Oracle 查询一年每个月的数据和当月每日数据
本文介绍了使用Oracle数据库实现按月统计和按日统计数据的两种SQL查询方法。对于按月统计,采用DECODE函数结合SUM实现行转列,将每月数据转换为列展示;对于按日统计,使用CONNECT BY生成当月日期序列,再LEFT JOIN实际业务数据。文章详细讲解了DECODE函数的语法和行转列原理,以及CONNECT BY生成日期序列的技巧,并提供了多种日期序列生成的示例代码。这两种方法都能有效解决业务报表中常见的时间维度统计需求,特别是需要将数据按月份或日期展开展示的场景。
2021-08-17 10:14:41
413
原创 Java 使用 Apache POI 模板填充导出 Excel
本文介绍了使用Java和Apache POI基于Excel模板动态填充数据并导出的完整流程。主要内容包括: 应用场景:适用于业务报表导出、批量生成固定格式Excel文件等需求,特别适合需要复杂样式(合并单元格、字体等)的场景。 方案对比:详细比较了Apache POI、EasyExcel等不同方案的优缺点,指出Apache POI+模板方案最适合复杂格式的大数据导出。 实现流程:从Controller层接收请求,Service层查询数据,读取模板文件,填充固定单元格,动态复制行并填充数据,最后通过HttpS
2021-05-14 16:59:10
504
原创 Jedis 操作 Redis 各类型完整实例手册
本文介绍了使用Jedis客户端操作Redis五种基本数据类型的完整实例手册。主要内容包括: Jedis简介:轻量级Java客户端,线程不安全但支持所有Redis命令,推荐使用连接池方式。 连接方式:提供单连接和连接池两种方式,包含Maven依赖配置和连接池参数设置示例。 String类型操作:详细列举了20个常用命令的Jedis对应方法,包括SET/GET、数字操作、批量操作等,并附完整示例代码演示基础操作。 特点:API命名与Redis命令一一对应,示例覆盖从基础设置获取到高级位操作等完整功能。 该手册基
2020-09-09 14:57:54
621
原创 Redis 应用与实践
Redis是一个高性能的key-value内存数据库,具有丰富的数据类型和原子性操作特性。本文介绍了Redis的核心概念、安装方法、五种基本数据类型(String、Hash、List、Set、Sorted Set)及其常用命令,并重点讲解了9大应用场景中的热点数据缓存实现方案。Redis支持持久化、过期策略和分布式部署,相比Memcached等缓存方案功能更全面,适用于分布式缓存、共享数据等场景。通过Java代码示例展示了如何利用Redis缓存用户数据,并采用空值缓存策略防止缓存穿透问题。
2020-09-09 14:40:50
885
原创 Redis 实时监控与性能分析:Jedis + INFO 命令实战
本文介绍了基于Redis INFO命令和Jedis客户端实现Redis实时监控的方法。通过Java代码调用Redis INFO指令,可以获取内存使用、QPS、连接数、慢日志等核心指标数据。文章详细说明了技术架构,包括JedisPool连接池配置、监控数据采集层的实现,以及如何获取Redis服务器完整INFO信息和慢日志。配置部分展示了RedisConfig和application.yml的设置,为开发者提供了完整的Redis监控解决方案。
2020-09-09 11:26:51
4211
2
原创 Java 面试题集锦
本文整理了Java后端开发面试中五大核心技术栈的常见考点,包括Redis、MySQL优化、Docker、消息队列和Spring Cloud。内容涵盖Redis的应用场景、数据结构、持久化机制、内存淘汰策略及缓存问题解决方案;MySQL的SQL性能优化、执行计划分析和索引优化原则;Docker容器技术;主流消息队列(RabbitMQ/Kafka/RocketMQ)的使用;以及Spring Cloud微服务架构相关知识点。文章采用表格对比和代码示例的形式,帮助开发者系统掌握面试必备技术要点。
2020-07-22 19:31:22
1826
原创 Redis 实现文章点击量缓存与持久化
本文介绍了一种基于Spring Boot、MyBatis和Redis的文章点击量统计系统设计方案。系统采用Redis缓存热点数据,每50次点击批量同步到MySQL数据库,兼顾性能与数据安全。架构设计包含用户访问流程、缓存加载机制和批量持久化策略。数据库表设计包含文章ID、点击量等字段。代码实现涵盖实体类、DAO层、Mapper XML及Service层,核心逻辑通过RedisUtil工具类实现点击量递增和批量落库。系统通过缓存与数据库的协同工作,有效提升了高并发场景下的性能表现。
2020-06-02 15:51:12
3296
原创 Java 点赞功能设计与实现
本文详细介绍了Java点赞功能的完整设计与实现方案。系统采用Spring Boot+MyBatis Plus框架,包含以下核心内容: 功能需求:支持登录用户点赞/取消点赞、点赞计数、状态查询,并实现每小时30次的防刷限制和游客点赞功能。 数据库设计: 点赞明细表(t_nice_detail)记录用户-内容关系 内容表(t_video)预存点赞数 通过唯一索引防止重复点赞 技术实现: 实体类与Mapper层设计 核心业务流程:先检查限流,再根据用户状态处理点赞/取消操作 采用事务保证数据一致性 性能优化:通过
2020-06-02 14:10:43
378
原创 分布式事务解析
本文全面剖析分布式事务的方方面面:从基本概念与 ACID 特性入手,深入 CAP/BASE 理论,详解 2PC/3PC/TCC/Seata 等解决方案,并结合电商、金融等真实场景给出选型建议和实现代码。
2020-03-28 23:18:28
858
1
原创 RabbitMQ 如何保证消息可靠性
本文系统分析了RabbitMQ消息可靠性的保障策略,从消息生命周期的三个阶段(生产者到MQ、MQ内部、MQ到消费者)可能丢失消息的场景出发,提出了四大核心解决方案:消息持久化(存储层)、ACK确认机制(消费层)、集群镜像模式(架构层)和消息补偿机制(业务层)。重点阐述了消息持久化的实现方式,包括交换机、队列和消息三个层面的持久化配置,并提供了Java和Spring AMQP的代码示例。文章还涵盖了发送方确认、死信队列等高级主题,为构建完整的消息可靠性保障体系提供了全面指导。
2020-03-26 22:11:45
1938
原创 Java 8 新特性
Java 8 新特性指南摘要:Java 8 是革命性版本,引入函数式编程、Stream API、新日期时间API等核心特性。主要内容包括:1) Lambda表达式简化代码,替代匿名内部类;2) 函数式接口(如Runnable、Comparator)与四大核心接口(Consumer、Supplier等);3) Stream流式处理集合数据;4) Optional解决空指针异常;5) java.time包提供线程安全的日期时间API;6) 接口默认方法与静态方法增强扩展性;7) CompletableFutur
2020-03-26 18:18:21
225
原创 Spring Cloud 微服务架构
本文详细介绍了Spring Cloud微服务架构的完整实现方案,涵盖核心组件如Eureka服务注册中心、Ribbon负载均衡、Feign声明式调用、Hystrix断路器、Zuul/Gateway网关等。通过支付服务和用户服务的实战案例,展示了如何使用RestTemplate实现服务间通信,并提供了完整的代码示例和项目架构图。文章从微服务概念入手,逐步构建完整的微服务系统,包括公共模块设计、服务注册发现、负载均衡策略、API网关路由等关键环节,为开发者提供了一套可落地的Spring Cloud微服务解决方案。
2020-02-17 08:30:28
212
原创 Spring Cloud 服务通信集成
本文介绍了Spring Cloud微服务架构中服务间通信的完整演进过程。从基础的RestTemplate直连通信开始,逐步引入Eureka服务注册与发现、Ribbon负载均衡、Feign声明式调用、Hystrix熔断保护,最终通过Zuul API网关实现统一入口。文章详细展示了每个阶段的实现方式,包括项目架构设计、代码示例和配置说明。重点讲解了同步通信的两种模式(RestTemplate和Feign)及其适用场景,并提供了完整的项目结构和启动顺序。通过六个阶段的演进,实现了从简单调用到具备负载均衡、熔断保护
2020-02-14 22:39:52
235
原创 Spring Boot 入门与核心配置
本文是一篇Spring Boot入门与核心配置的完整指南,从Spring基础回顾开始,详细介绍了Spring Boot的核心功能。主要内容包括:Spring Boot概述及其核心特性(起步依赖、自动配置等);传统XML配置方式与注解配置IoC的对比;@ComponentScan自动扫描机制;依赖注入与Bean生命周期管理;条件注入@Conditional和@Import注解的使用;以及Spring Boot自动配置原理。文章通过HelloWorld实战案例展示快速搭建流程,并深入讲解核心配置细节,帮助开发者
2020-02-11 22:02:28
148
原创 最简单入门 Spring Boot
本文是Spring Boot的完整入门指南,从Spring核心概念(IoC/DI和AOP)出发,详细介绍了Spring配置方式的演进过程(XML→注解→Java配置)。通过Hello World案例快速上手Spring Boot开发,深入解析@SpringBootApplication注解原理、自动配置机制、内嵌Tomcat工作原理等核心内容。文章还涵盖包管理机制、配置详解以及最佳实践,帮助开发者全面掌握Spring Boot的核心技术栈。
2020-02-09 21:47:56
247
原创 Elasticsearch集群
本文全面介绍Elasticsearch从基础到集群实战的核心内容。首先概述ES作为分布式搜索分析引擎的特点,包括分布式架构、高可用性和RESTful接口。然后详细讲解基础查询操作,如ID查询、批量查询和分页查询。重点解析DSL查询语法,包括match、term等查询方式及其适用场景。此外还涵盖分词器配置、字段映射管理等高级功能,并提供了集群搭建的实践指导。全文通过大量REST API示例演示各类操作,帮助开发者快速掌握Elasticsearch的核心功能与应用技巧。
2020-02-08 23:31:20
209
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅