在文件前面加这一段试试<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 2.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd">

解决方案 »

  1.   

    配置文件解析错误楼上的是2.0的dtd,如果不行在hibernate.cfg.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">
      

  2.   

    我加了,先前配置里面还有个路径问题~~我以其都改了~~结果还是报错~~不过错误不一样了
    log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).
    log4j:WARN Please initialize the log4j system properly.
    Exception in thread "main" org.hibernate.MappingException: could not instantiate id generator
    at org.hibernate.id.IdentifierGeneratorFactory.create(IdentifierGeneratorFactory.java:97)
    at org.hibernate.mapping.SimpleValue.createIdentifierGenerator(SimpleValue.java:152)
    at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:182)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1176)
    at hippo.zeng.base._BaseRootDAO.initialize(_BaseRootDAO.java:54)
    at hippo.zeng.base._BaseRootDAO.initialize(_BaseRootDAO.java:41)
    at hippo.zeng.base._BaseRootDAO.initialize(_BaseRootDAO.java:32)
    at test.Test.main(Test.java:12)
    Caused by: org.hibernate.MappingException: could not interpret id generator strategy: vm
    at org.hibernate.id.IdentifierGeneratorFactory.getIdentifierGeneratorClass(IdentifierGeneratorFactory.java:108)
    at org.hibernate.id.IdentifierGeneratorFactory.create(IdentifierGeneratorFactory.java:91)
    ... 7 more这是怎么回事啊??郁闷死了~~~还有~~~为什么我用那个插件的添加到MAP REFERENCE的时候
    <?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">就消失了喃???我数据库的ADMIN表有三个字段ID NAME PASSWORD id是字段编号
      

  3.   

    ID自动编号用"native",在*.hbm.xml改一下,改成<generator class="native" />.楼主试试,
      

  4.   

    现在可以读取配置文件了 只是id生成类实例化错误你的映射文件的里面的 <generator class="native" /> 照楼上的改估计你是用了MSSQL不支持的sequence的主键生成方式
      

  5.   

    把你的*.hbm.xml 贴出来吧也有可能是因为你的表是手动生成的如果没有设置相应的条件的化 也有可能报这样的错误
      

  6.   

    各位大侠,我都要疯掉了~~~我昨天完全重新作一个实验例子,按照各位说的,需要注意的~~表是手动健的~~~
    hibernate.cfg.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">

    <hibernate-configuration>
    <session-factory>
    <!-- local connection properties -->
    <property name="hibernate.connection.url">
    jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=jsxs
    </property>
    <property name="hibernate.connection.driver_class">
    com.microsoft.jdbc.sqlserver.SQLServerDriver
    </property>
    <property name="hibernate.connection.username">sa</property>
    <property name="hibernate.connection.password">admin</property>
    <!-- property name="hibernate.connection.pool_size"></property -->
    <!-- dialect for Microsoft SQL Server -->
    <property name="dialect">
    org.hibernate.dialect.SQLServerDialect
    </property>
    <property name="hibernate.show_sql">false</property>
    <!--
    <property name="hibernate.transaction.factory_class">
    org.hibernate.transaction.JDBCTransactionFactory
    </property>
    -->
    <mapping resource="hippo/zeng/Admin.hbm.xml" />
    </session-factory>
    </hibernate-configuration>admin.hbm.xml
    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC
    "-//Hibernate/Hibernate Mapping DTD//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" ><hibernate-mapping package="hippo.zeng">
    <class
    name="Admin"
    table="Admin"
    >
    <id
    name="Id"
    type="integer"
    column="id"
    >
    <generator class="native"/>
    </id> <property
    name="Name"
    column="name"
    type="string"
    not-null="false"
    length="50"
    />
    <property
    name="Password"
    column="password"
    type="string"
    not-null="false"
    length="50"
    />
    </class>
    </hibernate-mapping>package we;import hippo.zeng.Admin;
    import hippo.zeng.dao.AdminDAO;
    import hippo.zeng.dao._RootDAO;public class Wetest {

    public static void main(String args[]){
    _RootDAO.initialize();

    AdminDAO admindao = new AdminDAO();

    Admin admin = new Admin();

    admin.setName("hippo");

    admin.setPassword("hippo");

    admindao.save(admin);


    }}
    抱错log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).
    log4j:WARN Please initialize the log4j system properly.手动键的表需要在哪设置啊 ?????
      

  7.   

    在src下先建个log4j.properties吧,里面写:log4j.rootLogger = info, debug
    log4j.logger.org.hibernate.cache=info,stdout
    log4j.logger.org.hibernate.type=info,stdout
    log4j.logger.org.hibernate.SQL=info,stdout
    ##log4j.logger.org.hibernate=info,stdoutlog4j.additivity.org.hibernate.cache=false
    log4j.additivity.org.hibernate.type=false
    log4j.additivity.org.hibernate.SQL=false#----------------------------------------------------------------------------
    # Console Root Log
    #----------------------------------------------------------------------------
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.Target=System.out
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
    #----------------------------------------------------------------------------到时候会在console打出hibernate的日志内容。