zoukankan      html  css  js  c++  java
  • AspectJ(AOP)切面获取参数名称和参数

      @Async
        @AfterReturning(value ="execution(public * com.zhx.recharge.service.RechargeService.buildOrder(..))", returning = "result")
        public void buildOrder(JoinPoint joinPoint, Object result) throws  Throwable {
            log.info("*****************************************");
            log.info("*****************************************");
            log.info("*****************************************");
            //保存所有请求参数,用于输出到日志中
    //        Map allParams = new HashMap();
            /*Object[] paramValues = joinPoint.getArgs();
            String[] paramNames = ((CodeSignature) joinPoint.getSignature()).getParameterNames();
            for(int i=0;i<paramNames.length;i++){
                if (paramValues[i] instanceof Map<?, ?>) {
                    //提取方法中的MAP参数,用于记录进日志中
                    @SuppressWarnings("unchecked")
                    Map<String, Object> map = (Map<String, Object>) paramValues[i];
                    allParams.putAll(map);
                }else {
                    allParams.put(paramNames[i],paramValues[i]);
                }
            }*/
            Map<String, Object> allParams = (Map<String, Object>) result;
            log.info("this is object={}",allParams);
            String goods_id = String.valueOf(allParams.get("goods_id"));
            String order_no = String.valueOf(allParams.get("order_no"));
            String user_id = String.valueOf(allParams.get("user_id"));
            String uid = String.valueOf(allParams.get("uid"));
            String buy_count = String.valueOf(allParams.get("buy_count"));
            String unitprice= String.valueOf(allParams.get("unitprice"));
            String amount= String.valueOf(allParams.get("amount"));
            String amount_realpay= String.valueOf(allParams.get("amount_realpay"));
            String paygate= String.valueOf(allParams.get("paygate"));
            String goods_priceid= String.valueOf(allParams.get("goods_priceid"));
            String area= String.valueOf(allParams.get("area"));
            String os= String.valueOf(allParams.get("os"));
            String user_ip= String.valueOf(allParams.get("user_ip"));
            String deviceid = String.valueOf(allParams.get("deviceid"));
            String goldcoin = String.valueOf(allParams.get("goldcoin"));
            String flower = String.valueOf(allParams.get("flower"));
            coreWebOrderApi.buildOrder(goods_id,order_no,user_id,uid,buy_count,unitprice,amount,amount_realpay,paygate,goods_priceid,area,os,user_ip,deviceid,goldcoin,flower);
            log.info("success");
            log.info("*****************************************");
            log.info("*****************************************");
        }
  • 相关阅读:
    jms版本
    2-9 Mybatis-Plus之CRUD演示二
    2-8 Mybatis-Plus之CRUD演示一
    2-7 Mybatis-Plus代码生成器演示
    2-6 Mybatis-Plus配置和代码生成器解析
    2-5 Mybatis-Plus配置文件详解
    2-4 Mybatis-Plus框架介绍
    2-3 项目基础环境构建
    2-2 项目结构介绍和框架选择
    2-1 章节及基础环境介绍
  • 原文地址:https://www.cnblogs.com/SimonHu1993/p/9771395.html
Copyright © 2011-2022 走看看