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

建企业网站要多少钱wordpress汉化插件怎么用

建企业网站要多少钱,wordpress汉化插件怎么用,网店运营具体做什么,移动云网站建设前置通知环绕通知后置通知最终通知异常通知 API类似#xff0c;只是生效的时机不一样#xff0c;并且#xff0c;不能保证#xff0c;各个通知的顺序 try {//前置通知before();//环绕通知#xff0c;内部是执行的方法around(proxy,method,args,methodProxy);//后置通知a…前置通知环绕通知后置通知最终通知异常通知 API类似只是生效的时机不一样并且不能保证各个通知的顺序 try {//前置通知before();//环绕通知内部是执行的方法around(proxy,method,args,methodProxy);//后置通知afterReturn(); } catch (Throwable e) {exception();//异常通知 }finally {after();//最终通知 } 前置通知 被访问的方法执行之前执行的通知 先执行通知的方法然后再执行被访问的方法本身 public void f2(JoinPoint joinPoint){ System.out.println(----------前置通知); //被访问方法的参数 Object[] args joinPoint.getArgs(); //被访问方法所在类的bean对象 Object target joinPoint.getTarget(); //被访问的方法 MethodSignature signature (MethodSignature) joinPoint.getSignature(); Method method signature.getMethod(); System.out.println(method.getName()被调用了传入了参数 Arrays.toString(args)---所在类target); } 环绕通知 public Object aroundMethod(ProceedingJoinPoint joinPoint) throws Throwable {System.out.println(环绕通知开始);//调用方法必须写的如果不写目标方法不会被调用//Object o 是被执行方法的返回值Object o joinPoint.proceed();//MethodSignature signature (MethodSignature) joinPoint.getSignature();Method method signature.getMethod();Object[] args joinPoint.getArgs();//method.invoke(12);System.out.println(环绕通知结束method.getName());return o; } 配置通知 aop:aspect reftest1!--前置通知,在切入点的方法,被访问之前,执行的方法--aop:before methodf2 pointcut-refq3/aop:around methodaroundMethod pointcut-refq3/aop:after-throwing methodf3 pointcut-refq3/aop:after methodf4 pointcut-refq3/aop:after-returning methodf5 pointcut-refq3/ /aop:aspect SpringAOP原理 动态代理 注解AOP ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexmlns:contexthttp://www.springframework.org/schema/contextxmlns:aophttp://www.springframework.org/schema/aopxsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context.xsdhttp://www.springframework.org/schema/aophttps://www.springframework.org/schema/aop/spring-aop.xsd context:component-scan base-packagecom.javasm/!--开启AOP注解--aop:aspectj-autoproxy/ /beans //aop:aspect refaspect2 Component(aspect2) Aspect public class TestAspect2 {//切点标记Pointcut(execution(* com.javasm.*.service.*.*.query*(..)))void f1(){}Before(f1())void before(JoinPoint joinPoint){System.out.println(注解前置通知);}Around(f1())Object aroundTest(ProceedingJoinPoint joinPoint) throws Throwable {System.out.println(-----环绕通知开始);Object proceed joinPoint.proceed();System.out.println(------环绕通知结束);return proceed;}After(f1())void after(JoinPoint joinPoint){System.out.println(最终通知);}//AfterReturning(f1())AfterReturning(value f1(),returning msg)void afterReturn(JoinPoint joinPoint,Object msg){System.out.println(##########后置通知########返回值:msg);}//AfterThrowing(f1())AfterThrowing(value f1(),throwing e)void afterThrowing(JoinPoint joinPoint,Throwable e){System.out.println(异常通知:e);} } 自定义注解 自定义注解搭配AOP注解,灵活的控制方法 案例: 想在项目中记录日志 但是不是每个模块每个方法都记录 哪个方法需要记录,现在还不确定,但是要提前把业务逻辑写好 利用自定义注解,哪个方法需要增加日志,就在哪个方法上面加上自定义注解 自定义注解 Target(ElementType.METHOD) Retention(RetentionPolicy.RUNTIME) public interface SaveLog {//String value(); } 切面类 Component Aspect public class SaveLogAspect {ResourceLogService logService;//方法执行结束之后,保存日志AfterReturning(annotation(com.javasm.aspect.SaveLog))public void saveLog(JoinPoint joinPoint){String msg %s方法,在%s时间,被调用了,参数是%s;//方法MethodSignature signature (MethodSignature) joinPoint.getSignature();Method method signature.getMethod();String methodName method.getName();//时间SimpleDateFormat simpleDateFormat new SimpleDateFormat(yyyy-MM-dd HH:mm:ss);String time simpleDateFormat.format(new Date());//参数String parameters Arrays.toString(joinPoint.getArgs());msg String.format(msg,methodName,time,parameters);logService.save(msg);} } SaveLog 控制到类 案例: 统计方法运行消耗的时间 统计某一个类所有的方法 within必须是在类级别生效 Retention(RetentionPolicy.RUNTIME) Target(ElementType.TYPE) public interface Time { } Component Aspect public class TimeAspect {Around(within(com.javasm.aspect.Time))public Object around(ProceedingJoinPoint joinPoint) throws Throwable {long start System.currentTimeMillis();Object proceed joinPoint.proceed();long time System.currentTimeMillis() - start;String msg %s方法,运行消耗的时间是%s毫秒;MethodSignature signature (MethodSignature) joinPoint.getSignature();String methodName signature.getMethod().getName();System.out.printf(msg,methodName,time);return proceed;} } Time 配置类启动 Configuration ComponentScan(com.javasm) EnableAspectJAutoProxy//开启注解AOP public class JavasmConfig {} AnnotationConfigApplicationContext applicationContext new AnnotationConfigApplicationContext(JavasmConfig.class);
http://www.pierceye.com/news/874635/

相关文章:

  • 电脑搭建网站需要空间wordpress文件夹权限设置方法
  • 建设网站基础医疗网站建设比较好的
  • 建个网站视频教程小程序开发是前端还是后端
  • 广州分享网站建设网站速度查询
  • 做电商网站价钱传奇类网页游戏大全
  • 如何选择南京网站建设网站制作能赚多少钱
  • 一站式网站设计已有域名如何在花生壳网站做二级域名托管
  • 哪个网站可以接图纸做返利网站怎么做的
  • 旅游网站建设国内外现状辽阳专业建设网站公司
  • 免费视频模板网站wordpress不写代码
  • 设计网站公司 露 联湖南岚鸿小程序网站开发公司
  • 聊城网站设计seo公司重庆
  • 网站布局技术厦门网站建设680元
  • 深圳物流公司网站建e网怎么做效果图
  • 做营销网站公司建个个人网站一年多少钱
  • 阆中网站网站建设代理网络服务器
  • 企业网站新模式seo排名推广工具
  • 山东做网站三五个人网页设计作品简单
  • 福州网站建设软件网站做了301怎么查看跳转前网站
  • 网站开发竞品分析网站开发与规划
  • 香山红叶建设有限公司网站网络营销方式落后的表现
  • 合肥百姓网网站建设263云通信官方网站
  • 深圳建设网站seo 手机电商数据分析师
  • 网站内外链怎么做公司建设包括哪些方面
  • 织梦网站环境搭建电子邮件怎么注册
  • 企业营销类专业网站app设计尺寸规范
  • 奈曼旗建设局网站建设旅游门户网站
  • 网站设计一般会遇到哪些问题wordpress文章关闭缩略图
  • 优质东莞网站制作公司thinkphp网站源码下载
  • 公司网站做一下多少钱最吉利旺财的公司名字