按理说,假设Hibernate不依附于SSH执行,像《【Struts2+Hibernate3+Spring3】利用SSH整合,完毕打印用户表,用户登录、注冊、改动password系统》(点击打开链接)一样。把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,复制到对应的Javaproject载入相同能够执行了。可是为什么没有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 Javaproject。

因为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 Javaproject。

此时。独立的Hibernate3.x已经能够执行了,只是还没有完,执行时候还会出现例如以下的log4j:WARN Please initialize the log4j system properly警告:

要解决问题很easy,建立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最终能够自己独立执行了,真的是晕死了……

【Hibernate】Hibernate3.x独立执行时的Failed to load class "org.slf4j.impl.StaticLoggerBinder"错误的更多相关文章

  1. Failed to load class “org.slf4j.impl.StaticLoggerBinder”

    背景: 在配置使用Hibernate的时候遇到了这个问题, 然后就很头疼. SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerB ...

  2. 【转载】Failed to load class "org.slf4j.impl.StaticLoggerBinder".问题解决

    在进行hibernate配置好后运行测试类的时候出现: SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder" ...

  3. Mina 中遇到SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder"

    SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".SLF4J: Defaulting to no-op ...

  4. spring quartz 定时任务“Failed to load class "org.slf4j.impl.StaticLoggerBinder”“Checking for available updated version of Quartz”

    Failed to load class "org.slf4j.impl.StaticLoggerBinder 需要slf4j-api.jar.slf4j-log4j12.jar Check ...

  5. eclipse maven SLF4J: Failed to load class org.slf4j.impl.StaticLoggerBinder

    现象:运行eclipse maven build,console 有红色日志如下: SLF4J: Failed to load class "org.slf4j.impl.StaticLog ...

  6. Kafka生产者案例报警告SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".

    一.SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". 这个报警告的原因简单来说时因为slf4j的版本 ...

  7. 解执行maven项目出现 SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder”. error

    最近再弄maven项目,运行起来没有问题,但是Console控制台会报错,比如说如下的问题异常提示: 由此我们可以看出,报出错误的地方主要是slf4j的jar包,而故障码中“Failed to loa ...

  8. java项目跑起来报错: 程序报 SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". 错误

    问题: 我用的是ssm框架结合, 利用junit测试的时候抛出 SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder& ...

  9. kafka 报Failed to load class "org.slf4j.impl.StaticLoggerBinder".[z]

    转:http://blog.chinaunix.net/uid-25135004-id-4172954.html 测试kafka    producer发送消息 和  consumer 接受消息报错 ...

随机推荐

  1. 面向对象设计原则 开放封闭原则(Open Closed Principle)

    开放封闭原则(OCP,Open Closed Principle) 开放封闭原则是所有面向对象原则的核心. 软件设计本身所追求的目标就是封装变化.降低耦合,而开放封闭原则正是对这一目标的最直接体现. ...

  2. 02-c#基础之01-基础语法(三)

    1.赋值运算符:"=" =:表示赋值的意思,表示把等号右边的值,赋值给等号左边的变量. 由等号连接的表达式称之为赋值表达式. 注意:每个表达式我们都可以求解除一个定值,对于赋值表达 ...

  3. vijos p1876 bfs+map

    题意: Xiaodao是一位喜欢参加ACM比赛的孩子. 所谓ACM比赛, 是一种团队比赛. 每一次比赛, 每队需要由恰好三位选手组成. 现在, Xiaodao希望组建一支新的队伍, 在这之前, 他需要 ...

  4. HDU 4217 Hamming Distance 随机化水过去

    Hamming Distance Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others) ...

  5. 1、安装Redis的PHP扩展

    1.安装Redis的PHP扩展 1.1 安装phpize yum install php-devel 1.2 下载扩展源码包,直接用wget #wget下载github上的文件 wget https: ...

  6. ThinkPHP实现登录限制时__construct和_initialize的区别

    ThinkPHP支持两种构造方法:  __construct和_initialize(ThinkPHP内置的构造方法). 测试URL为:  http://oa.com/index.php/Admin/ ...

  7. Leetcode 树 Populating Next Right Pointers in Each Node II

    本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie Populating Next Right Pointers in Each Node II ...

  8. Andriod 环境配置以及第一个Android Application Project

    Android 入门学习心得-----------------环境配置以及一些文件的理解      Android 开发似乎早已经开始疯狂起来了,今天,也开始学习了Android的开发.首先,必须要面 ...

  9. C#关键字var是什么,在何种情况下使用

    从.NET 3.0开始,在方法内部可以使用var关键字声明局部变量.var关键字到底是什么?在何种情况下使用呢? □ var关键字用来隐式地声明一个数据类型,变量类型是在编译期确定的,而不是在运行时确 ...

  10. 转:如何解决“My mac 64-bit”问题

    童鞋们都知道Xcode会根据当前SDK在Run按钮旁边的选项栏中显示适合的Simulator供开发者选择,如下图: 但是有时候则错误显示“My mac 64-bit” ,这个明显不是我们想要的,如下图 ...