2021
11-14
11-14
使用spring boot通过自定义注解打印所需日志
springboot自定义注解打印日志在实际项目中可能需要监控每个接口的请求时间以及请求参数等相关信息,那么此时我们想到的就是两种实现方式,一种是通过拦截器实现,另一种则通过AOP自定义注解实现。本文介绍自定义注解实现方式自定义注解,四个元注解这次就不解释了。@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.METHOD)public@interfaceWebLog{/***日志信息描述*/Stringdescription()defaul...
继续阅读 >
一自定义异常/***自定义参数为null异常*/publicclassNoParamsExceptionextendsException{//用详细信息指定一个异常publicNoParamsException(Stringmessage){super(message);}//用指定的详细信息和原因构造一个新的异常publicNoParamsException(Stringmessage,Throwablecause){super(message,cause);}//用指定原因构造一个新的异常publicNoParamsException(Throwa...
实现思路重写Spring的AbstractRoutingDataSource抽象类的determineCurrentLookupKey方法。我们来看下Spring-AbstractRoutingDataSource的源码AbstractRoutingDataSource获取数据源之前会先调用determineCurrentLookupKey方法查找当前的lookupKey。ObjectlookupKey=determineCurrentLookupKey();DataSourcedataSource=this.resolvedDataSources.get(lookupKey);.......returndataSource;lookupKey为数据源标识,因此通过重写...
Java自定义注解一般使用场景为:自定义注解+拦截器或者AOP,使用自定义注解来自己设计框架,使得代码看起来非常优雅。本文将先从自定义注解的基础概念说起,然后开始实战,写小段代码实现自定义注解+拦截器,自定义注解+AOP。一.什么是注解(Annotation)Java注解是什么,以下是引用自维基百科的内容Java注解又称Java标注,是JDK5.0版本开始支持加入源代码的特殊语法元数据。Java语言中的类、方法、变量、参数和包等都可以被标注。...