log4j

SSM框架整合(IntelliJ IDEA + maven + Spring + SpringMVC + MyBatis)

你。 提交于 2020-03-03 23:21:01
版权声明:本文为博主原创文章,未经博主允许不得转载。 目录 (?) [+] 创建maven项目 项目配置文件 项目配置和部署 值得注意的地方 5 项目下载地址 本篇文章主要内容是介绍如何使用IntelliJ IDEA创建Spring + SpringMVC + MyBatis项目,下面会给出项目搭建的详细步骤以及相关的配置文件。 1. 创建maven项目 1.1 File -> New Module,进入创建项目窗口。 1.2 点击Next,填写GroupId、ArtifactId和Version 1.3 接着下一步,这里需要注在Properties中添加一个参数 archetypeCatalog=internal,不加这个参数,在maven生成骨架的时候将会非常慢,有时候直接卡住。来自网上的解释: archetypeCatalog表示插件使用的archetype元数据,不加这个参数时默认为remote,local,即中央仓库archetype元数据,由于中央 仓库的archetype太多了所以导致很慢,指定internal来表示仅使用内部元数据。 1.4 填写Module name 1.5 生成maven的项目骨架之后,我们还需要手动在 src/main 下创建 java目录。现在可以直接编写了,我把项目所需要的文件都编写完成之后,项目的工程结构如图。 到此为止

log4j日志

时间秒杀一切 提交于 2020-03-02 20:03:15
log4j 一个完整的软件,日志是必不可少的。程序从开发、测试、维护、运行等环节,都需要向控制台或文件等位置输出大量信息。这些信息的输出, 在很多时候是使用 System.out.println() 无法完成的。 日志信息根据用途与记录内容的不同,分为 调试日志 、 运行日志 、 异常日志 等。 Log4j 的全称为 Log for java,即专门用于 Java 语言的日志记录工具。 日志级别 为了方便对于日志信息的输出显示,对日志内容进行了分级管理。日志级别由高到低,共分 6 个级别: fatal(致命的) error warn info debug trace(堆栈) 日志属性配置文件 日志属性文件 log4j.properties 是专门用于控制日志输出的。其主要进行三方面控制: 输出位置:控制日志将要输出的位置,是控制台还是文件等。 输出布局:控制日志信息的显示形式。 输出级别:控制要输出的日志级别。 日志属性文件由两个对象组成:日志附加器与根日志。 根日志,即为 Java 代码中的日志记录器,其主要由两个属性构成:日志输出级别与日志附加器。 日志附加器,则由日志输出位置定义,由其它很多属性进行修饰,如输出布局、文件位置、文件大小等。 日志附加器 所谓日志附加器,就是为日志记录器附加上很多其它设置信息。附加器的本质是一个接口,其定义语法为: log4j.appender

Maven及LOG4J配置示例

白昼怎懂夜的黑 提交于 2020-03-02 18:46:36
刚才在测试小项目里配置了一下log4j,很久不用,有些遗忘了,配置完发出来备忘一下 首先用maven引入log4j,相关的代码如下: <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.9</version> </dependency> 然后是配置log4j.properties,这里没有采用xml的配置格式 ### set log levels ### log4j.rootLogger = debug , stdout ### 输出到控制台 ### log4j.appender.stdout = org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target = System.out log4j.appender.stdout.layout = org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n ### 输出到日志文件 ### log4j.appender.D = org.apache.log4j

Log4j配置使用&集成kafka

浪子不回头ぞ 提交于 2020-03-02 16:58:29
Log4j配置使用 1、配置根Logger: log4j.rootLogger = [level],appenderName1(输出目录1),appenderName2(输出目录2),… 1.1、level一般分为5个级别:DEBUG < INFO < WARN < ERROR < FATAL Log4j有一个规则:只输出级别不低于(>=)设定级别的日志信息 假设Loggers级别设定为INFO,则INFO、WARN、ERROR和FATAL级别的日志信息都会输出,而级别比INFO低的DEBUG则不会输出 1.2、appenderName:就是指定日志信息输出到哪个地方,可以同时指定多个输出目录 注意: 这里设置的输出目录要和下面具体配置输出目录名保持一致 示例: log4j.rootLogger=INFO,KAFKA,rolling 2、配置日志信息输出目的地(appender): appender KAFKA log4j.appender.KAFKA=kafka.producer.KafkaLog4jAppender log4j.appender.KAFKA.topic=tigbs_monitor_log log4j.appender.KAFKA.brokerList=kafka04broker01.cnsuning.com:9092,kafka04broker02

从Log4j迁移到LogBack的理由

荒凉一梦 提交于 2020-03-02 06:24:48
无论从设计上还是实现上,Logback相对log4j而言有了相对多的改进。不过尽管难以一一细数,这里还是列举部分理由为什么选择logback而不是log4j。牢记logback与log4j在概念上面是很相似的,它们都是有同一群开发者建立。所以如果你已经对log4j很熟悉,你也可以很快上手logback。如果你喜欢使用log4j,你也许会迷上使用logback。 更快的执行速度 基于我们先前在log4j上的工作,logback 重写了内部的实现,在某些特定的场景上面,甚至可以比之前的速度快上10倍。在保证logback的组件更加快速的同时,同时所需的内存更加少。 充分的测试 Logback 历经了几年,数不清小时数的测试。尽管log4j也是测试过的,但是Logback的测试更加充分,跟log4j不在同一个级别。我们认为,这正是人们选择Logback而不是log4j的最重要的原因。人们都希望即使在恶劣的条件下,你的日记框架依然稳定而可靠。 logback-classic 非常自然的实现了SLF4J logback-classic中的登陆类自然的实现了SLF4J。当你使用 logback-classic作为底层实现时,涉及到LF4J日记系统的问题你完全不需要考虑。更进一步来说,由于 logback-classic强烈建议使用SLF4J作为客户端日记系统实现

JAVA异常处理原则和log4j输出详细异常分析

北战南征 提交于 2020-03-01 16:21:50
1.多用try,catch;不要一个try,catch包含所有内容 好处:不同模块抓取不同异常,某一模块异常挂了,不影响其他模块的程序的进行 2.多写几个catche;尽量不要使用Exception这个大异常去包容所有异常 不要为了追求代码的简练,try,catch只写一个,使用Exception去抓取所有可能的异常,这只是理想状态,程序出错不是直接打印出来异常就完事了,应该在catche抓取异常的同时一方面给程序员输出错误日志,一方面做些处理反馈给用户,比如一些提示错误框或者错误页面,不能让用户不知道所以然但是 系统 没有正常进行。 综上所述,应该多使用几个catche块去抓取不同异常,然后做不同处理,返回给用户,尽量不同异常使用不同cacht块抓取别一个Exception抓取所有异常; 3.通过测试来谈谈java常见异常打印的区别 packagecom.hudong.test; importorg.apache.commons.logging.Log; importorg.apache.commons.logging.LogFactory; public class TryCatchTest{ private final static Log logger =LogFactory.getLog(TryCatchTest.class); public static void

Spring Boot日志升级篇—log4j【从零开始学Spring Boot】

穿精又带淫゛_ 提交于 2020-03-01 13:15:37
引入log4j依赖 在创建Spring Boot工程时,我们引入了 spring-boot-starter ,其中包含了 spring-boot-starter-logging ,该依赖内容就是Spring Boot默认的日志框架Logback,所以我们在引入log4j之前,需要先排除该包的依赖,再引入log4j的依赖,就像下面这样: <!-- 忽略自带的日志框架. --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> </dependency> <!-- log4j. --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-log4j</artifactId> </dependency> <!--[if

Netweaver和CloudFoundry的log设置

独自空忆成欢 提交于 2020-03-01 08:04:25
Netweaver tcode SAAB,将Logpoints设置为"Log": 给想打开trace的user创建一个activation: 新建一个report: 执行完report后返回SAAB即可查看到记录的log. CloudFoundry pom.xml里定义cf-logging, log4j2和slf4j这三个组件的版本号: < dependency > < groupId > org.slf4j </ groupId > < artifactId > slf4j-api </ artifactId > < version > ${slf4j.version} </ version > </ dependency > < dependency > < groupId > com.sap.hcp.cf.logging </ groupId > < artifactId > cf-java-logging-support-log4j2 </ artifactId > < version > ${cf-logging-version} </ version > </ dependency > < dependency > < groupId > org.apache.logging.log4j </ groupId > < artifactId > log4j-slf4j

java log4j使用

笑着哭i 提交于 2020-03-01 04:03:05
log4j使用方法 1、定义配置文件 首先使用配置文件将使我们的应用程序更加灵活配置log日志输出方式包括输出优先级、输出目的地、输出格式。Log4j支持两种配置文件格式,一种是 XML格式的文件,一种是Java特性文件log4j.properties(键=值)。下面将介绍使用log4j.properties文件作为配置文 件的方法: ①配置根Logger,其语法为:0 log4j.rootLogger = [ level ] , appenderName, appenderName, … 其中,level 是日志记录的优先级,分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者自定义的级别。Log4j建议只使用四个级别,优 先级从高到低分别是ERROR、WARN、INFO、DEBUG。通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关。比如在这里定 义了INFO级别,则应用程序中所有DEBUG级别的日志信息将不被打印出来。 appenderName就是指定日志信息输出到哪个地方。可同时指定多个输出目的地。 ②配置日志信息输出目的地Appender,其语法为: log4j.appender.appenderName = fully.qualified.name.of.appender.class log4j.appender

Log4J输出至当前web路径

徘徊边缘 提交于 2020-03-01 03:37:51
通过Spring提供的一个类,可以辅助log4j配置文件将日志文件输出至应用程序的相对路径 这个类是 org.springframework.web.util.Log4jConfigListener 这个类通过监听器将应用程序的路径设到System的property里,从而可以将代表应用程序路径的property作为log4j的输出路径 log4j.appender.R.File=${ webapp.root }/log/log.log source code : public static final String WEB_APP_ROOT_KEY_PARAM = "webAppRootKey";//web.xml的context-param public static final String DEFAULT_WEB_APP_ROOT_KEY = "webapp.root";//web.xml默认的context-key String root = servletContext.getRealPath("/");//获取应用程序路径 ...... String param = servletContext.getInitParameter(WEB_APP_ROOT_KEY_PARAM);//根据context-param获取context-key String key =