当前位置: 首页 > news >正文

本地网站建设多少钱wordpress小工具编辑器

本地网站建设多少钱,wordpress小工具编辑器,wordpress指定文章标题,企业解决方案的步骤目标 本次迁移的目标就是用 slf4jlogback 的日志框架来取代目前的 slf4jlog4j 如何迁移 基于 slf4j 的无痛迁移 项目本身是采用的 slf4jlog4j 日志架构&#xff0c;所以迁移到 logback 基本无痛 修改依赖 原本是 slf4jlog4&#xff0c;依赖如下 <dependency><gro…

目标

本次迁移的目标就是用 slf4j+logback 的日志框架来取代目前的 slf4j+log4j

如何迁移

基于 slf4j 的无痛迁移

项目本身是采用的 slf4j+log4j 日志架构,所以迁移到 logback 基本无痛
修改依赖
原本是 slf4j+log4,依赖如下

<dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.25</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId><version>1.7.25</version></dependency><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version></dependency>

迁移到 slf4j+logback,依赖如下

 <dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.28</version></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId><version>1.2.3</version></dependency>

修改日志配置
logback 的配置文件为 logback.xml,替换掉 log4j.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true" scan="false"><property name="log.path" value="/data/dev/" /><property name="app.name" value="dev-api" /><appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"><encoder><pattern>%date{HH:mm:ss.SSS} [%-5level] [%logger:%L] %mdc{sid:--} - %msg%n</pattern><charset>UTF-8</charset></encoder><filter class="ch.qos.logback.classic.filter.ThresholdFilter"><level>DEBUG</level></filter></appender><appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${log.path}/${app.name}.log</file><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><fileNamePattern>${log.path}/${app.name}.log.%d{yyyy-MM-dd}</fileNamePattern></rollingPolicy><encoder><!-- %L not support when use async appender --><pattern>%date{HH:mm:ss.SSS} [%-5level] [%logger] %mdc{sid:--} - %msg%n</pattern><charset>UTF-8</charset></encoder><filter class="ch.qos.logback.classic.filter.ThresholdFilter"><level>DEBUG</level></filter></appender><appender name="ASYNC_FILE" class="ch.qos.logback.classic.AsyncAppender"><discardingThreshold>0</discardingThreshold><!-- One and only one appender may be attached to AsyncAppender --><appender-ref ref="FILE" /></appender><!-- note: in production environment set INFO level --><logger name="zy.dev"><level value="INFO" /></logger><root level="ERROR"><appender-ref ref="ASYNC_FILE" /><appender-ref ref="CONSOLE" /></root></configuration>

web 项目初始化日志
增加如下依赖

<dependency><groupId>org.logback-extensions</groupId><artifactId>logback-ext-spring</artifactId><version>0.1.5</version>
</dependency>

在 web.xml 里增加如下监听器

	<context-param><param-name>logbackConfigLocation</param-name><param-value>classpath:config/logback.xml</param-value></context-param><listener><listener-class>ch.qos.logback.ext.spring.web.LogbackConfigListener</listener-class></listener>	

从 log4j 迁移

项目里依赖了其他一些库,可以用 maven 命令 mvn dependency:tree 来查看下,都有哪些库还用到了 log4j,如果这些库也是 slf4j+log4j 的架构那就万事大吉,但也有的库直接用的 log4j,这样就麻烦了
根据 slf4j 的文档,使用 log4j 桥接器 log4j-over-slf4j 来替换 log4j 依赖:即在所有依赖到 log4j 的库上排除 log4j 的依赖,并添加 log4j-over-slf4j 依赖,如下

<dependency><groupId>com.meizu.framework</groupId><artifactId>framework-service</artifactId><version>2.0.0-RC01</version><scope>compile</scope><exclusions><exclusion><artifactId>log4j</artifactId><groupId>log4j</groupId></exclusion>
</dependency><dependency><groupId>org.slf4j</groupId><artifactId>log4j-over-slf4j</artifactId><version>1.7.28</version>
</dependency>

其他日志框架(jul/jcl/log4j2/…)

和 log4j 类似,slf4j 还为其他日志框架提供了 xxx-over-slf4j 桥接器,比如 jcl-over-slf4j,如果用到了对应的日志框架,只需要在依赖里排除该日志框架依赖,并添加对应的桥接器即可
这里要特别提一下 jul(java.util.logging),由于这个日志框架内置在 jdk 内,无法通过置换依赖的方式来桥接,所以需要项目自己调用一下桥接器的方法,在项目初始化时执行如下代码即可

SLF4JBridgeHandler.removeHandlersForRootLogger();
SLF4JBridgeHandler.install();

也许是因为这个原因,jul 的桥接器名字是 jul-to-slf4j 而不是 jul-over-sl4fj

http://www.yayakq.cn/news/666498/

相关文章:

  • 个人可以网站备案吗织梦医院网站源码
  • 温州建设局网站上海建智建设人才培训中心网站
  • 做婚礼请柬的网站有哪些软考5个高级中哪个好考
  • 大连网络推广网站优化找哪家好合肥企业建网站
  • 彩虹云商城网站搭建对门户网站建设的见解
  • 祖传做网站博兴网站建设
  • 网站建设开发服务费下什么科目企业网站板块
  • 营销型网站方案ppt模板网站开发怎么收费
  • 网站系统后台手机网站在线咨询代码
  • 专业模板网站设计公司北京信息维护公司
  • 百度怎么建立网站珠海关键词优化软件
  • 免费建手机商城网站吗临沂网站临沂网站制作
  • 懂做网站的人就是好肇庆正规网页设计培训试听
  • 网站开发套餐省运会官方网站建设
  • 没有做网站经验可以学seo吗网络共享和数据传输事件
  • wordpress能大网站如何建立一个外贸公司网站
  • 长治推广型网站建设东莞常平邮政编码多少
  • 中心网站设计网站设计排行榜前十
  • 大一网站开发项目答辩公司做网站的申请
  • 百度一下你就知道手机版官网怎么优化网站排名具体怎么做
  • 一般课程网站要怎么做国家建设部建筑业网站
  • 河间专业做网站电话宣传网站建设方案
  • 成都网站优化实战html5网站源码
  • 上海哪里有网站建设中国的网站域名是什么
  • 公司微信网站建设方案seo推广系统
  • asp.net 微网站开发教程深圳网站关键词优化排名
  • 做网站无需备案wordpress分享
  • 淄博网站文章优化dart语言做的网站
  • 顶做抱枕网站做电影网站侵权
  • 陕西城乡建设厅网站服务平台收件箱