添加自定义log

在项目中用户希望能够看到各个阶段进行了什么操作,通过下面的方法可以实现这一要求

部分代码没有添加,可以自己实现,下面是功能的主体部分。

entity是要修改的字符串的名字,a是修改前的值,b是修改后的值,

public static final String generateLog(String entity, Object a, Object b) {
        if (a == null || a.toString() == null || a.toString().trim().equals("")) {
            if (b == null || b.toString() == null || b.toString().trim().equals("")) {
                return ""; // null -> null
            } else {
                return "添加[" + entity + "]:" + format(b) + "\n"; // null -> b
            }
        } else /* a != null */ {
            if (b == null || b.toString() == null || b.toString().trim().equals("")) {
                return "删除[" + entity + "]:" + format(a) + "\n"; // a -> null
            } else if (format(a).equals(format(b))) {
                return ""; // not change
            } else {
                return "修改[" + entity + "]:" + format(a) + " to " + format(b) + "\n"; // a -> b
            }
        }


    }
    
    private static final String format(Object o) {
        if (o instanceof java.lang.String) {
            return o.toString();
        } else if (o instanceof java.util.Date) {
            return DateUtils.parse((java.util.Date) o, "yyyy-MM-dd HH:mm:ss");
        } else {
            return o.toString();
        }
    }

猜你喜欢

转载自blog.csdn.net/wobuaizhi/article/details/80172076