20|AutoProxyCreator:如何自动添加动态代理? -- 知识铺

20 | AutoProxyCreator:如何自动添加动态代理? 你好,我是郭屹,今天我们继续手写MiniSpring,这也是AOP正文部分的最后一节。今天我们将完成一个有模有样的AOP解决方案。 问题的引出 前面,我们已经实现了通过动态代理技术在运行时进行逻辑增强,并引入了Pointcu……

阅读全文

如何批量匹配代理方法? -- 知识铺

内容 1 2 if (method.getName().equals("doAction")) { } 在软件开发过程中,当我们需要对多个方法进行统一的增强处理,比如添加监控日志等,直接指定每个方法名的做法变得不切实际。为了解决这个问题,我们可以采用**切点(Pointcut)**的概念,通过配置灵活的方法名匹配规则来代理一组相关的方法。 目标 实现基于方法名通配符的切……

阅读全文

拦截器:如何在方法前后进行拦截? -- 知识铺

18|拦截器:如何在方法前后进行拦截? 你好,我是郭屹,今天我们继续探讨手写MiniSpring的旅程。 在之前的章节中,我们使用JDK动态代理技术实现了AOP(面向切面编程),并结合了IoC容器来管理这些代理对象。这让我们能够以非侵入的方式,在业务代码运行时动态地添加诸如日志记录、……

阅读全文

MyBatis:如何将SQL语句配置化? -- 知识铺

MiniSpring 手写教程:MyBatis SQL语句配置化 引言 在上一节课中,我们基于JDBC Template对数据库操作进行了进一步的拆解,包括数据源DataSource、参数处理ArgumentPreparedStatementSetter以及结果转换RowMapper和RowMapperRe……

阅读全文

14|增强模板:如何抽取专门的部件完成专门的任务? -- 知识铺 -- 知识铺

14 | 增强模板:如何抽取专门的部件完成专门的任务? 大家好,我是郭屹,今天我们将继续探讨如何手写MiniSpring框架。 在上一堂课中,我们从JDBC的常规程序流程中抽象出了一个通用模板,并对其进行了拆解。我们把SQL语句作为参数传递,并将SQL语句执行后的结果处理逻辑作为一个匿名类……

阅读全文

整合IoC和MVC在Web环境中启动IoC容器 -- 知识铺

aaaaaaa a# 整合IoC和MVC:在Web环境中启动IoC容器 你好,我是郭屹。 通过上一节课的工作,我们已经初步实现了一个基础的MVC框架,并且引入了@RequestMapping注解以及对指定包进行全局扫描来简化XML配置。然而,这个MVC框架是独立运行的,并没有与之前创建的IoC(控制反……

阅读全文

06|再回首:如何实现一个IoC容器? -- 知识铺 -- 知识铺

06|再回首:如何实现一个IoC容器? 你好,我是郭屹。 第一阶段的学习完成啦,你是不是自己也实现出了一个简单可用的IoC容器呢?如果已经完成了,欢迎你把你的实现代码放到评论区,我们一起交流讨论。 我们这一章学的IoC(Inversion of Control)是我们整个MiniSpring……

阅读全文

期末测试|来赴一场满分之约吧! -- 知识铺

你好,我是郭屹。 《手把手带你写一个MiniSpring》课程的更新告一段落,非常开心能和你交流技术、共同进步,为认真学习的你点赞! 为了帮你检验自己的学习成果,我特意准备了一套 期末测试题。题目共有 20 道,6道单选题,14道多选题,满分 100 分,快来挑战一下吧! ](http://time.geekbang.org/quiz/intro?act_id=5787&exam_id=12727)……

阅读全文

掌握Spring框架底层原理的实用指南 -- 知识铺

开篇词|“眼脑手”结合,搞定Spring框架底层原理 你好,我是郭屹,一名深耕软件开发行业30年的老兵。欢迎你跟我一起手写MiniSpring,一个mini版的Spring框架。 在正式开始学习之前,我先介绍下我自己。说起来,我与Java和Spring打交道也有二十几年了。1998年……

阅读全文

最近文章

分类

标签

2.32 6G显存 AI Agent AI代码助手 AI助手 AI技术 AI语音 AI驱动 API APP弹窗设计 Agentic RAG AutoProxyCreator BAAIbge-m3 BGE-M3 BeanFactory Bean注入 B端体验 CSDN博客 CentOS CentOS 7 Centos8 ChatGPT ClickHouse Conan-Embedding Dify Docker Edge-TTS FastgptDify GPT编程 GPU GPU部署 Gemini Glibc HTTP代理 IoC IoC容器 JDBC Java Java编程 JdbcTemplate Linux MVC Milvus MinerU ModelAndView MyBatis NVIDIA OCR识别 ORM框架 Ollama Open WebUI OpenAI API OpenSSL PDF处理 PDF解析 Pointcut PowerShell PyTorch Python Qwen2.5 RAG RAG系统 SDK SDK集成 SEO SQL语句 Servlet Spring Spring AOP SpringMVC Spring框架 Text2SQL Web Chat Web环境 Xinference YUM 源 bge-reranker-v2-m3 chatchat chattts fastgpt iOS langchain Ollama urllib3 Xinference 专门任务 中文Embedding 产品定位 京东 人人都是产品经理 代理方法 价值重塑 任务分配 企业架构 依赖注入 信息检索 健康 健康社区 健康网站 初始化方法 前端展示 动态代理 参数 商业模式 回顾 国内镜像 国外 在线工具 埋点采集 多态 多文档RAG 大型语言模型 大模型 安全聊天机器人 安装 安装指南 定制化 实现 实现方法 实用指南 容器 容器事件 容器工具包 小程序 属性配置 工具 工厂体系 底层原理 开源 开源工具 循环依赖 微服务 性能优化 批量匹配 拦截器 排名 排行榜 插入逻辑 效率提升 数字化转型 数据传递 数据分析 数据处理 数据库操作 数据库隔离 数据绑定 文本到语音 文本提取 方法前后 方法论 无侵入 智能中心 智能体 智能助手 智能方案 智能聊天 服务器集群内存 期末测试 构造函数 检索增强 模块化 模型 模板 模板抽取 毫秒级推送 注解 满分 热点数据 环境变量 生产环境 生成式AI 用户行为 百亿级商业生态 知识 知识传承 知识分享 知识库构建 知识铺 第三方系统 精确 系统稳定性 系统解决方案 组件化 经验分享 编程辅助 编辑器 网站 网站分析 老兵 脚本文件 自动化 自动转换 论文写作 设计指南 设计模式 语言处理 语音合成 请求分派 软件应用 软件架构 运行时 部件抽取 部署 配置化 量化 错误识别 零编码 面向切面编程 面向对象编程 页面停留时长 领域驱动设计 高频镜

友情链接

其它