技能特长知识点总结
技能特长知识点总结
Java基础,OOP编程思想
OOA: 面向对象分析 需求 转换为 领域模型
OOD: 面向对象设计 领域模型 转换为 逻辑架构
OOP: 面向对象编程 逻辑架构进行编码
OOP好处:易维护 质量高 效率高 易扩展
Spring MVC框架,SpringMVC的执行流程、了解过滤器和拦截器的区别
-
SSM: spring springMVC mybatis
-
四层架构:
- 持久层(dao) mapper层 与数据库联络
- 业务层(service 接口) 业务模块的设计应用
- 表现层(controller) 业务模块的流程控制
- view层 和控制层结合
-
spring
- IOC 容器 控制反转 装载bean 降低模块耦合度
- AOP 面向切面(方法)编程 不改变原有的模型动态修改模型
- 横切关注点:从每个方法中抽取出来的同一类非核心业务代码。
- 切面:封装横切信息点的类,每个关注点体现为一个通知方法。
- 通知:切面必须要完成的各个具体工作,也就是切面里的一个个方法。
- 目标:被通知的对象,也就是被通知方法所作用的对象。
- 代理:像目标对象应用通知之后所创建的代理对象。
- 连接点(JoinPoint):横切关注点在程序代码中的具体体现,对应用程序执行的某个特定位置。(通俗来讲就是一个个的方法)
- 切入点(@Pointcut):切入点就是定位连接点的方式。每个通知上的切入点表达式找到对应的连接点,执行通知之后连接点也就变成了切入点。
-
AOP应用场景
- 不修改源代码 可以对请求链路上的目标方法进行运行耗时统计
- 底层通过动态代理机制实现对目标方法的编程
- 给目标方法添加事务管理
- 给目标方法添加访问控制权限控制
- 对目标方法进行读写
-
AOP依赖:aspectjweaver
-
AOP注解:@Aspect 代表当前类是切面类
-
AOP实现业务代码和非业务代码的接耦合
-
MVC: 模型model (Javabean的类,数据模型) --视图view (JSP 用来展示数据)--控制器controller (接受用户的请求)
-
SpringMVC基于Spring ,是Spring中的一个模块 专门用来做web开发
-
底层就是 servlet 核心是:DispatcherServlet
SpringMVC执行流程:
基于 Servlet 的请求处理框架,核心流程:请求接收 → 路由分发 → 控制器处理 → 视图解析。
过滤器和拦截器的区别:
过滤器:实现 Filter 接口就可实现 通过@WebFilter注解实现对特定URL的拦截
Filter中的三个方法:
- init() 该方法在容器启动初始化过滤器被调用 整个周期被调用一次
- doFilter 容器中每一次请求都会调用该方法
- destory() 容器销毁调用
拦截器: 链式调用 一个请求可以触发多个拦截器 请求的拦截通过HandlerInterceptor实现
HandlerInterceptor接口中的三个方法
- preHandle() :这个方法将在请求处理之前进行调用。返回false请求结束
- postHandle():只有在 preHandle() 方法返回值为true 时才会执行。
- afterCompletion():只有在 preHandle() 方法返回值为true 时才会执行。
区别:
- 实现原理不一样:
- 过滤器 是基于函数回调,拦截器 基于Java的反射机制(动态代理)实现
- 使用返回不同:
- 过滤器 实现的是 javax.servlet.Filter 接口只能在web程序中使用
- 拦截器(Interceptor) 是一个Spring组件,由Spring容器管理,是可以单独使用的
- 触发时机不一样
- 拦截的请求范围不一样
- 注入的bean情况不一样
- 控制执行顺序不一样

浙公网安备 33010602011771号