AOP 那点事儿
AOP(面向切面编程)是对 OOP 的补充而不是替代:把日志、事务、鉴权这类横切逻辑从业务方法里抽出去,用一把“刀”横切一坨“面”。 本文从写死 before/after,讲到静态代理、JDK 动态代理、CGLib,再进入 Spring AOP 的前置、后置、环绕、抛出和引入增强;概念最早不来自 R…
AOP(面向切面编程)是对 OOP 的补充而不是替代:把日志、事务、鉴权这类横切逻辑从业务方法里抽出去,用一把“刀”横切一坨“面”。 本文从写死 before/after,讲到静态代理、JDK 动态代理、CGLib,再进入 Spring AOP 的前置、后置、环绕、抛出和引入增强;概念最早不来自 R…
Spring Web MVC 也是一个基于请求驱动的 Web 框架,并且用了前端控制器模式:先由统一入口接住请求,再按映射规则分给对应的页面控制器(动作 / 处理器)去处理。 把请求链路和核心组件看清楚,后面配 DispatcherServlet、写 Hello World 才不会懵。 一、请求是怎…
这篇教程从 HelloWorld 起步,把 SpringMVC 的 DispatcherServlet、springmvc-servlet.xml 和常用注解一路讲到参数绑定、文件上传、REST、Ajax、拦截器、表单校验,以及和 Spring IOC 的整合。 先导入 jar、在 web.xml …
很多人用 Spring 开发 Java 项目,配 Maven 时却说不清该引哪些 jar,常常是报错再补、补完更乱,下次建同类工程只能整份拷贝。其实 Spring 3 的 jar 大约 19 个,每个都有明确职责,一个 jar 还会传递依赖若干其他 jar。把关系理清,Maven 只要写顶层那一个即…