1、新建一个maven工程:
mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch04 -DartifactId=simple-weather -DpackageName=org.sonatype.mavenbook
2、创建java文件:
Main.java:关键代码
// Configure Log4J 取log4j的属性文件的时候,可以直接这么取 PropertyConfigurator.configure(Main.class.getClassLoader().getResource("log4j.properties");
Weather.java
WeatherFormatter.java
YahooParser.java
YahooRetriever.java
3、创建资源文件:
log4j.properties
output.vm
4、构建项目:mvn install
5、运行程序:
mvn exec:java -Dexec.mainClass=org.sonatype.mavenbook.weather.Main
显示结果:
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building simple-weather 1.0
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- exec-maven-plugin:1.3.1:java (default-cli) @ simple-weather ---
[WARNING] Warning: killAfter is now deprecated. Do you need it ? Please comment on MEXEC-6.
0 INFO YahooRetriever - Retrieving Weather Data
411 INFO YahooParser - Creating XML Reader
518 INFO YahooParser - Parsing XML Response
559 INFO WeatherFormatter - Formatting Weather Data
642 INFO mavenbook - *********************************
Current Weather Conditions for:
Evanston, IL, US
Temperature: 72
Condition: Partly Cloudy
Humidity: 87
Wind Chill: 72
*********************************
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.831s
[INFO] Finished at: Wed Jun 25 10:21:45 CST 2014
[INFO] Final Memory: 9M/23M
[INFO] ------------------------------------------------------------------------
相关推荐
Log4j2是Apache软件基金会开发的日志框架Log4j的升级版,它具有更高的性能、灵活性和可配置性。Log4j2支持多种日志记录级别(如DEBUG、INFO、WARN、ERROR),并允许通过XML、JSON、YAML或纯Java配置文件进行灵活配置...
压缩包中的"**lib**"目录可能包含Log4j的必要依赖库,比如`log4j.jar`,这是运行Log4j的日志记录功能所必需的。确保这些库文件被添加到Tomcat的`lib`目录,使得所有部署的应用都能访问Log4j。 综上所述,通过正确...
然而,通过启用异步日志模式,Log4j2会将日志事件放入一个队列,然后由一个单独的后台线程处理这些事件,从而避免了主线程的阻塞,提高了应用程序的响应速度。 在"Log4j2Test"压缩包中,可能包含了以下内容: 1. ...
8. **性能优化**:Log4j通过延迟初始化和日志门面模式,可以在不影响性能的情况下,实现高效的日志记录。 9. **MDC与NDC**:Mapped Diagnostic Context (MDC) 和 Nested Diagnostic Context (NDC) 是Log4j提供的两...
1. **配置文件**:Log4j的配置文件通常是`log4j.properties`或`log4j.xml`,它定义了日志的级别(如DEBUG、INFO、WARN、ERROR、FATAL)、输出目的地(控制台、文件、数据库等)以及布局格式。 2. **日志类**:在...
Log4j提供了多种布局选项,例如SimpleLayout、PatternLayout和HTMLLayout,它们分别以简单文本、自定义模式和HTML格式展示日志信息。 3. **Appender(输出端)**: Appender决定了日志信息的输出位置。常见的...
通过`log4j.properties`或`log4j.xml`配置文件,可以定制日志输出的级别、目的地和格式,从而满足不同项目的需求。在实际开发中,正确地使用和配置`log4j`能显著提升问题排查和系统监控的效率。
- **内存占用**:Log4j2在内存使用方面也表现出色,尤其是在开启异步模式后,它能够更好地管理内存资源,降低整体内存消耗。 - **CPU利用率**:由于Log4j2采用了更为先进的并发模型,其CPU利用率通常低于Log4j 1.x...
使用Slf4j集成Log4j2构建项目日志系统的完美解决方案 Slf4j是简单的日志外观(Facade)模式,它提供了统一的日志接口,使得用户可以选择不同的日志实现。Slf4j的出现使得日志系统的开发变得更加灵活和便捷。Log4j2...
Log4j作为Java领域广泛应用的日志框架,提供了强大的日志记录功能。本文将深入讲解如何配置log4j以实现日志输出到控制台和文件,并提供相关代码实例和案例分析。** ### 一、Log4j简介 Log4j是Apache组织开发的一个...
- **设置Layout**:如`log4j.appender.stdout.layout=org.apache.log4j.PatternLayout`,并定义其模式`log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n`,决定日志的显示格式。...
例如,`org.apache.logging.log4j.core.appender.ConsoleAppender`用于将日志输出到控制台,而`org.apache.logging.log4j.core.layout.PatternLayout`则可以按照自定义的模式格式化日志信息。 Log4j2的亮点之一是其...
**日志框架Log4j详解** 在Java编程中,日志记录是不可或缺的一部分,它用于追踪应用程序的运行状态,帮助开发者在出现问题时定位错误。Log4j是Apache组织开发的一个强大的、灵活的日志记录框架,它允许我们控制日志...
Log4j是Apache组织开发的一款强大的Java日志框架,它为开发者提供了灵活的日志记录功能。在Java应用程序中,日志记录是至关重要的,它帮助我们跟踪程序运行时的异常,进行性能分析,以及调试代码。Log4j的文档和包...
四、Log4j的使用 在Java代码中,我们可以使用以下方式创建和使用Logger: ```java import org.apache.log4j.Logger; public class MyClass { private static final Logger logger = Logger.getLogger(MyClass....
配置文件(通常是log4j.properties或log4j.xml)决定了日志记录的行为,包括日志级别、输出目的地、格式等。例如,以下是一个简单的log4j.properties配置示例: ``` # 设置全局日志级别为INFO log4j.rootLogger=...
Log4j是Apache组织开发的一款Java日志框架,它在Java世界中被广泛使用,尤其在企业级应用中,因为其强大的功能、灵活性和高效性。Log4j提供了丰富的日志记录选项,允许开发者根据需求调整日志级别,输出调试信息,...
- `log4j.appender.*.layout.ConversionPattern`:自定义日志输出的模式。 - `log4j.logger.*`:可以为特定的包或类设置独立的日志级别。 通过以上配置,你可以灵活控制不同级别的日志输出,如DEBUG、INFO、WARN、...