升级你的Logger(注解+动态代理)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了升级你的Logger(注解+动态代理)相关的知识,希望对你有一定的参考价值。
参考技术A基于android的Log进行了一层简单的封装,以一个demo的形式呈现。
我们在自定义Log的时候,应该考虑到的几点:
描述: 利用注解描述一个类型的日志,利用动态代理生成一种日志类型。
直接看demo,简单粗暴:
日志等级枚举:
普通的日志类,可以实例化之后使用:
Config注解,描述一种类型的日志:开关、等级、名称(log前缀):
日志接口,利用Config注解添加一种日志类型
动态代理,Logger的代理类,可以生成和管理所有Logger:
对上面的那些类封装一层,对外提供日志的能力,DSLog:
demo日志器就做好了,在上面扩展功能也是非常容易的~
欢迎拿去食用~
动态代理中的自定义注解样式
动态代理中的自定义注解的样式
@Target(ElementType.METHOD) 代表此注解使用对象是method
@Retention(RetentionPolicy.RUNTIME) 代表此注解的生存域是运行期
package cn.tedu.anno; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface Tran { }
以上是关于升级你的Logger(注解+动态代理)的主要内容,如果未能解决你的问题,请参考以下文章