没有数据库的JDBC驱动程序包
比如Oracle的Classes12.jar
MySql的Mysql-connetiocn.jar

解决方案 »

  1.   

    除楼上外
    Person.hbm.xml也配置错误。
      

  2.   

    mysql-connector-java-3.0.14-production-bin.jar
    这是我MySQL的驱动,我做Struts一直用它啊~~~麻烦说明白点啊~~
    还有我bernate.cfg.xml里面的路径为org\gjt\mm\mysql\Driver.class开始写错了。mofeir(莫飞)你能不能说明白点,我也刚学2天书~~
       Person.hbm.xml错误在哪里?
      

  3.   

    看错误信息,不是驱动程序找不到。
    似乎要你自己提供jdbc连接,但你没提供,把出错的代码打印出来看看。
      

  4.   

    先检查一下jdbc驱动程序在不在你的classpath里,
    还有jdbc:mysql://localhost/Temp 这个mysql的url是这样子的吗?
    我记得好象是这样的吧 
    jdbc:mysql://localhost:3306/Temp 
    还有
    hbm.xml文件能用hibernatesync生成就用它生成吧,或者用middlegen生成,这两个都能作为eclipse的插件,用起来比较方便。
    省事很多,而且你是单表操作
      

  5.   

    驱动:org.gjt.mm.mysql.Driver
    URL:jdbc:mysql://<machine_name><:port>/dbname
    注:machine_name:数据库所在的机器的名称;
          port:端口号,默认3306
    解决mysql 乱码问题
    URL=jdbc:mysql://localhost:3306/mysql?useUnicode=true&characterEncoding=GBK
      

  6.   

    先谢谢各位DX不吝赐教,谢谢!报错:
    09:22:15,390  INFO Environment: Hibernate 2.1.209:22:15,390  INFO Environment: hibernate.properties not found09:22:15,468  INFO Environment: using CGLIB reflection optimizer09:22:15,500  INFO Configuration: processing one-to-many association mappings09:22:15,500  INFO Configuration: processing one-to-one association property references09:22:15,500  INFO Configuration: processing foreign key constraints09:22:15,640  WARN SettingsFactory: No dialect set - using GenericDialect: The dialect was not set. Set the property hibernate.dialect.09:22:15,656  INFO Dialect: Using dialect: net.sf.hibernate.dialect.GenericDialect09:22:15,656  INFO SettingsFactory: Use outer join fetching: false09:22:15,656  WARN UserSuppliedConnectionProvider: No connection properties specified - the user must supply JDBC connections09:22:15,671  INFO TransactionManagerLookupFactory: No TransactionManagerLookup configured (in JTA environment, use of process level read-write cache is not recommended)09:22:15,671  INFO SettingsFactory: Use scrollable result sets: false09:22:15,671  INFO SettingsFactory: Use JDBC3 getGeneratedKeys(): false09:22:15,671  INFO SettingsFactory: Optimize cache for minimal puts: false09:22:15,671  INFO SettingsFactory: Query language substitutions: {}09:22:15,671  INFO SettingsFactory: cache provider: net.sf.ehcache.hibernate.Provider09:22:15,828  INFO Configuration: instantiating and configuring caches09:22:16,234  INFO SessionFactoryImpl: building session factory09:22:17,046  INFO SessionFactoryObjectFactory: no JNDI name configuredjava.lang.UnsupportedOperationException: The user must supply a JDBC connection at net.sf.hibernate.connection.UserSuppliedConnectionProvider.getConnection(UserSuppliedConnectionProvider.java:32) at net.sf.hibernate.impl.BatcherImpl.openConnection(BatcherImpl.java:278) at net.sf.hibernate.impl.SessionImpl.connect(SessionImpl.java:3264) at net.sf.hibernate.impl.SessionImpl.connection(SessionImpl.java:3244) at net.sf.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:40) at net.sf.hibernate.transaction.JDBCTransactionFactory.beginTransaction(JDBCTransactionFactory.java:19) at net.sf.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:2195) at Temp.Client2.main(Client2.java:28)
    Exception in thread "main" 代码:配置文件见上面:
    Person.javapackage Temp;public class Person {
      private String id;
      private String name;
      private String address;  public void setId(String value) {
        this.id = value;
      }  public String getId() {
        return id;
      }  public void setName(String value) {
        this.name = value;
      }  public String getName() {
        return name;
      }  public void setAddress(String value) {
        this.address = value;
      }  public String getAddress() {
        return address;
      }
    }Client1.java
    package Temp;
    import net.sf.hibernate.Session;
    import net.sf.hibernate.Transaction;
    import net.sf.hibernate.SessionFactory;
    import net.sf.hibernate.cfg.Configuration;
    import net.sf.hibernate.tool.hbm2ddl.SchemaExport;/**
     *本类只是用来创建表的,并不往表内部插入任何数据,并且只能使用一次,否则会删除已有的表的
     */
    public class Client1 {
      private static SessionFactory sessionFactory;  public static void main(String[] args) throws Exception {
        Configuration conf = new Configuration().addClass(Person.class);//第一次运行时用来在数据库中创建dbExport表
    //并且把sql语句输出到txt文件用的
        SchemaExport dbExport = new SchemaExport(conf);
        dbExport.setOutputFile("sql.txt");
        dbExport.create(true, true);
      }
    }Client2.java
    package Temp;
    import net.sf.hibernate.Session;
    import net.sf.hibernate.Transaction;
    import net.sf.hibernate.SessionFactory;
    import net.sf.hibernate.cfg.Configuration;
    import net.sf.hibernate.tool.hbm2ddl.SchemaExport;public class Client2 {
      private static SessionFactory sessionFactory;  public static void main(String[] args) throws Exception {
        Configuration conf = new Configuration();
        sessionFactory = conf.buildSessionFactory();
        Session s = sessionFactory.openSession();
        Transaction t = s.beginTransaction();    Person yuj = new Person();
        yuj.setName("john");
        yuj.setAddress("上海");    Person x = new Person();
        x.setName("zhaoyh");
        x.setAddress("上海");
        s.save(yuj); 
        s.save(x);     t.commit();
        s.close();
      }
    }代码就这么多,jdbc驱动URL为:
            <property name="dialect">net.sf.hibernate.dialect.MySQLDialect</property>
            <property name="connection.driver_class">org.gjt.mm.mysql.Driver</property>
            <property name="connection.url">jdbc:mysql://localhost:3306/mysql?useUnicode=true&characterEncoding=GBK</property>
      

  7.   

    jdbc驱动URL为:
            <property name="dialect">net.sf.hibernate.dialect.MySQLDialect</property>
            <property name="connection.driver_class">org.gjt.mm.mysql.Driver</property>
            <property name="connection.url">jdbc:mysql://localhost:3306/Temp</property>
      

  8.   

    陈磊备份,这路径不好易出错。
    Why 路进非要起个中文名字呢?不是自找麻烦吗?
      

  9.   

    也对,我把路径改称中文的了~~我用的IDE是JBuilder2005
    报错~~
    D:\Borland\JBuilder2005\jdk1.4\bin\javaw -classpath "C:\Documents and Settings\Administrator\jbproject\TestHXML\classes;F:\backup\useinJbuilder\hibernatelib;F:\backup\useinJbuilder\hibernate2.jar;F:\backup\useinJbuilder\logging-log4j-1.2.11.zip;F:\backup\useinJbuilder\mysql-connector-java-3.0.14-production-bin.jar;D:\Borland\JBuilder2005\jdk1.4\jre\bin\JBuilder2005_c.jar;D:\Borland\JBuilder2005\jdk1.4\jre\javaws\javaws.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\charsets.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\ext\dnsns.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\ext\ldapsec.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\ext\localedata.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\ext\sunjce_provider.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\im\indicim.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\im\thaiim.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\jce.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\jsse.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\plugin.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\rt.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\sunrsasign.jar;D:\Borland\JBuilder2005\jdk1.4\lib\dt.jar;D:\Borland\JBuilder2005\jdk1.4\lib\htmlconverter.jar;D:\Borland\JBuilder2005\jdk1.4\lib\tools.jar"  Temp.Client2 
    java.lang.NoClassDefFoundError: org/dom4j/Attribute at Temp.Client2.main(Client2.java:13)Exception in thread "main"
      

  10.   

    路径已经改了:
    报错~~
    D:\Borland\JBuilder2005\jdk1.4\bin\javaw -classpath "C:\Documents and Settings\Administrator\jbproject\TestHB\classes;F:\backup\useinJbuilder\hibernatelib;F:\backup\useinJbuilder\hibernate2.jar;F:\backup\useinJbuilder\mysql-connector-java-3.0.14-production-bin.jar;D:\Borland\JBuilder2005\jdk1.4\jre\bin\JBuilder2005_c.jar;D:\Borland\JBuilder2005\jdk1.4\jre\javaws\javaws.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\charsets.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\ext\dnsns.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\ext\ldapsec.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\ext\localedata.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\ext\sunjce_provider.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\im\indicim.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\im\thaiim.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\jce.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\jsse.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\plugin.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\rt.jar;D:\Borland\JBuilder2005\jdk1.4\jre\lib\sunrsasign.jar;D:\Borland\JBuilder2005\jdk1.4\lib\dt.jar;D:\Borland\JBuilder2005\jdk1.4\lib\htmlconverter.jar;D:\Borland\JBuilder2005\jdk1.4\lib\tools.jar"  Temp.Client2 java.lang.NoClassDefFoundError: org/dom4j/Attribute at Temp.Client2.main(Client2.java:13)Exception in thread "main"
      

  11.   

    又解决了一点问题,现在的问题又是java.lang.UnsupportedOperationException: The user must supply a JDBC connection~~
    我快晕了~~