Java Hibernate代码不工作,如何修复?

Java Hibernate代码不工作,如何修复?,java,xml,hibernate,Java,Xml,Hibernate,在一个示例中,我的hibernate配置文件有一些未知问题。一个人给了我另一个要使用的配置文件,解决了旧的配置错误。之后,我删除了这些注释附近的代码-!-禁用缓存-!-UTF8到数据库-!-实体映射-现在我得到一个新错误。但它也引入了一个新的错误,如下所示。我怎么修理它 org.hibernate.cfg.annotations.Version <clinit> INFO: Hibernate Annotations 3.3.1.GA [main] INFO org.hibernat

在一个示例中,我的hibernate配置文件有一些未知问题。一个人给了我另一个要使用的配置文件,解决了旧的配置错误。之后,我删除了这些注释附近的代码-!-禁用缓存-!-UTF8到数据库-!-实体映射-现在我得到一个新错误。但它也引入了一个新的错误,如下所示。我怎么修理它

org.hibernate.cfg.annotations.Version <clinit>
INFO: Hibernate Annotations 3.3.1.GA
[main] INFO org.hibernate.cfg.Environment - Hibernate 3.3.2.GA
[main] INFO org.hibernate.cfg.Environment - hibernate.properties not found
[main] INFO org.hibernate.cfg.Environment - Bytecode provider name : javassist
[main] INFO org.hibernate.cfg.Environment - using JDK 1.4 java.sql.Timestamp handling
[main] INFO org.hibernate.cfg.Configuration - configuring from resource: /hibernate.cfg.xml
[main] INFO org.hibernate.cfg.Configuration - Configuration resource: /hibernate.cfg.xml
[main] INFO org.hibernate.cfg.Configuration - Configured SessionFactory: null
[main] INFO org.hibernate.dialect.Dialect - Using dialect: org.hibernate.dialect.MySQLDialect
Apr 17, 2013 3:10:39 AM org.hibernate.cfg.AnnotationBinder bindClass
INFO: Binding entity from annotated class: com.examscam.model.User
Apr 17, 2013 3:10:39 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFO: Bind entity com.examscam.model.User on table User
Apr 17, 2013 3:10:39 AM org.hibernate.cfg.AnnotationConfiguration secondPassCompile
INFO: Hibernate Validator not found: ignoring
[main] INFO org.hibernate.tool.hbm2ddl.SchemaExport - Running hbm2ddl schema export
[main] INFO org.hibernate.tool.hbm2ddl.SchemaExport - exporting generated schema to database
[main] INFO org.hibernate.connection.ConnectionProviderFactory - Initializing connection provider: org.hibernate.connection.C3P0ConnectionProvider
[main] INFO org.hibernate.connection.C3P0ConnectionProvider - C3P0 using driver: com.mysql.jdbc.Driver at URL: jdbc:mysql://127.0.0.1:3306/test
[main] INFO org.hibernate.connection.C3P0ConnectionProvider - Connection properties: {useUnicode=true, user=root, password=****, characterEncoding=UTF-8}
[main] INFO org.hibernate.connection.C3P0ConnectionProvider - autocommit mode: false
Exception in thread "main" java.lang.NoClassDefFoundError: com/mchange/v2/c3p0/DataSources
    at org.hibernate.connection.C3P0ConnectionProvider.configure(C3P0ConnectionProvider.java:176)
    at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:137)
    at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:79)
    at org.hibernate.tool.hbm2ddl.ManagedProviderConnectionHelper.prepare(ManagedProviderConnectionHelper.java:51)
    at org.hibernate.tool.hbm2ddl.SchemaExport.execute(SchemaExport.java:252)
    at org.hibernate.tool.hbm2ddl.SchemaExport.create(SchemaExport.java:211)
    at com.examscam.model.User.persist(User.java:48)
    at com.examscam.model.User.main(User.java:55)
Caused by: java.lang.ClassNotFoundException: com.mchange.v2.c3p0.DataSources
    at java.net.URLClassLoader$1.run(Unknown Source)
    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
XML-

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<!-- Generated by MyEclipse Hibernate Tools.                   -->
<hibernate-configuration>

    <session-factory>
        <property name="dialect">
            org.hibernate.dialect.MySQLDialect
        </property>
        <property name="connection.url">
            correct url
        </property>
        <property name="connection.username">root</property>
        <property name="connection.password">password</property>
        <property name="connection.driver_class">
            com.mysql.jdbc.Driver
        </property>

    </session-factory>

</hibernate-configuration>
将此jar添加到类路径

它与com.mchange.v2.c3p0.DataSources类似。该类不在类路径中。

将该jar添加到类路径中


它与com.mchange.v2.c3p0.DataSources类似。该类不在类路径中。

原因是项目库中没有c3p0.jar,请将zip文件中的c3p0-0.9.x.jar放入项目库目录中。没问题。

原因是您的项目库中没有c3p0.jar,请将zip文件中的c3p0-0.9.x.jar放入项目库目录。没问题。

注意更新版本的c3p0,我下载了最新版本的c3p0-0.9.5-pre9,我被其他错误卡住了几个小时,比如:

org.apache.catalina.core.StandardWrapperValve invoke GRAVE: Servlet.service() 
for servlet default threw exception java.lang.ClassNotFoundException: 
java.lang.AutoCloseable at org.apache.catalina.loader.WebappClassLoader.loadClass


我建议下载:并将所有jar导入到您的项目中。

注意更新版本的c3p0,我下载了最新版本的c3p0-0.9.5-pre9,我在其他错误中被困数小时,如:

org.apache.catalina.core.StandardWrapperValve invoke GRAVE: Servlet.service() 
for servlet default threw exception java.lang.ClassNotFoundException: 
java.lang.AutoCloseable at org.apache.catalina.loader.WebappClassLoader.loadClass


我建议下载:并将所有jar导入到您的项目中。

我刚刚完成了一个干净的构建,这个问题消失了。在eclipse堆错误后发生在我身上。我不得不重新运行eclipse,终止tomcat进程。

我刚刚完成了一个干净的构建,这个问题就消失了。在eclipse堆错误后发生在我身上。我不得不重新运行eclipse,终止tomcat进程。

似乎缺少一些依赖项jar。正确的url是真实的url。所以不用担心,我的白痴课本上说只需要3-4罐。到目前为止,我已经在我的项目中添加了至少1000个罐子,但我仍然得到了惊喜。c3p0-0.9.2.1丢失了。修正了现在愚蠢的10行休眠代码的工作。如果情况是这样的,我为什么不使用其他东西呢……糟糕的xml文件,缺少jar等等。似乎缺少一些依赖jar。正确的url是真实的url。所以不用担心,我的白痴课本上说只需要3-4罐。到目前为止,我已经在我的项目中添加了至少1000个罐子,但我仍然得到了惊喜。c3p0-0.9.2.1丢失了。修正了现在愚蠢的10行休眠代码的工作。如果情况是这样的,我为什么不使用其他东西呢……糟糕的xml文件、丢失的JAR等等。除了糟糕的xml还有其他选择吗?一个空间错误和一个完整的应用程序可能会让人大吃一惊。该死,没有。你将习惯于多练习。有什么替代糟糕的xml的方法吗?一个空间错误和一个完整的应用程序可能会让人大吃一惊。该死,没有。多练习,你会习惯的。