频道栏目
首页 > 数据库 > Sybase > 正文
【Hibernate】Hibernate3.x独立运行时的Failedtoloadclass"org.slf4j.impl.StaticLoggerBinder"错误
2015-06-29 10:26:41         来源:编程记录  
收藏   我要投稿

按理说,如果Hibernate不依附于SSH运行,像《【Struts2+Hibernate3+Spring3】利用SSH整合,完成打印用户表,用户登录、注册、修改密码系统》(点击打开链接)一样,把hibernate-distribution-3.6.10.Final解压之后,把根目录的hibernate3.jar,hibernate-distribution-3.6.0.Final\lib\required下的所有jar,hibernate-distribution-3.6.0.Final\lib\jpa下的所有jar也就是那个hibernate-jpa-2.0-api-1.0.1.Final.jar,hibernate-distribution-3.6.0.Final\lib\optional\c3p0下的所有包,也就是那个c3p0-0.9.1.jar,拷贝到相应的Java工程加载同样可以运行了,但是为什么没有Spring与Struts2的支持,就会出现如下图的,Failed to load class "org.slf4j.impl.StaticLoggerBinder"错误呢?

\

这个问题在Hibernate4.x中没有,可能意识到自己这样是不对的,在Hibernate3.x中,Hibernate使用SLF4J API这个接口记录日志,但是在Hibernate的lib中,却没有提供Log4J的包,都不知道在想甚的,自己用了的lib包因为害怕与其它框架的日志记录包冲突却不提供,导致自己无法独立运行!

因此,我们要自己补充SLF4J API这个接口。

具体是打开SLF4J官方网站(点击打开链接),下载:

\

解压之后,如下图结构,版本号没问题,取走其中的slf4j-log4j12-1.7.12.jar,加载到独立运行的Hibernate3.x Java工程。<喎"/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+PGltZyBzcmM9"/uploadfile/Collfiles/20150629/20150629100722355.png" alt="\">

由于slf4j像Hibernate兼容各种连接Mysql,Orcale等数据库连接jar包的接口一样,只是一个兼容各种生成Java日志jar包。还要下载一个真正工作的日志jar包,这里使用最大众的log4j,虽然平时我们一般都不会记录日志的了……打开Apache的官网(点击打开链接)如下图,选择log4j-1.2.17.zip(Windows)或者log4j-1.2.17.tar.gz(Linux)。

\

解压之后,把apache-log4j-1.2.17下的log4j-1.2.17.jar,同样加载到独立运行的Hibernate3.x Java工程。

\

此时,独立的Hibernate3.x已经可以运行了,不过还没有完,运行时候还会出现如下的log4j:WARN Please initialize the log4j system properly警告:

\

要解决这个问题非常简单,建立LOG4J 的配置文件即可。如下图在src目录下创建配置文件,右击src文件夹,选择菜单New>File,文件名输入log4j.properties,

\

在里面写入如下内容:

log4j.rootLogger=WARN, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
此时,Hibernate3.x终于可以自己独立运行了,真的是晕死了……

点击复制链接 与好友分享!回本站首页
相关TAG标签 错误
上一篇:菜鸟的mongoDB学习---(五)MongoDB的limit、skip、sort方法
下一篇:【Hibernate】Hibernate的多表查询
相关文章
图文推荐
点击排行

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站