问答详情
源自:1-9 创建对象-关系映射文件和数据库

Unknown entity

org.hibernate.MappingException: Unknown entity: com.xxxx.enity.xxx  按照视频写,老这个问题

提问者:zhuifengtu 2016-04-22 22:32

个回答

  • Hyazinthen
    2016-04-23 12:10:23
    已采纳

    Configuration config = new Configuration().configure().addClass(Students.class);

    在config()后面加一个addClass(Students.class)

    5.1.0版的hibernate直接配置hbm.xml就不能识别,我也有这个问题


  • zhuifengtu
    2016-10-04 00:01:35

    其实我估计大家的问题也是和我一样出在这行代码:

    final StandardServiceRegistry registry = new StandardServiceRegistryBuilder().configure().build(); 


    //其中 new StandardServiceRegistryBuilder().configure() 这里是默认装载(配置)"hibernate.cfg.xml"这个文件,当然你也可以修改这个文件名称,比如你保存的.cfg.xml文件名为"myHibernate.cfg.xml",那么就在configure()这歌方法里传入"myHibernate.cfg.xml"这个参数就可以了(如下)。

    //final StandardServiceRegistry registry = new StandardServiceRegistryBuilder().configure("myHibernate.cfg.xml").build(); 

  • FloatingShuYin
    2016-09-04 20:47:12

    真是一个字母一个字母的对啊 就是没错  就是跑不起来 就是找不到实体 好痛苦

  • FloatingShuYin
    2016-09-04 20:45:57

    我查了半个小时 心态炸了 还好来问答模板看了看 不然我就砸电脑了

  • zhuifengtu
    2016-04-23 18:41:12

     我查阅了hibernate document,在里面扒到了一种可行的办法(以下代码略加修改了一下document里,原始代码看图片):

    public static SessionFactory getSessionFactory() throws Exception {

    // A SessionFactory is set up once for an application!

    final StandardServiceRegistry registry = new StandardServiceRegistryBuilder()

    .configure() // configures settings from hibernate.cfg.xml

    .build();

    try {

    sessionFactory = new MetadataSources( registry ).buildMetadata().buildSessionFactory();

    }

    catch (Exception e) {

    // The registry would be destroyed by the SessionFactory, but we had trouble building the SessionFactory

    // so destroy it manually.

    StandardServiceRegistryBuilder.destroy( registry );

    }

    return sessionFactory;

    }

    http://img.mukewang.com/571b510e0001f08321541234.jpg