网站首页 新闻首页 网页设计图形动画软件编程网站开发办公软件操作系统数据库网络技术认证考试范文资料黑客攻防 书籍教程 进入论坛

20080302日志(log4j简单配置和一些属性说明)

http://www.diybl.com/ 2008-3-3  网络 点击:  [ 评论 ]
文章搜索:    【点击打包该文章】

过程:
首先编写了HibernateUtil类,该类用于简化SessionFactory的操作和启动hibernate


package com.lucifer.hibernate.util;

import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

/**
 * <p>Title: hibernate util</p>
 * <p>Description: 操作SessionFactory类,启动hibernate</p> 
 * <p>Copyright: 2008-2010</p>
 * <p>Company: </p>
 * 
@author lucifer
 * 
@version 1.0
 
*/


public class HibernateUtil 
{
    
private static final SessionFactory sessionFactory;
    
    
static
    
{
        
try
        
{
            
//根据hibernate.cfg.xml创建SessionFactory
            sessionFactory = new Configuration().configure().buildSessionFactory();
        }
catch(Throwable ex)
        
{
            System.err.println(
"Initial SeesionFactory creation failed"+ex);
            
throw new ExceptionInInitializerError(ex);
        }

    }


    
public static SessionFactory getSessionFactory() {
        
return sessionFactory;
    }

}

这个没什么好说的,基本依样画葫芦。在类里直接写static{....}这样的写法俺是第一次见到,估计是段在该类被加载时就肯定会被调用的代码。catch(Throwable ex)这样的写法以前也没用过,自己写的时候用Exception ex更多一些,今天还特地去查了下API,发现Throwable是Exception的父类,汗一下以前一直不知道。。
Factory工厂方法一直在用,但是不知道为什么要用,适合哪些场合,这个需要了解下。

还配置了LOG4J
log4j的配置很容易,把log4j.jar拷到LIB下,然后写一个log4j.properties配置文件就OK了


#输出到stdout和R
log4j.rootCategory=INFO, stdout , R
#stdout输出到控制台
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
#定义stdout的layout
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
#定义输出信息格式,如果使用pattern布局就要指定的打印信息的具体格式ConversionPattern
log4j.appender.stdout.layout.ConversionPattern=[AHT] %p [%t] %C.%M(%L) | %m%n
#定义R输出为日志文件
log4j.appender.R=org.apache.log4j.DailyRollingFileAppender
#R输出路径
log4j.appender.R.File=g:eclipse3.2workspaceant-hibernate-testAHT.log

log4j.appender.R.layout=org.apache.log4j.PatternLayout

log4j.appender.R.layout.ConversionPattern=%d-[TS] %p %t %c - %m%n
#指定com.neusoft包下的所有类的等级为DEBUG
log4j.logger.com.neusoft=DEBUG

#EHCACHE
#log4j.logger.com.opensymphony.oscache=ERROR
#log4j.logger.net.sf.navigator=ERROR

#struts
#log4j.logger.org.apache.commons=ERROR
#log4j.logger.org.apache.struts=WARN

log4j.logger.org.displaytag=ERROR

#spring
#log4j.logger.org.springframework=DEBUG

log4j.logger.com.ibatis.db=WARN

log4j.logger.org.apache.velocity=FATAL

log4j.logger.com.canoo.webtest=WARN

#hibernate
log4j.logger.org.hibernate.ps.PreparedStatementCache=WARN
log4j.logger.org.hibernate=DEBUG

log4j.logger.org.logicalcobwebs=WARN
以上配置文件参考了大使馆馆长的log4j配置一文,并进行了一些整理和修改
http://blog.csdn.net/djhyoo/archive/2007/06/09/1645525.aspx这个是原文地址
解答:
今日暂无
疑问:
1、static{..}代码是否在类被加载时执行,需验证
2、factory方法用途,用法,适用范围
感想:
今天好忙,早上自学,下午自虐(肉体+心灵 T_T),晚上陪吃饭,吃完回家写日志和简历,等下还要。。。
忙的跟狗一样。。


文章整理:DIY部落 http://www.diybl.com (本站)   【点击打包该文章】
如果图片或页面不能正常显示请点击这里 站内搜索:   

文章评论

请您留言

 

最新新闻