[Kotlin]@Slf 4 jの代替方法は?

4779 ワード

見つけた理由は?


Java+Spring Bootで開発する場合、Lombokライブラリを使用してDTO、VOなどのGetter、Setterタスクなどをベースに設定します.
ただし、Kotlinでは、Lombokコンパイラプラグインが正常に動作することは保証されていません.
そうなるとログのプレゼンテーション@SLF 4 jが使えないという残念さがあります.

まずは本題に入りましょう

	inline fun <reified T> logger() : Logger = LoggerFactory.getLogger(T::class.java)
    
@Component
class CustomFilter : AbstractGatewayFilterFactory<Any?>() {
	val log = logger<CustomFilter>()
    
    override fun apply(config : Any?) : GatewayFilter {
    	return GatewayFilter { exchange, filter -> 
        	val request = exchange.request
            val response = exchange.response
            log.info("Custom PRE Filter : request id -> ${request.id}")
            chain
            	.filter(exchange)
                .then(Mono.fromRunnable {
                	log.info("Custom POST Filter : response code -> ${response.statusCode}")
                })
        
        }
    }
}

わかりません。


  • refedとは?

  • インラインfunとは?

  • この書類Kotlin : Inline functionsを見て勉強しましょう.
  • 参照ドキュメント。


    Kotlin : Lombok Compiler Plugin
    Reddit : Slf4j loggers in 3 ways