" + "执行了logPointcat"); // 其实可以发现 ...">
美文网首页AOP(面向切面编程)
aop执行多次解析随记

aop执行多次解析随记

作者: sakura_L | 来源:发表于2020-04-02 13:22 被阅读0次

    System.out.println("===>" + "执行了logPointcat");

    // 其实可以发现 每一调用一次joinPoint.proceed 就会执行一次。
    Object result =null ;
    Object[] args = joinPoint.getArgs();
    System.out.println("===>" + args[0].getClass().getSimpleName());
    // String className = args[0].getClass().getSimpleName();
    String params = new Gson().toJson(args[0]);
    // JsonObject json = new JsonObject();
    JSONObject jsonObject = JSONObject.parseObject(params);
    if (jsonObject.containsKey("sysId") && !TextUtils.isBlank(jsonObject.getString("sysId"))) {
    String sysId = jsonObject.getString("sysId");
    for (Map.Entry<String, Object> entry : jsonObject.entrySet()) {
    String id = jsonObject.getString(entry.getKey());
    if (!TextUtils.isBlank(id)) {
    TreeLineEntity treeLineEntity = treeLineEntityMapper.selectByLineAndSysId(TreeLineEntity.builder().ourTreeId(id)
    .sysId(sysId).build());
    if (treeLineEntity != null) {
    jsonObject.put(entry.getKey(), treeLineEntity.getTreeId());
    }
    }
    }
    args[0] = ListUtil.parse(jsonObject.toJSONString(), args[0].getClass());
    result = joinPoint.proceed(args);
    }

        return result;

    相关文章

      网友评论

        本文标题:aop执行多次解析随记

        本文链接:https://www.haomeiwen.com/subject/emfpwqtx.html