当前位置: 首页 > news >正文

成都网站设计平台有没有手机网站推荐

成都网站设计平台,有没有手机网站推荐,农业信息免费发布平台,辽宁省建筑工程造价信息网Spring中的AOP与IOC 1.前言2.Spring AOP#xff08;面向切面编程#xff09;2.1 AOP的实现过程2.2 AOP代理模式的类型2.2.1JDK的动态代理2.2.2CGLIB的动态代理 2.3AOP应用常见场景2.3.1日志记录 2.4对AOP的理解 3.Spring IOC#xff08;Inversion of Control#xff0c;控… Spring中的AOP与IOC 1.前言2.Spring AOP面向切面编程2.1 AOP的实现过程2.2 AOP代理模式的类型2.2.1JDK的动态代理2.2.2CGLIB的动态代理 2.3AOP应用常见场景2.3.1日志记录 2.4对AOP的理解 3.Spring IOCInversion of Control控制反转3.1使用Spring IOC 的好处3.2使用Spring IOC 依赖注入的方式3.2.1通过xml文件注入3.2.2通过注解注入 3.3IOC的理解 4.参考 文章所属专区 日积月累 1.前言 本文主要针对Spring中两大特性AOP和IOC,并针对他们的使用常见结合面试常见问题实现代码进行解析。 2.Spring AOP面向切面编程 在使用Java语言进行代码编写时由于Java语言的特性会有一些弊端比如在处理一些不具有继承关系的一些类的公共行为时只能在每个对象引用公共行为会出现大量重复代码会造成大量代码冗余这样不仅浪费时间也不方便维护AOP的出现解决了这一个问题。 2.1 AOP的实现过程 Spring中的AOP基于代理模式首先会自定义一个注解 其次定义一个切面Aspect类在切面中定义切点和通知切点方法的拦截规则在使用了这个注解的方法会被拦截下来拦截下来之后 最后可以进行前置通知、后置通知、异常通知、返回通知还是环绕通知等。 2.2 AOP代理模式的类型 代理类可以分为两类 动态代理Dynamic Proxy和静态代理Static ProxySpring AOP面向切面编程中主要是运用了动态代理的方式来实现在运行过程中通过反射机制动态创建而成无需手动编写代码。 2.2.1JDK的动态代理 JDK动态代理是Spring AOP默认使用的方式主要用于对实现了接口的类生成代理。JDK动态代理主要涉及到java.lang.reflect包中的两个类Proxy和InvocationHandler。InvocationHandler是一个接口通过实现该接口定义横切逻辑并通过反射机制调用目标类的代码动态将横切逻辑和业务逻辑编制在一起。Prox则利用InvocationHandler动态创建一个符合某一接口的实例生成目标类的代理对象 2.2.2CGLIB的动态代理 CGLIBCode Generation Library是针对类实现代理的主要是对指定的类生成一个子类覆盖其中的方法继承。CGLIB是一个强大的高性能高质量的代码生成类库可以在运行期扩展Java类与实现Java接口。CGLIB封装了asm可以再运行期动态生成新class 2.3AOP应用常见场景 比如日志记录性能优化权限控制内容传递错误处理事务管理限流等。 2.3.1日志记录 在Spring AOP中可以使用AspectJ注解定义一个切面然后在切面方法中添加Before或After注解用于在方法执行前后插入相应的日志记录逻辑 2.4对AOP的理解 AOP是Spring框架中最核心的两个点之一它可以减少重复代码降低模块间的耦合性提高代码的可操作性和可维护性。在实际工作中除了业务代码之外还经常会接触到与业务无关的一些组件比如日志权限事务等常见的核心服务组件如果为每个业务代码单独添加这些组件会出现大量的冗余代码因此我们将这些公共的代码逻辑抽象出来成为一个切面然后注入到具体业务中去。AOP就是通过这样一种方式通过动态代理的方式来对需要注入切面的对象进行代理在进行调用时直接将公共逻辑添加进去而不需要修改原有的业务代码在不改变原有业务代码的情况下做了代码功能的增强。 3.Spring IOCInversion of Control控制反转 在传统的软件设计过程中通常由调用者来创建被调用者的实例。但在Spring中创建被调用者的工作不在由调用者来完成这就是控制反转。IOC是一种设计思想即把原本在程序中手动创建对象的控制权交给了Spring框架中的IOC容器让它去创建和管理这些对象。在Spring中实现IOC主要依靠DI(Dependency Injection 依赖注入) 来实现。 3.1使用Spring IOC 的好处 在 Spring 中 IoC 容器是 Spring 用来实现 IoC 的载体 IoC 容器实际上就是个 MapkeyvalueMap 中存放的是各种对象。 由于资源不再由使用资源的双方管理因此资源可以集中管理实现资源的可配置和易管理降低了使用资源双方的依赖程度低耦合度。 3.2使用Spring IOC 依赖注入的方式 3.2.1通过xml文件注入 属性注入property、构造器注入constructor-arg、自动装配通过对bean的autowrite属性指定byName、byType 3.2.2通过注解注入 这种方式后来在 SpringBoot 中常用 autowrite resource component等 3.3IOC的理解 IOC 控制反转: 在没有使用IOC容器之前都是由程序员来控制对象而有了IOC容器之后则由IOC容器来控制对象 控制的是实现过程中所需要的对象以及依赖的对象 在没有使用IOC之前我们都需要主动在对象中创建依赖的对象这种正转的而有了IOC之后依赖的对象由IOC创建后注入到对象中,由主动创建变成了被动接受这是反转; IOC是一种思想DI依赖注入把对应的属性的值注入到对象是具体的实现方式 AutoWried IOC 容器Spring用来实现IOC的载体实际是个Map(Key,value),Map中存放的是各种对象 在Spring中一般存在三级缓存singletonObject存放完整的Bean对象,整个Bean的生命周期从创建到使用到销毁全部都由容器来控制。 4.参考 谈谈对IOC的理解 Spring AOP的理解与使用 面试被问了几百遍的 IoC 和 AOP 还在傻傻搞不清楚 给个三连吧 谢谢谢谢谢谢了
http://www.yutouwan.com/news/283617/

相关文章:

  • 春哥技术团队网站建设wordpress建手机站
  • 长沙做网站哪个最好电商网页设计报价
  • 有网络网站打不开怎么回事啊新手搭建网站教程
  • 360网站兼容模式网站编辑培训学校
  • 清远市企业网站seo联系方式网站推广品牌
  • 网站名称没有排名网站开发百灵鸟优化
  • 天津免费建设网站宁波网站优化软件
  • 渭南建设工程招标投标网站wordpress靶机下载网站
  • 做微淘要开通网站吗备份恢复 wordpress
  • 海盐网站建设网站建设及网站推广
  • 做网站要什么知识做直播网站需要学什么软件
  • 自己做的网站很慢网络营销软件程序属于
  • 站群cms网站系统php网站模板带后台
  • 广州网站建设专业乐云seo广州装修公司口碑最好的是哪家
  • 如何做淘宝客有没有免费的网站如何自学建网站
  • 网站建设专家排名wordpress 文本框
  • 西安高端模板建站iis 部署wordpress
  • 个体户可以备案网站吗可以做兼职的网站推荐
  • 网站建设包括哪些方面的费用做网站如何躲过网警
  • 如何鉴赏网站论文南宁中庭装饰公司电话
  • 旅游微网站建设建建设网站的
  • 设计师需要了解的网站网站超级外链
  • 怎么做校园表白网站wordpress 缩略图插件
  • 无极网站设计软件界面
  • 凡科建站官网需要什么wordpress右侧
  • 在线生成网站网站域名到期会怎么样
  • 对商家而言网站建设的好处j永久网站
  • 青岛网站制作服务商网站建设 用什么语言
  • 高端的网站制作直播平台如何搭建
  • 谷歌seo网站运营中小企业网