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

网站改版升级总结电话网站源码

网站改版升级总结,电话网站源码,工业设计属于什么大类,公众号用什么软件做😉😉 学习交流群: ✅✅1:这是孙哥suns给大家的福利! ✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料 🥭🥭3:QQ群:583783…

 

😉😉 学习交流群:

✅✅1:这是孙哥suns给大家的福利!

✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料

🥭🥭3:QQ群:583783824   📚📚  工作微信:BigTreeJava 拉你进微信群,免费领取!

🍎🍎4:本文章内容出自上述:Spring应用课程!💞💞

💞💞5:以上内容,进群免费领取呦~ 💞💞💞💞

一:基于注解的AOP编程

        从jdk5.0之后就java就引入了注解的开发,作为spring框架来讲,支持基于注解进行aop开发,但其核心仍然是aop的标准开发步骤。所以,仍然包括那四步

1:原始对象

        原始对象这一块,仍然需要在配置文件中配置这个对象。

        下边的三个步骤其实就是为了创建组装切面。切面是由切入点和额外功能组装而成,要想构建切面现有额外功能,再有切入点,在进行组装就好了,所以,后三个过程就是为了创建切面。在基于注解的开发过程中它所定义的切面就是一个切面类。我们创建一个MyAspect这样的切面类。想要表达这个类是一个切面类的话我们需要一个这样的注解,@Aspect这样的注解,一旦我们的类加上这个注解之后,这个类就成了切面类,切面类中包含额外功能和切入点。

2:额外功能

        需要在切面类上增加一个@Aspect注解,通过这个注解,就可以定义这是一个切面类,但凡是一个切面,都必须要有额外功能和切入点,这样才能组成切面,如何才查看?
        在切面类当中如何定义一个切面方法,这个额外功能的方法可以随意命名,但是上边必须要有一个@Around注解,这里的注解就替换了之前实现接口的问题

3:切入点

        通过切面定义了额外功能,@Around通过切面类也定义了切入点@Around(excution(* login(..))),@Aspect定义了切面类。这样所有的内容就和xml开发模式匹配了。我们需要将切面类交由Spring进行创建对象还需要告诉Spring我们现在是基于注解开发Spring的AOP**

二:注解开发的基本示例

package com.spring.aspect;import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;/*** @Auther: DaShu* @Date: 2021/6/28 21:54* @Description:*/
@Aspect
public class MyAspect {/*** ProceedingJoinPoint这个等效于MethodInvocation* 这里写的是额外功能的部分,现在的额外功能不需要实现接口了,只需要加入注解。* */@Around("execution(* login(..))")public Object arround(ProceedingJoinPoint joinPoint) throws Throwable {System.out.println("--------------aspect log-----------");Object proceed = joinPoint.proceed();return proceed;}
}
    <!--这里是原始对象--><bean id="userService" class = "com.spring.aspect.UserServiceImpl"/><!--这里边既体现了额外功能,又体现了切入点--><bean id ="around" class = "com.spring.aspect.MyAspect"/><!--告知Spring我们现在是基于注解进行Spring编程了--><aop:aspectj-autoproxy/>```


        如何做多个额外功能 & 切入点复用?
        在以上基础写法的基础上进行修改,修改MyAspect这个类,其他保持一致。所谓的切入点复用,就是在切面类中定义一个函数,这个函数上边加上@Point注解,后续更加附加功能有利于切入点的复用。

package com.spring.aspect;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;/*** @Auther: DaShu* @Date: 2021/6/28 21:54* @Description:*/
@Aspect
public class MyAspect {//定义一个公共切入点表达式@Pointcut("execution(* login(..))")public void myPointcut(){}/*** ProceedingJoinPoint这个等效于MethodInvocation* 这里写的是额外功能的部分,现在的额外功能不需要实现接口了,只需要加入注解。* */@Around(value="myPointcut()")//在这里调用切入点表达式,就完成了整合。public Object arround(ProceedingJoinPoint joinPoint) throws Throwable {System.out.println("--------------aspect log-----------");Object proceed = joinPoint.proceed();return proceed;}@Around(value="myPointcut()")public Object arround1(ProceedingJoinPoint joinPoint) throws Throwable {System.out.println("--------------aspect tx-----------");Object proceed = joinPoint.proceed();return proceed;}
}


三:Spring对于JDK和Cglib动态代理的切换

        Aop底层是实现过程中一共有两种实现方式,一种是jdk的,通过实现接口做新的实现类的方式 创建代理对象,Cglib他是通过继承父类的方式来做新的子类来创建最终的代理对象,这种基于注解的AOP代理方式,他最底层是应用那种方式呢?它里边的代理类使用debugger来查看的话是proxy这个代理jdk来做的,默认情况下Aopbiancheng 底层用用的事JDK的动态代理方式,如果切换CGLIB应该怎么办?引入proxy-target-class="true"这个属性就好了,就可以实现切换了,当然这种增加属性的这种方式只适用于针对注解的开发方式**

  <!--告知Spring我们现在是基于注解进行Spring编程了--><!--proxy-target-class="true"属性默认不写是false,使用JDK代理,指定为TRUE,则使用CGLIB动态代理--><aop:aspectj-autoproxy proxy-target-class="true"/>

        如果按照传统的AOP开发应该怎么修改呢?

        我們要知道无论是基于注解的还是传统的Aop开发都是默认是JDK动态代理,传统的方式想要切换也是在配置文件中进行配置,配置方式是:
 

http://www.yayakq.cn/news/488784/

相关文章:

  • 广州网站制作开发公司网站的企业特色展示
  • 做门户网站需要注册公司吗网站域名什么意思
  • 温州优化网站凡科网上商城
  • 南宁seo网站建设手机做网站公司
  • 网站如何判断做的好不好网站php怎么做
  • 蛋糕设计网站百度总部投诉电话
  • 自动发卡网站怎么做如何设计一个网页存放自己的作品
  • 在阿里国际站做的网站上海最近的新闻大事10条
  • 浙江做电缆桥架的公司网站网站设计维护内容
  • 织梦下载网站模板做自主外贸网站和后台费用多少
  • 深圳高端网站制作价格怎么用自己电脑做网站服务器吗
  • 自己做的网站 能收索么wordpress远程代码执行
  • 网站开发文档百度文库天津注册公司优惠政策
  • 漳州企业网站开发江西赣州网站
  • wordpress 神箭手网站改版seo方案
  • 素材网站设计模板海口模板建站平台
  • 天长网站seo老板办公室装修效果图
  • 网站类网站开发源代码网络舆情监测工作总结
  • 西部数码助手网站后台管理建站域名
  • 网站开发培训机构需要多少钱windows没有wordpress
  • 凡科建站源码成都旅游景点攻略自由行攻略
  • 网站如何提交给百度成都哪里好玩好吃
  • 网站建设与维护心得体会金融棋牌网站建设
  • 17一起做网站app去哪个网站做农产品推广
  • 网站管理程序北京外贸推广
  • 网页设计网站长沙温州建网站公司
  • 杭州网站建设(推荐乐云践新)制作企业网站要花多少钱
  • 湛江网站建设方案外包山西大同最新通告今天
  • 有没有免费的网站保定最大的网络公司
  • 网站建设与软件开发哪个好赚钱国际外贸网站建设