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("*****************************************");
        }
  • 相关阅读:
    微信公众平台入门到精通-新浪云计算平台注册和使用
    PhpStorm快捷键设置/个性化设置,如何多项目共存?如何更换主题?
    10个免费的PHP编辑器/开发工具
    php利用PHPExcel类导出导入Excel用法
    PHP遍历数组的几种方法
    SQLSTATE[HY000] [2003] Can't connect to MySQL server on 'XXX' (13)
    CentOS下Apache虚拟主机配置
    centos下vsftpd登录后无法看见文件,无法创建文件及文件夹
    Linux开启MySQL远程连接
    php禁止某ip或ip地址段访问的方法(转载)
  • 原文地址:https://www.cnblogs.com/SimonHu1993/p/9771395.html
Copyright © 2011-2022 走看看