- 博客(146)
- 收藏
- 关注
原创 从RAG到Agent:构建工业自动化助手
Agent = 大脑(LLM)+ 工具箱(Tools)+ 记忆(Memory)+ 规划能力(Planning)│ AI Agent 架构图 ││ ││ 用户输入: "分析销售数据" ││ ↓ ││ │ LLM 大脑 │ ││ │(规划 + 决策) │ ││ ↓ ││ │ 选择工具执行 │ ││ ↓ ││ │ 工具箱(Tools) │ ││ │ ├─ SQL查询工具 │ ││ │ ├─ Python代码执行 │ ││ │ ├─ 可视化工具 │ ││ │ ├─ 邮件发送工具 │ │。
2025-11-29 00:25:33
568
原创 如何用LangChain构建工业问答系统
本文介绍如何利用LangChain构建工业问答系统。系统采用RAG(检索增强生成)技术,通过整合工业领域的专业文档(PDF/TXT等),实现精准问答。架构分为文档处理、向量检索、LLM生成和用户交互四大模块,使用Chroma存储向量数据,OpenAI进行语义理解。系统解决了工业知识管理中的专业术语、文档分散和安全性等问题,相比传统方案具有开箱即用、知识可追溯和低成本等优势。代码实现包括文档加载、切片处理、向量数据库构建等核心功能,为工业场景提供高效的AI助手解决方案。
2025-11-13 11:07:03
1250
原创 Linux系列操作篇
Linux系统会内置 vi 文本编辑器Vim具有程序编辑的能力,可以看作是Vi的增强版本,可以主动地以字体颜色辨别语法的正确性,程序设计,代码补全,编译及错误跳转等方面的功能特别丰富,被广泛使用。正常模式以vim打开一个档案就直接进入一般模式了,在这个模式中,你可以使用【上下左右】按键来移动光标,你可以使用【删除整行】或【删除字符】来处理档案内容,也可以使用【复制,粘贴】来处理你的文件数据。插入模式按下i,I,o,O,a,A,r,R等任何一个字母之后才会进入编辑模式,一般来说按i即可。
2025-07-16 08:30:00
826
原创 SpringCloud Sleuth+Nacos
核心功能:分布式追踪: 记录请求在微服务系统中的完整调用路径性能分析: 监控各服务节点间的调用耗时组件关系:Sleuth: 负责生成和收集链路数据Zipkin: 负责存储和展示链路数据典型场景:当客户端请求经过多个微服务节点(如A→B→C→D)时需要定位是AB间还是CD间的调用导致整体延迟架构位置:在微服务架构中同时承担服务注册中心和配置中心角色为业务服务集群提供基础支撑服务对比传统方案:相比单独使用Eureka+Config的方案更简洁。
2025-07-07 09:30:00
1471
原创 SpringCloud微服务 Eureka服务注册与发现
本来是服务消费者直接调用的服务提供者,但为了防止硬编码,能够实时获取最新服务地址,通过eureka注册中心,调用相应服务。依赖引⼊: 在member-service-provider-10000项⽬的pom.xml⽂件中引⼊spring-cloud-starter-netflix-eureka-client依赖。依赖引⼊: 在member-service-provider-10000项⽬的pom.xml⽂件中引⼊spring-cloud-starter-netflix-eureka-client依赖。
2025-06-30 12:01:21
1260
原创 SpringCloud Gateway
工厂类型:After:基于请求时间的"之后"断言Before:基于请求时间的"之前"断言Between:时间区间断言Cookie:检查请求CookieHeader:检查请求头Host:检查请求主机Method:检查请求方法(GET/POST等)Path:检查请求路径Query:检查查询参数RemoteAddr:检查远程地址Weight:权重路由核心特性:内置多种工厂类型:共11种标准断言工厂多属性匹配:每种工厂匹配HTTP请求的不同属性。
2025-06-30 12:00:49
1660
原创 SpringCloud Ribbon && OpenFeign
核⼼功能:Spring Cloud Ribbon是基于Netflix Ribbon实现的⼀套客户端负载均衡⼯具,主要提供负载均衡算法和服务调⽤功能。 实现原理:通过"负载均衡+RestTemplate调⽤"机制⼯作,在客户端本地缓存服务列表(默认30秒刷新),⾃动处理连接超时和重试机制。 配置特性:提供完善的客户端配置项,包括连接超时、重试次数等容错机制,默认采⽤轮询算法进⾏服务调⽤。
2025-06-30 11:59:49
1055
原创 SpringCloud微服务-搭建基础环境
官网: https://spring.io/projects/spring-cloud1.没有微服务技术, 是不是程序员就不能开发大型项目?答: 是可以的, 对大型项目进行模块划分, 对各个模块进行实现, 模块之间更多的是以API调用完成, 耦合度较高, 不利于扩展和维护.2.思考, 标准的微服务解决方案(springcloud和cloud alibaba)出现的原因和价值是什么?答: (1)微服务可以根据业务不同, 将一个大项目, 分解成不同的服务(微服务, 比如搜索服务/网关服务/配置服务/存储服
2025-06-17 09:35:23
1223
原创 Spring系列七:声明式事务
声明式事务和AOP有密切的联系, 是AOP的一个实际的应用.●分类1.编程式事务:示意代码, 传统方式try {//1.先设置事务不要自动提交//2.进行各种crud//多个表的修改, 添加, 删除//3.提交//4.回滚2.声明式事务:我们后面 以一个购买商品的系统为例来学习.
2025-04-28 14:09:17
1004
原创 Spring系列六:JdbcTemplate
1.通过Spring可以配置数据源, 从而完成对数据表的操作2.是Spring提供的访问数据库的技术. 可以将JDBC的常用操作封装为模板方法. [类图]
2025-04-28 14:08:33
730
1
原创 Spring系列五:手动实现Spring底层机制 第三部分
bean后置处理器实现思路:先完成原生Spring 使用Bean后置处理器的案例, 然后实现自己的bean后置处理器在idea中, 输入, 搜索. 在zzw-spring项目里1.在包下定义接口. 实现该接口的Bean, 需要实现Bean初始化方法,👆2.实现这个接口在创建好Bean实例后, 判断是否需要进行初始化. 【编程心得: 容器中常用的一个方法是, 根据该类是否实现了某个接口, 来判断是否要执行某个业务逻辑, 这里其实就是java基础的接口编程实际应用】1.在类的createBean方法。
2025-04-28 14:06:51
645
原创 Spring系列五:手动实现Spring底层机制 第二部分
初始化bean单例池, 并完成getBean方法, createBean方法1.类中添加createBean方法2.类的构造器添加如下代码3.类的getBean()方法, 添加如下代码4.测试运行结果。
2025-04-28 14:06:04
364
原创 Spring系列四:AOP切面编程第五部分
1.Spring底层如何实现: IOC容器创建和初始化2.Spring底层如何实现: 根据 singleton, prototype来返回bean对象案例注入默认是单例注入, 标识了注解后代表多例1.修改2.测试3.运行结果。
2025-04-28 14:00:34
1057
原创 Spring系列四:AOP切面编程第四部分
前面我们是通过注解来配置aop的, 在spring中, 我们也可以通过xml的方式来配置AOP.项目目录结构, 文件夹对应不上的可以自己 添加或删除.包下 注意: 不要引错包。1.创建maven项目。❷基于XML配置方法。
2025-04-28 14:00:13
1094
原创 Spring系列四:AOP切面编程 第二部分
●什么是AOPAOP的全称(aspect oriented programming), 面向切面编程.●AOP实现方式1.基于动态代理的方式 [内置aop实现]2.使用框架aspectj来实现。
2025-04-28 13:59:00
754
原创 前后端分离: vue3+SpringBoot+ElementPlus+Axios+MyBatisPlus
🌟项目页面🌟技术栈:1.前端技术栈: Vue3+Axios+ElementPlus2.后端技术栈: SpringBoot+MyBatisPlus3.数据库: MySQL4.项目依赖管理: Maven5.分页: MyBatisPlus的分页插件6.切换数据源DruidDataSource7.在LambdaQueryWrapper 引出知识点 lambda方法引用的 类名::实例方法8.前端使用了axios关于request和respones的拦截器, 并且解决了跨域问题。
2025-04-28 11:39:54
2726
原创 springboot系列十五:SpringBoot整合MyBatis, MyBatis-Plus
1.Mybatis-Plus (简称 MP) 是一个 MyBatis 的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发,提高效率而生。2.强大的CRUD操作: 内置通用 Mapper,通过Service,通过少量配置即可实现表单大部分CRUD操作,更有强大的条件构造器,满足各类使用需求。
2025-03-12 09:45:35
1089
原创 springboot系列十四: 注入Servlet, Filter, Listener + 内置Tomcat配置和切换 + 数据库操作
1.考虑到实际需求, SpringBoot 可以将 Servlet, Filter, Listener 注入 Spring 容器, 成为 SpringBean.2.即 SpringBoot 开放了和原生 WEB 组件 (Servlet, Filter, Listener) 的兼容.1.SpringBoot支持的webServer:Tomcat,Jetty,Undertow。2.SpringBoot应用启动是Web应用时, web场景包-导入tomcat。
2025-02-19 15:36:54
899
原创 springboot系列十三: 异常处理
1.默认情况下,SpringBoot 提供 /error 处理所有错误的映射,当出现错误时,SpringBoot 底层会请求转发到 /error 这个映射。2.浏览器访问不存在的接口 http://localhost:8084/abc,响应 whitelabel 的错误试图,以 HTML 格式呈现给用户。注意: 配置登录拦截器时,先登录, 再测试3.SpringBoot底层默认由 DefaultErrorViewResolver 处理错误。debug->
2024-11-04 16:26:09
1406
2
原创 项目实战系列三: 家居购项目 第五部分
需求分析1.如果某家居库存为0, 首页的"Add to Cart" 按钮显示为"暂时缺货"2.后台也加上校验. 只有在 库存>0 时, 才能添加到购物车代码实现1.修改
2024-09-09 09:35:59
780
原创 项目实战系列三: 家居购项目 第三部分
文章目录🍃后台分页🍅后台分页导航🍃首页分页🍅首页分页导航🍅首页搜索🍅两个奇怪的问题🍅会员显示登录名🍅注销登录🍅验证码🍃后台分页程序框架图1.新建com.zzw.furns.entity.Page//Page是一个Javabean, 是一个分页的数据模型(包含了分页的各种信息)//T表示泛型, 因为将来分页模型对应的数据类型是不确定的public class Page<T> { //因为每页显示多少条记录, 是其它地方也可以使用的 public static fina
2024-09-06 11:18:16
1574
原创 项目实战系列三: 家居购项目 第二部分
2.在项目开发中, 同一个业务(模块), 一般对应一个Servlet即可, 比如LoginServlet, RegisterServlet, 都是在处理和会员相关的业务, 应当合并.1.如果处理一个请求, 就对应一个Servlet, 会造成Servlet文件太多, 不利于管理.1.请求添加家居, 请求FurnServlet的add方法, 将前端提交的数据封装到Furn对象。2.子类中没有doGet, doPost方法, 会调用父类的doGet, doPost.3.管理员点击家居管理, 显示所有家居信息。
2024-09-06 11:17:40
1014
原创 JavaWeb系列四: DOM下
HTML DOM节点基本介绍节点属性和方法一览节点常用方法节点常用属性应用实例通过id获取节点获取所有option节点通过name获取节点查找id=language下所有li节点获取指定dom对象的所有子节点获取第一个子节点获取父节点获取前后兄弟节点设置文本域内容总代码作业布置 乌龟吃鸡游戏基本介绍在HTML DOM(文档对象模型)中,每个部分都是节点.1.文档 本身是文档节点;2.所有 HTML元素 是元素节点;3.所有 HTML属性 是属性节点;4.HTML元素内的 文本 是文本节点;5.
2024-08-29 09:16:07
1252
原创 JavaWeb系列十一: Web 开发会话技术Session
3.测试. 访问createSession2后, 会在服务器创建一个只有60s的session, 如果在60s内没有浏览器没有访问, 那么在61s的时候, 浏览器携带该jsessionId访问服务器时, 服务器会再创建一个session, 并返回新的jsessionId.1.当用户打开浏览器, 访问某个网站, 操作session时, 服务器就会在内存(在服务端)为该浏览器分配一个session对象, 该session对象被这个浏览器独占.
2024-08-07 13:29:57
1202
原创 JavaWeb系列十一: Web 开发会话技术Cookie
1.什么是会话?会话可简单地理解为: 用户开启一个浏览器, 点击多个超链接, 访问服务器多个web资源, 然后关闭浏览器, 整个过程称之为一个会话.2.会话过程中要解决哪些问题?1)每个用户在使用浏览器与服务器进行会话的过程中, 不可避免地会产生一些数据, 服务器要想办法帮每个用户保存这些数据.
2024-08-07 13:19:59
623
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅