Java 通过Hibernate在数据库上保存数据时出现的问题
我正试图通过Java中的Hibernate将数据保存到数据库中。但是当ı运行代码时,ı遇到了很多问题。有人能帮我吗? 谢谢 我的代码:Java 通过Hibernate在数据库上保存数据时出现的问题,java,hibernate,slf4j,Java,Hibernate,Slf4j,我正试图通过Java中的Hibernate将数据保存到数据库中。但是当ı运行代码时,ı遇到了很多问题。有人能帮我吗? 谢谢 我的代码: 问题: SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. Exception in thread "main" j
问题:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Exception in thread "main" java.lang.NoClassDefFoundError:
org/slf4j/impl/StaticLoggerBinder
at org.slf4j.LoggerFactory.getSingleton(LoggerFactory.java:223)
at org.slf4j.LoggerFactory.bind(LoggerFactory.java:120)
at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:111)
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:269)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:242)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:255)
at org.hibernate.cfg.Configuration.<clinit>(Configuration.java:152)
at org.ultimania.model.Test.main(Test.java:14)
Caused by: java.lang.ClassNotFoundException: org.slf4j.impl.StaticLoggerBinder
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 8 more
SLF4J:未能加载类“org.SLF4J.impl.StaticLoggerBinder”。
SLF4J:参见http://www.slf4j.org/codes.html#StaticLoggerBinder 详情请参阅。
线程“main”java.lang.NoClassDefFoundError中出现异常:
org/slf4j/impl/StaticLoggerBinder
位于org.slf4j.LoggerFactory.getSingleton(LoggerFactory.java:223)
位于org.slf4j.LoggerFactory.bind(LoggerFactory.java:120)
在org.slf4j.LoggerFactory.performinization上(LoggerFactory.java:111)
位于org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:269)
位于org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:242)
位于org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:255)
位于org.hibernate.cfg.Configuration(Configuration.java:152)
位于org.ultimania.model.Test.main(Test.java:14)
原因:java.lang.ClassNotFoundException:org.slf4j.impl.StaticLoggerBinder
位于java.net.URLClassLoader$1.run(未知源)
位于java.security.AccessController.doPrivileged(本机方法)
位于java.net.URLClassLoader.findClass(未知源)
位于java.lang.ClassLoader.loadClass(未知源)
位于sun.misc.Launcher$AppClassLoader.loadClass(未知源)
位于java.lang.ClassLoader.loadClass(未知源)
... 8个以上
如果您缺少一个库,请下载slf4j罐子,然后将罐子放在您的卡扣中。
如果我没有弄错的话,slf4j api是与hibernate一起发布的,只需将它和slf4j simple添加到应用程序的类路径中即可。hibernate现在使用simple Logging Facade for Java(slf4j),正如其名称所示,它是各种日志框架实现(例如Java.util.Logging、log4j、logback)的门面。由于使用一个或另一个取决于用户,因此用户可以将日志框架和SLF4J“”(将SLF4J与实现“绑定”在一起的jar)的jar放在类路径上。如果slf4j绑定丢失,slf4j将输出以下警告消息
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
这里的好处是错误提供了一个自我解释的链接。那么,你有没有看到更多的细节?我将其粘贴到下面以备记录:
未能加载类org.slf4j.impl.StaticLoggerBinder
当
org.slf4j.impl.StaticLoggerBinder
类无法加载到内存中。
当没有合适的SLF4J时会发生这种情况
在类上找不到绑定
路径放置其中一个(且仅一个)
slf4j-nop.jar,slf4j-simple.jar,
slf4j-log4j12.jar、slf4j-jdk14.jar或
类路径上的logback-classic.jar
应该解决这个问题
您可以从下载SLF4J绑定
这个项目
信息非常清楚:您需要添加一个SLF4J。目前,我的建议是使用slf4j-simple.jar(它将所有事件输出到System.err
)。从上面给出的链接获取jar,并将其添加到应用程序的类路径中。如果要进行更高级的日志记录,请稍后更改此选项
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.