您当前的位置: 首页 >  Java

命运之手

暂无认证

  • 2浏览

    0关注

    747博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【JavaWeb】【Spring】Spring核心功能:控制反转+依赖注入+切面编程

命运之手 发布时间:2018-04-14 15:47:53 ,浏览量:2

Spring框架核心功能: 控制反转 IOC:Inversion of Control 依赖注入 DI:Dependency Injection 切面编程 AOP:Aspect Oriented Programming

控制反转思想: 传统逻辑:基层零件决定上层实现(我有什么样的零件 - 怎么通过这些零件生成最终产品) 反转逻辑:上层需求决定基层零件(我要生产什么样的产品 - 需要什么样的零件) 传统逻辑,当零件不同时,实现方法就不同,需要重写整个过程的实现代码 反转逻辑,提前定好实现流程,零件按约定的规范生产,代码中只需替换零件的实现类即可(在XML或Config类中动态指定零件实现类) 更进一步,不止零件是可以插拔的,如果有多种生产方式,同样可以用接口来定义统一规范,再根据实际需要动态替换实现类

依赖注入思想: 将构造器参数,Setter方法参数,接口实现类放到XML或者Config类中去指定 当生产需求发生变化时,只需在XML中修改依赖的参数和实现类即可

IOC和DI都是为了解耦合性 通过Interface来定义规范,通过Impl类来定义具体实现,通过XML来动态插拔

切面编程思想: 像Servlet,Window之类的对象,都有自己的执行流程(生命周期) 普通的业务类,同样也有多个方法,每个方法代表了一个操作或阶段 切面编程的思想,就是要在这些节点附加额外的处理 比如指定调用方法前做什么,调用方法后做什么,是否拦截方法,方法返回后做什么,方法发生异常时做什么 切面编程实现原理:生成代理类,对原有类进行增强,通过XML或注解中指定代理细节

关注
打赏
1654938663
查看更多评论
立即登录/注册

微信扫码登录

0.0390s