导航:首页 > 编程语言 > javaweb配置log4j

javaweb配置log4j

发布时间:2023-01-23 16:48:13

java开发两次都碰到log4j的问题了,明明设置了输出级别为debug就是打印不了debug级别的日志

java开发过程中会遇到各种问题,自学的话很难去解决这些问题,推荐去千锋教育学习java开发,有专业团队和老师为学生解决各种专业问题。

java开发需要学的知识有:
1.Java基础语法和oop特性;
2.数据库相关知识,例SQL语言、MySQL、非关系型数据库;
3.Web基础知识;
4.Web主流框架,例Spring、SpringMVC、Mybatis;
5.前端知识等。

想要了解更多有关java的相关信息,推荐咨询千锋教育。千锋企业合作部于2013年成立,主要针对企业用人需求和学员职业规划进行服务。经过8年发展,企业合作部已经成为千锋连接企业和学员的重要纽带。服务面对企业建立全方位、立体化、遍布全国的企业合作网络,覆盖全国一线二线城市大中小型公司,成功帮助20000余名人才实现就业,合作企业达20000余家,每年签订1000余份人才培养订单,让广大学员没有后顾之忧。

② java 如何配置log4j日志文件保存路径

以DailyRollingFileAppender 为例:假设每天一个日志文件
有以下设置:

log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.File=app.log
log4j.appender.A1.DatePattern='.'yyyy-MM-dd
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d %5p - %c -%-4r [%t] - %m%n

此时生成日志文件将位于tomcat的bin目录下,如要将日志文件保存在 :根目录/web-info/logs/下,个人有以下4种解决方案:
1 绝对路径
log4j.appender.A1.File=D:\apache-tomcat-6.0.18/webapps/项目/WEB-INF/logs/app.log
但这种写法灵活性很差

以下3中使用相同的设置原理: jvm的环境变量
2:spring的Log4jConfigListener
通过以下配置:
< context-param>
<param-name>webAppRootKey</param-name>
<param-value>webApp.root</param-value>
</context-param>
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:log4j.properties</param-value>
</context-param>
< listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
...
log4j.appender.logfile.File=${webApp.root}/WEB-INF/logs/app.log
...
来解决
2:使用已有jvm变量:
例如:
log4j.appender.logfile.File=${user.home}/logs/app.log
日志将位于:例如windows:C:\Documents and Settings\joe\logs\app.log

3 自己设置目录,也就是在项目启动时通过System.setProperty设置
通过实现ServletContextListener来解决:例如

public class log4jlistener implements ServletContextListener {
public static final String log4jdirkey = "log4jdir";
public void contextDestroyed(ServletContextEvent servletcontextevent) {
System.getProperties().remove(log4jdirkey);
}
public void contextInitialized(ServletContextEvent servletcontextevent) {
String log4jdir = servletcontextevent.getServletContext().getRealPath("/");
//System.out.println("log4jdir:"+log4jdir);
System.setProperty(log4jdirkey, log4jdir);
}
}
web.xml配置:

<listener>
<listener-class>com.log4j.log4jlistener</listener-class>
</listener>

log4j.prtperties 配置:
log4j.appender.A1.File=${log4jdir}/WEB-INF/logs/app1.log
来解决。

③ log4j在java的web项目中怎么用的,如何配置等等。。

在web.xml中添加配置:
<!-- 配置log4j配置文件的路径,可以是xml或 properties(此参数必须配)-->
下面使用了classpath 参数指定log4j.properties文件的位置,这样log4j的配置文件就不用非要放到src的下面:
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:config/log4j/log4j.properties</param-value>
</context-param>
使用spring的监听器,当应用启动时来读取log4j的配置文件
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>

④ java web项目配置了log4j后console不能打印出东西是为什么

log4j.rootLogger=DEBUG,A1,R
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
#log4j.appender.A1.layout.ConversionPattern=%m%n
log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS}-%m%n
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=c\://tsblog/TSB_SYSTEM_WEB.html
#log4j.appender.R.File=../logs/TSB_SYSTEM_WEB.log
log4j.appender.R.MaxFileSize=2000KB
log4j.appender.R.MaxBackupIndex=20
log4j.appender.R.layout=org.apache.log4j.HTMLLayout

#log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss}-%m%n

⑤ javaweb包里面怎么建包

javaweb包里面建包方法。
1、为软件项目新建一个目录名。
2、将jre、MySQL、Tomcat三套目录复制到主目录下,并创建logs目录。
3、将Tomcat或webapps目录下的无关应用程序项目删除。
4、启动MySQL,用root进入MySQL命令行,将无关数据库删除。
5、在logs目录中,创建应用程序日志目录。
6、记事本编辑配置文件dbproperties和log4jproperties,修正日志文件输出路径为相对路径,指向软件包中的日志目录。
7、制作启动bat后制作停止bat。
8、附加一份使用说明文件,注明软件使用方法就可以了。

⑥ 请问java中,log4j如何使用

把log4j的配置文件log4j.properties放到classes目录下。log4j.jar放到lib目录下。程序运行后,会自动装载log4j.properties。

程序中使用:

// 引入类。
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

// 初始化Log对象.
private Log log = LogFactory.getLog(BaseDAO.class);

在你的方法里面就可以使用log对象的方法了,比如: log.info(), log.debug(), log.warn(), log.error() 等等。

具体如何输出和输出信息级别,都在log4j.properties中配置。你可以到网上找log4j.properties中的内容。你从官网上下载的log4j中应该也有。

⑦ SpringBoot2.0 基础案例(02):配置Log4j2,实现不同环境日志打印

日志打印是了解Web项目运行的最直接方式,所以在项目开发中是需要首先搭建好的环境。

1、Log4j2特点

1)核心特点

相比与其他的日志系统,log4j2丢数据这种情况少;disruptor技术,在多线程环境下,性能高;并发的特性,减少了死锁的发生。

2)性能测试

2、日志打印之外观模式

每一种日志框架都有自己单独的API,要使用对应的框架就要使用其对应的API,增加应用程序代码和日志框架的耦合性。

《阿里巴巴Java开发手册》,其中有一条规范做了‘强制’要求:

SLF4J日志API

Java简易日志门面(Simple Logging Facade for Java,缩写SLF4J),是一套包装Logging 框架的界面程式,使用外观模式实现。

1、项目结构

2、不同环境的日志配置

使用最直接的方式,不同环境加载不同的日志配置。

1)开发环境配置

2)生产环境配置

3、Log4j2的配置文件

1、简单的测试程序

2、测试效果图

四、源代码地址

⑧ 怎样添加java的log4j添加到java项目中

首先,弄到log4j的jar包,maven工程配置以下依赖就行,或者,从阿里的maven仓库下载jar包,添加到工程的“build path”log4j log4j 1.2.17

然后,整一个log4j.properties,内容如下,然后把它放在src/main/java目录(也就是包所在的根目录)

1、普通java工程或spring工程

这是最常见的java工程类型,写demo用的多,把log4j.properties放在src/main/java目录(也就是包所在的根目录)就行了

2、spring mvc工程

web工程里用spring mvc构建的比较多了,把log4j.properties放在src/main/resources的conf目录(web工

程配置文件通常在resources或WEB-INF目录),编辑web.xml,添加

log4jConfigLocation classpath:/conf/log4j.properties org.springframework.web.util.Log4jConfigListener

3、普通web工程

没有了spring提供的listener加载log4j.properties,我们要怎么加载这个文件呢?同样,把log4j.properties

放在src/main/resources的conf目录,我们整一个servlet来加载

{ = 1L; publicvoidinit(ServletConfig config)throwsServletException { String prefix =this.getClass().getClassLoader().getResource("/").getPath(); String path = config.getInitParameter("log4j-path"); PropertyConfigurator.configure(prefix + path); } publicvoiddoGet(HttpServletRequest req, HttpServletResponse res)throwsIOException, ServletException {} publicvoiddoPost(HttpServletRequest req, HttpServletResponse res)throwsIOException, ServletException {} publicvoiddestroy() {} }

然后配置servlet随着web工程启动而初始化,编辑web.xml,添加

log4j com.xmyself.log4j.Log4jServlet log4j-path conf/log4j.properties 1

看着是不是和spring mvc的很像,甚至你也想到了,普通java工程没有指定log4j.properties的路径,那说明

log4j的jar包一定有一个默认的路径。另外,建议,log4j的配置放在第一个,因为后续加载其他组件就要开始使用日

⑨ java web项目中关于log4j的运用

1、2只要配置一个,不过:
1配置需要配合使用Spring
2配置需要自己写Log4jInitServlet

其实还有更简单的,只要把log4j.properties放在任意一个src目录下就可以了,什么额外的配置都不需要。

阅读全文

与javaweb配置log4j相关的资料

热点内容
网络流理论算法与应用 浏览:795
java和matlab 浏览:388
钉钉苹果怎么下app软件 浏览:832
php网站验证码不显示 浏览:859
铝膜构造柱要设置加密区吗 浏览:344
考驾照怎么找服务器 浏览:884
阿里云服务器如何更换地区 浏览:972
手机app调音器怎么调古筝 浏览:503
锐起无盘系统在服务器上需要设置什么吗 浏览:19
红旗出租车app怎么应聘 浏览:978
如何编写linux程序 浏览:870
吉利车解压 浏览:248
java输入流字符串 浏览:341
安卓软件没网怎么回事 浏览:785
dvd压缩碟怎么导出电脑 浏览:274
冒险岛什么服务器好玩 浏览:541
如何在服务器上做性能测试 浏览:793
命令序列错 浏览:259
javaif的条件表达式 浏览:576
手机app上传的照片怎么找 浏览:531