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

金融手机网站开发/怎样建网站平台

金融手机网站开发,怎样建网站平台,重庆网站建设多少钱,个人网站前言 几乎每个大型应用程序都包含自己的日志或跟踪API。为了符合这一规则,欧盟SEMPRER项目决定编写自己的跟踪API。这是在1996年初。经过无数次的增强、几个版本和大量的工作之后,API演变成了log4j,这是一个流行的Java日志包。这个包是在Apa…

前言

几乎每个大型应用程序都包含自己的日志或跟踪API。为了符合这一规则,欧盟SEMPRER项目决定编写自己的跟踪API。这是在1996年初。经过无数次的增强、几个版本和大量的工作之后,API演变成了log4j,这是一个流行的Java日志包。这个包是在Apache Software License下发布的,Apache Software License是由开源组织认证的完全成熟的开源许可证。

然而随着技术的发展,Log4j的结构、性能被很多新的日志框架所替代。它在设计结构上比不上slf4j,在性能上比不上logback。于是apache对垂垂老矣的Log4j进行一次重生,是重生,而不是优化。虽然都叫Log4j。但是,它们是两个完全不同的东西,为了方便区分他们,给了两个别名:Log4j1、Log4j2。

Log4j1与Log4j2的区别

设计理念的区别

slf4j的成功在于他的高屋建瓴,俯视一切。
slf4j是日志门面(像:java的接口,没有提供任何实现),通过提供各种桥接器,适配各种日志框架(Log4j1,logback等)。

Log4j1并没有这样的高度,于是Log4j2就借鉴了slf4j的设计。
Log4f2有两部分组成:log4j-api、log4j-core。
其中log4j-api和slf4j是相同的,都是日志门面,log4j-core则是对log4j-api的实现,和log4j1、logback是相同的, 并且通过桥接器log4j-api还可以适配其他的日志系统(logback等)。
就这样,Log4j2集成了slf4j与logback的优点,成为了Log4j的一次重生。

核心Jar包的区别

上面我们就说了,Log4j有两部分组成,分别是log4j-api、log4j-core

而在Log4j1中,Log4j的核心包只有log4j:log4j:[version]

而log4j2的核心包有2个:

org.apache.logging.log4j:log4j-core:[version]
org.apache.logging.log4j:log4j-api:[version]

引入Jar包的区别

//log4j1:
<dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version>
</dependency>//log4j2:
<dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-api</artifactId><version>2.14.1</version>
</dependency>
//log4j-core包中已经引入了log4j-api
<dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-core</artifactId><version>2.14.1</version>
</dependency>

log4j1、log4j2中类的包名的区别:

Log4j1中类的包名都是以 org.apache.log4j 开头

Log4j2中,log4j-api中的类包名以 org.apache.logging.log4j 开头,log4j-core中的类包名以 org.apache.logging.log4j.core 开头。

配置文件的区别

Log4j:通过一个log4j.properties的文件作为主配置文件。

以下是一个输出到控制台的例子:

log4j.rootLogger=INFO,consolelog4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%p] [%thread] [%c] >>> %m%n

Log4J采用类似C语言中的printf函数的打印格式格式化日志信息,打印参数如下:%m 输出代码中指定的消息:

%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL  
%r 输出自应用启动到输出该log信息耗费的毫秒数  
%c 输出所属的类目,通常就是所在类的全名  
%t 输出产生该日志事件的线程名  
%n 输出一个回车换行符,Windows平台为“rn”,Unix平台为“n”  
%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy 	MMM dd HH:mm:ss,SSS},输出类似:20021018221028921  
%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:	Testlog4.main(TestLog4.java:10)

而在Log4j2中,Log4j2已经弃用了.properties方式,采用的是.xml,.json或者.jsn这种方式来做。
log4j2.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN"><Appenders><Console name="Console" target="SYSTEM_OUT"><PatternLayout pattern="[I am log4j_2.x] [%-d{yyyy-MM-dd HH:mm:ss}]-%5p : %m%n"/></Console></Appenders><Loggers><Root level="trace"><AppenderRef ref="Console"/></Root></Loggers>
</Configuration>

调用方式的区别

Log4j1中

import org.apache.log4j.Logger;
private static final Logger logger = Logger.getLogger(App.class);

而在Log4j2中

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
private static final Logger logger = LogManager.getLogger(App.class);

测试用例

public class Log4jTest {public static void main(String[] args) {org.apache.log4j.Logger log4j1 = org.apache.log4j.LogManager.getLogger(Log4jTest.class);log4j1.info("log4j1日志" + log4j1.getClass().getName());org.apache.logging.log4j.Logger log4j2 = org.apache.logging.log4j.LogManager.getLogger(Log4jTest.class);log4j2.info("log4j2日志" + log4j2.getClass().getName());}
}

输出结果为:

在这里插入图片描述

http://www.lbrq.cn/news/1366795.html

相关文章:

  • 做网站难还是app难/做推广的公司一般都叫什么
  • 网站做微信支付/厦门网站建设公司
  • 电子商务网站开发公司/热点事件
  • 做互助盘网站/百度认证服务平台
  • 一般网站可以自己做商城吗/google下载
  • 知名的咨询行业网站制作/网络推广运营推广
  • 怎么做网站从0做到权重7/代写文章
  • wordpress变慢了/蜘蛛seo超级外链工具
  • 网站开发系统有哪些开发方案/人民日报最新头条10条
  • 做区块链在哪个网站/百度推广做二级域名
  • 凤岗网站设计/十大短视频平台排行榜
  • 做网站怎么做多少钱/痘痘该怎么去除效果好
  • 常州免费做网站/最专业的seo公司
  • 陈塘庄做网站公司/站长之家域名
  • 用手机能创建网站吗/潍坊关键词优化平台
  • 南昌哪里可以做电商网站/线上渠道推广有哪些方式
  • 同仁seo排名优化培训/东莞网站推广及优化
  • 天猫网站左侧导航用js怎么做/怎么优化网站
  • 怎么做一考试网站/seo在线培训课程
  • 淮南市住房与城乡建设委员会网站/免费宣传网站
  • 西部数码创建php网站/爱站查询工具
  • 网站开发准备流程/seo哪家公司好
  • 网站图片验证码出不来/游戏代理平台哪个好
  • 两个相同的网站对做优化有帮助/今日军事新闻视频
  • kkday是哪里做的网站/免费网站制作软件平台
  • 网站备案真麻烦/电子商务平台有哪些
  • 网页制作模板内容互换/应用商店优化
  • dw个人简历网页制作模板/优化seo公司哪家好
  • 网络技术培训班多少钱/宁波正规优化seo公司
  • 网络营销方式有几种/富阳seo关键词优化
  • Android Telephony 框架与横向支撑层
  • Java项目:基于SSM框架实现的商铺租赁管理系统【ssm+B/S架构+源码+数据库+毕业论文+开题报告+任务书+远程部署】
  • sqli-labs:Less-23关卡详细解析
  • Python中的sys.path与PYTHONPATH全解析:模块导入路径的底层机制与最佳实践
  • 《基于通道注意力与空洞卷积的胸片肺气肿检测算法》论文解析
  • Linux环境下使用Docker搭建多服务环境