daudit-spring-boot-stater 日誌審覈組件

1. 對於些系統在修改某些數據時要記錄修改前、修改後、修改人、修改時間等。

以便後續好審計

2. pom.xml 引用

        <dependency>
	    <groupId>com.daudit</groupId>
	    <artifactId>daudit-spring-boot-starter</artifactId>
	    <version>1.0.0-RELEASE</version>
        </dependency>



3. 執行SQL腳本


/*==============================================================*/
/* Table: IT_COLUMN_UPDATE_LOG                                  */
/*==============================================================*/
create table L_COLUMN_UPDATE_LOG 
(
   COLUMN_UPDATE_LOG_ID  bigint(20)           not null  auto_increment  comment '項目ID主鍵',
   TABLE_NAME           varchar(200)   comment '關聯表名' ,
   REF_ID               bigint(20)  comment '關聯ID' ,
   COLUMN_NAME          varchar(512)  comment '列表' ,
   SOURCE_VALUE         varchar(512)  comment '原值' ,
   UPDATE_VALUE         varchar(512)  comment '修改值' ,
   UPDATE_TIME          datetime   comment '修改時間' ,
   UPDATE_USER          varchar(100)   comment '修改人' ,
    constraint PK_COLUMN_UPDATE_LOG_ID primary key (COLUMN_UPDATE_LOG_ID)
);


4. 在application.yml配置是否開啓此功能

way:表示是存儲數據表還是log日誌記錄等。

daudit:   
  enable: true
  way: db

5.在要記錄審計日誌的service方法上加上此註解

@EntityUpdateLog(entityName="project",primaryKeyIdName="projectId",serviceBeanClass = TbProjectServiceImpl.class, parseOperationUserclass = XbmOperationUserParser.class)
  entityName :表示分類

primaryKeyIdName 表Java對象的主鍵ID名,以便找到其ID值。

serviceBeanClass  表示是哪個serviceBean,首先實現BaseAuditService接口,根據ID找到原對象值。

parseOperationUserclass 表示獲取當前操作用戶的用戶名

6. 在實體對象上加註解,關注哪個屬性的變化

    @UpdatePropertyLog("狀態")
    private String status;


7.結果

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章