如何制作新乡网站的详细步骤?

摘要:新乡网站制作,网页制作步骤教程,公司企业安全文化内容范本,成都进入搜索热度前五一.MDC 1.MDC介绍 MDC(Mapped Diagnostic Context,映射调试上下文
新乡网站制作,网页制作步骤教程,公司企业安全文化内容范本,成都进入搜索热度前五一.MDC 1.MDC介绍 MDC#xff08;Mapped Diagnostic Context#xff0c;映射调试上下文#xff09;是 log4j 和 logback 提供的一种方便在多线程场景下记录日志的功能。MDC 可以看成是一个与当前线程绑定的Map#xff0c;可以往其中添加键值对。MDC 中包含的内容可以被同…一.MDC 1.MDC介绍 MDCMapped Diagnostic Context映射调试上下文是 log4j 和 logback 提供的一种方便在多线程场景下记录日志的功能。MDC 可以看成是一个与当前线程绑定的Map可以往其中添加键值对。MDC 中包含的内容可以被同一线程中执行的代码所访问。当前线程的子线程会继承其父线程中的 MDC 的内容。当需要记录日志时只需要从 MDC 中获取所需的信息即可。MDC 的内容则由程序在适当的时候保存进去。对于一个 Web 应用来说通常是在请求被处理的最开始保存这些数据。 简而言之MDC就是日志框架提供的一个InheritableThreadLocal所以它是线程安全的在项目代码中可以将键值对放入其中然后使用指定方式取出打印即可。 优点代码简洁日志风格统一不需要在log打印中手动拼写traceId即log.info(traceId:{} , traceId) 在 log4j 和 logback 的取值方式为 %X{traceid}2.API说明 clear()移除所有MDC get (String key)获取当前线程MDC中指定key的值 getContext() 获取当前线程MDC的MDC put(String key, Object o) 往当前线程的MDC中存入指定的键值对 remove(String key) 删除当前线程MDC中指定的键值对 getPropertyMap()返回当前线程的context map的直接引用不是拷贝副本 getCopyOfContextMap()返回当前线程的context map的一个副本对这个map的修改不会影响原来copyOnInheritThreadLocal中的内容。 二.MDC使用 1.使用方式 public class Constants {/*** 日志跟踪id名。*/public static final String TRACE_ID trace_id;/*** 请求头跟踪id名。
阅读全文