码迷,mamicode.com
首页 > 其他好文 > 详细

Koala业务日志系统设计说明

时间:2014-10-19 02:45:38      阅读:417      评论:0      收藏:0      [点我收藏+]

标签:style   http   color   os   ar   使用   java   for   sp   

源代码:http://git.oschina.net/openkoala/koala

koala-business子模块


模块划分

模块名

作用

koala-businesslog-api 

业务日志系统的核心api

koala-businesslog-impl       

业务日志系统的koala的默认实现

koala-businesslog-web  

 业务日志系统web模块

koala-businesslog-acceptance-test

业务日志系统的集成测试,也是业务日志系统的 **范例**,实际使用时,可以参考此模块

 

时序图

 bubuko.com,布布扣

 

类图

koala-businesslog-api模块

bubuko.com,布布扣 

 

koala-business-impl模块

bubuko.com,布布扣 

 bubuko.com,布布扣

词汇表

类名

说明

BusinessLogServletFilter

实现filter接口,抽象父类,定义抽象方法beforeFilter

LogFilter

继承beforeFilter,实现beforeFilter方法,设置用户名、IP

AbstractBusinessLog

自定义业务日志抽象父类,包含logcategory字段

DefaultBusinessLog

系统默认业务日志实体类,包含用户名、IP、时间

BusinessLogExporter

业务日志导出接口

BusinessLogExporterImpl

系统默认业务日志导出实现类,保存到数据库

ThreadLocalBusinessLogContext

线程本地变量上下文,实现数据在线程内共享

BusinessLogInterceptor

AOP拦截器

BusinessLogThread

业务日志线程执行类

GroovyObjectClassCache

Groovy对象缓存类

ConfigConstant

系统配置常量类

  

groovy考量

使用groovy语言来实现日志模板的记录而不是XML,考量的因素如下:

1. 它支持动态修改,而无须重启服务

2. 使用groovy并不会带来太大的学习成本,以写java代码的方式来写就可以了

3. 这种方式可以获取关联查询,如方法中deptId,但日志中我想拿的是deptName(如:架构部),那使用groovy,你可以轻松使用编写java代码来实现

4. 它有语法检验,使用XML配置,要做到这一点有难度


Koala业务日志系统设计说明

标签:style   http   color   os   ar   使用   java   for   sp   

原文地址:http://my.oschina.net/xiaokaceng/blog/335032

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!