Guns第九节日志系统

本文详细介绍了Guns框架中的日志系统,包括异常日志、业务日志的记录方式,以及如何通过注解和字典功能实现业务日志的详细记录。日志系统通过注解标记业务,字典用于将英文字段和值转化为中文,便于理解。同时,文章还讨论了涉及修改的业务日志记录方法,以及如何保存和比对修改前后的数据。
摘要由CSDN通过智能技术生成

日志机构有哪些功能,第一种记录异常日志,捕获程序里面出现的异常,然后异常记录下来。

第二个是业务日志,修改分为修改前,修改后。

怎么样为某个业务加上业务日志的功能。

它是通过来标记哪些业务 加上业务日子。

这个标记必须放在controller层,下面一个例子介绍一下它的用法,

第一种,添加和删除

咱们看一下注解的源代码,我们可以看到三个参数,注解的作用

为什么要添加唯一的标识呢,因为你需要用这样的一个标识,来记录你是添加了哪一个管理员,你添加了谁。唯一的标识是一个字段,并且这个字段是请求bean里面的一个字段,这个是请求bean的封装,可以用account(添加和删除的时候),添加和删除的时候不能用作为唯一标识的key,因为id是数据库自动生成的。当你记录业务日志的时候,你需要用一个key来标记业务的唯一性。比如说添加管理员,你添加了谁,就需要用account或者phone来标记管理员的唯一性。如果一个key表示不了,就可以用两个key来标记唯一性。


字典功能用于查找key的中文名称和字段的中文名称。
什么是字典。大家设想一下,比如说我们记录日志的时候,现在就以添加管理员图片为例,你需要知道,字典都是放到这个字典常量里面,这里名称就是对应一个类的名称,这里先介绍一下字典的作用,比如说我们添加用户,你添加用户的时候,添加的时候,假如说我们有个业务就是需要记录添加了哪些字段,这些字段的值分别是什么?你现在往数据库记录的时候,比如说账户是admin,那你现在要记录到数据库里面,当你把这些数据图片传输给后台的时候,后台接受到的都是一个个的英文字段图片,然而这个日志记录功能不一定是给开发 人员看的,开发人员可能看到,比如说插入了一条日志,日志是这样的图片,你可能当他点击提交的时候可以获取到这样的字符串,这样的字符串对于开发人员来说很简单,但是对于一个使用这个项目的人来说,这串字符串不知道干什么用的。虽然说这个记录日志插进去了,这个日志是有了,但是他不知道这个日志的详情图片。因为他不知道这些英文字段和这个1,2是干什么的。你传过来的时候就是这样一串字符串。你不可能直接插进去。直接记录到数据库里面。也许知道开发人员才能看懂,而用户看不懂,所以我们需要对它进行转化,需要转化哪些呢?我们需要把这些字段的英文名都转化成中文名。所以说出现了一个字典的概念。这个就是字典,,所以说大家在记录日志的时候会有非常多的字典。我们现在以用户字典为例,当你传过来一个这样的字符串的时候,我在记录日志的时候不可能把他记录下来,我必须先做一个转化,所以说字典的作用就是转化。第一是转化它的一些字段名称,第二是转化它的一些值,比如说一是什么,二是什么,我这个数据库里面一是男,二是女。这个只有我自己知道,如果给业务人员用的话,所以要做一个转化。所以最终要达到一个效果可能是这样的,我新增了一个账号是admin,,所以借用一个字典我们期望的值是这样的。下面介绍一下字典的实现.字典本质上市维护了两个hashmap,这个hashmap都是string,string类型的,第一个string就是key,第二个string就是它的值。我们看一下具体的实现,就是我们可以把userId映射成账号。,当我们插入这条日志的时候,循环到这个字段,我们找一下有没有account,,通过本质上维护的这个map,它的中文名称是账号的意思,我就可以插入这个日志的时候,把这个字段名转换成账号,同理其他的一些字段你都可以转化成中文名称。其实这个字典很简单,两个map,大家可能会问道第二个map是什么?第二个map就是像刚才说的这种值,把这种值转化成中文名称,比如说它

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值