1.引入jar包

  log4j-1.2.13.jar

2.src下建立配置文件:log4j.properties

#不+All,只写后一种LOG
log4j.rootLogger =ALL,systemOut,logRollingFile #输出到控制台
log4j.appender.systemOut = org.apache.log4j.ConsoleAppender
log4j.appender.systemOut.layout = org.apache.log4j.PatternLayout
#"%-5p":消息类型(DEBUG?INFO?),左对其,5字符
#"%l":那个文件那个方法哪一行输出log
#"%n":换行
#"%m":log消息
log4j.appender.systemOut.layout.ConversionPattern = [%-5p][%-22d{yyyy/MM/dd HH:mm:ss.SSS}][%l]%n%m%n
#阈值(log级别:DEBUG,INFO,ERROR,WARN)
log4j.appender.systemOut.Threshold = DEBUG #设定文件大小输出到文件
log4j.appender.logRollingFile = org.apache.log4j.RollingFileAppender
log4j.appender.logRollingFile.layout = org.apache.log4j.PatternLayout
log4j.appender.logRollingFile.layout.ConversionPattern = %m%n
log4j.appender.logRollingFile.Threshold = DEBUG
log4j.appender.logRollingFile.File = C:/log/AhLog.txt
log4j.appender.logRollingFile.MaxFileSize = 1MB
log4j.appender.logRollingFile.MaxBackupIndex = 10
参考:
  http://blog.csdn.net/dr_guo/article/details/50718063
  《log4j.properties配置详解与实例》

3.编写Java测试文件:

import org.apache.log4j.Logger;

public class TestLog4j {
static Logger log = Logger.getLogger(TestLog4j.class.getName()); public static void main(String[] args) {
log.debug("AH DEBUG");
log.info("AH INFO");
log.error("AH ERROR");
log.warn("AH WARN");
}
}

SSM框架中使用log4j

web.xml中加入

    <!-- 配置log4j -->
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/log4j.properties</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>

用起来需要:

public class AhUtils {
public static Logger log = Logger.getLogger(AhUtils.class.getName());
}

调用:如Service中:

package org.ah.ssm.service.impl;
import org.ah.ssm.ahutils.AhUtils; @Service
public class QuestionServiceImpl implements QuestionService {
@Override
public void getUserAnswers(Map<String, String[]> parameterMap,
List<Question> qs) {
       //......
AhUtils.log.info(_题号 + ":" + _UserAnswer.toString());
       //......
}
}

JAVA使用log4j(另SSM框架中使用log4j)的更多相关文章

  1. SSH框架中配置log4j的方法

    SSH框架中使用log4j的方便之处 1. 动态的改变记录级别和策略,即修改log4j.properties,不需要重启Web应用,这需要在web.xml中设置一下.2. 把log文件定在 /WEB- ...

  2. SSM框架中数据库无法连接的问题

    首先是SSM框架中所有的配置都是没有问题的,而且项目在其他人的环境上也能正常访问数据库:那么最有可能的就是数据库版本的问题导致数据库连接不上,服务器给我的报错是: 15:37:25.902 [C3P0 ...

  3. 关于Java Web结构和SSM框架的理解

    Java Web常见的三层结构 表现层:也就是Web层,常见的框架有Spring MVC.Struts2 ,并包括用于展示的界面,如JSP界面:业务层:Service层,专注于业务逻辑的实现:持久层: ...

  4. SSM框架中,controller的action返回参数给vue.js

    在SSM框架中,controller的action中,返回的是视图,即jsp页面或是ModelAndView,若是通过axios给vue传值的话,需要转换为字符串或是user实体类对象. 使用@Res ...

  5. SSM框架中的前后端分离

    认识前后端分离 在传统的web应用开发中,大多数的程序员会将浏览器作为前后端的分界线.将浏览器中为用户进行页面展示的部分称之为前端,而将运行在服务器,为前端提供业务逻辑和数据准备的所有代码统称为后端. ...

  6. maven springMVC SSM框架中 出现的406 (Not Acceptable)

    首先,需要清楚,http state 406代表什么意思: 406是HTTP协议状态码的一种,表示无法使用请求的特性来响应请求的网页.一般指客户端浏览器不接受所请求页面的MIME类型. 出现这样的错误 ...

  7. 在SSM框架中我设置拦截器filter不能通过注解获取到实现类

    我在用注解注入实现类的时候,出现了这样的错误:如以下截图: 这个地方报出的错误是说明我的一个接口类型的类没有获取到,后来我就想要是我的实现类没有获取到那么我就直接new一个实现类然后再进行调用就会出现 ...

  8. 百度富文本编辑器ueditor在jsp中的使用(ssm框架中的应用)

    折腾了一下午终于把百度富文本编辑器ueditor搞定了!   项目地址:https://github.com/724888/lightnote_new     首先我参考了一个ueditor的demo ...

  9. SSM框架中的注解,配置和控制器相关笔记

    常规SSM实例 探索SSM理论的前提,应该是在对框架基础的运作方式有一定了解,以下是个人Android后台项目,用SSM框架快速搭建,以下是代码,主要 观察结构. 代码结构: model实体类 Ida ...

随机推荐

  1. test pthread code

    #include <iostream> #include <pthread.h> using namespace std; ; void * add(void *); pthr ...

  2. scikit-learn实现简单的决策树

    #encoding=utf-8import numpy as npimport pandas as pd def main(): #Pre-processing from sklearn.datase ...

  3. nasm学习资料

    http://cee.github.io/NASM-Tutorial/   学习nasm的一个例子, 不错, 代码跟着敲, 出结果.理解起来不费事. http://www.mouseos.com/as ...

  4. Python 自动发送邮件

    简单邮件传输协议(SMTP)是一种协议,用于在邮件服务器之间发送电子邮件和路由电子邮件.Python提供smtplib模块,该模块定义了一个SMTP客户端会话对象,可用于使用SMTP或ESMTP侦听器 ...

  5. Linux下FTP服务器(vsftpd)配置:

    1. vsftpd 安装:yum install vsftpd 2. 添加用于: useradd admin -d /home/data -s /sbin/nologin usermod -d /ho ...

  6. s21day07 python笔记

    s21day07 python笔记 一.昨日内容回顾及补充 回顾 补充 将前面所提到的功能,统一改称为方法 二.深浅拷贝 基本格式 v1 = [1,2,3] import copy v2 = copy ...

  7. js数字自执行随机滚动

    每三秒执行一次,若是需要触发执行,可添加一个单击事件.<!DOCTYPE HTML> <html> <head> <meta http-equiv=" ...

  8. mongo 使用find的返回值,转换为数组形式

    $rs = $mongo->find(); var_dump(iterator_to_array($rs));

  9. java中的映射表HashMap、TreeMap

    集(set)是集合(collection),集合不是集. HashMap是散列映射.TreeMap对键进行排序了. map的三个视图:键集.值集合.键/值集. Set<K> keySet( ...

  10. 邮件报警以及服务端能否ping通客户端的小例子(三)

           就这个小小的东西,弄了一天,弄的头晕眼花,毕竟第一次弄这个,记录下来,若干年之后,回看这些笔记,不知是什么样的感想,哈哈.我学一个东西的时候喜欢系统的来,一点一点的来,做这个的时候想法很 ...