在hibernate中将映射类添加为单独的xml文件 [英] Add mapping classes as a separate xml file in hibernate

查看:114
本文介绍了在hibernate中将映射类添加为单独的xml文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何将我的hibernate映射类添加到cfg文件中作为单独的xml文件。



这是我的hibernate配置文件。

 < hibernate-结构> 
< session-factory>
<! - 数据库连接设置 - >
< property name =connection.driver_class> com.mysql.jdbc.Driver< / property>
< property name =connection.url> jdbc:mysql:// localhost:3306 / test



 < property name =connection.username> root< / property> 
< property name =connection.password> rot @ pspl#12< / property>

<! - JDBC连接池(使用内置) - >
< property name =connection.pool_size> 1< / property>

<! - - SQL方言 - >
< property name =dialect> org.hibernate.dialect.MySQLDialect< / property>

<! - 启用Hibernate的自动会话上下文管理 - >
< property name =current_session_context_class>线程< / property>

<! - 禁用二级缓存 - >
< property name =cache.provider_class>
org.hibernate.cache.NoCacheProvider< / property>

<! - 将所有执行的SQL回复到stdout - >
< property name =show_sql> false< / property>

< property name =hbm2ddl.auto>验证< / property>

** //如何在这里导入mappingclass.xml **


< / session-factory>
< / hibernate-configuration>

这里是我的映射类。我需要将这些元素作为mapping.xml添加到cfg文件中。 。
$ b $ p mappingclass.xml

  < mapping class =pepper.logis.item.model.Item/> 
< mapping class =pepper.logis.itemstock.model.ItemStock/>
< mapping class =pepper.logis.itemreceiptheader.model.ItemReceiptHeader/>
< mapping class =pepper.logis.itemreceiptdetails.model.ItemReceiptDetails/>
< mapping class =pepper.logis.itemissueheader.model.ItemIssueHeader/>
< mapping class =pepper.logis.itemissuedetails.model.ItemIssueDetails/>
< mapping class =pepper.logis.itemrequisition.model.ItemRequisition/>

谢谢

解决方案这个可能会帮助你。

  private static SessionFactory buildSessionFactory(){
try {

配置配置= new Configuration();

configuration.configure(hibernate.cfg.xml);

configuration.addAnnotatedClass(pepper.logis.itemstock.model.ItemStock); //在这里添加您的映射类..

ServiceRegistryBuilder serviceRegistryBuilder = new ServiceRegistryBuilder()
.applySettings(configuration.getProperties());

return configuration.buildSessionFactory(serviceRegistryBuilder.buildServiceRegistry());

} catch(Throwable ex){
System.err.println(Initial SessionFactory creation failed。+ ex);
抛出新的ExceptionInInitializerError(ex);
}
}


How can i add my hibernate mapping classes into cfg file as a separate xml file.

Here is my hibernate configuration file .

 <hibernate-configuration>
    <session-factory>
        <!-- Database connection settings -->
        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="connection.url">jdbc:mysql://localhost:3306/test

        <property name="connection.username">root</property>
        <property name="connection.password">rot@pspl#12</property>

        <!-- JDBC connection pool (use the built-in) -->
        <property name="connection.pool_size">1</property>

        <!-- SQL dialect -->
        <property name="dialect">org.hibernate.dialect.MySQLDialect</property>

        <!-- Enable Hibernate's automatic session context management -->
        <property name="current_session_context_class">thread</property>

        <!-- Disable the second-level cache  -->
        <property name="cache.provider_class">
       org.hibernate.cache.NoCacheProvider</property>

        <!-- Echo all executed SQL to stdout -->
        <property name="show_sql">false</property>

        <property name="hbm2ddl.auto">validate</property>

       **//how to import mappingclass.xml here **


    </session-factory>
</hibernate-configuration>

here My mapping classes.I need to add these elements in to cfg file as a mapping.xml..

mappingclass.xml

<mapping class="pepper.logis.item.model.Item" />
    <mapping class="pepper.logis.itemstock.model.ItemStock" />
    <mapping class="pepper.logis.itemreceiptheader.model.ItemReceiptHeader" />
    <mapping class="pepper.logis.itemreceiptdetails.model.ItemReceiptDetails" />
    <mapping class="pepper.logis.itemissueheader.model.ItemIssueHeader" />
    <mapping class="pepper.logis.itemissuedetails.model.ItemIssueDetails" />
    <mapping class="pepper.logis.itemrequisition.model.ItemRequisition" />

Thanks

解决方案

This may be helping you..

private static SessionFactory buildSessionFactory() {
        try {

            Configuration configuration = new Configuration();

            configuration.configure("hibernate.cfg.xml");

            configuration.addAnnotatedClass(pepper.logis.itemstock.model.ItemStock);//add your mapping class here..

            ServiceRegistryBuilder serviceRegistryBuilder = new ServiceRegistryBuilder()
            .applySettings(configuration.getProperties());

            return configuration.buildSessionFactory(serviceRegistryBuilder.buildServiceRegistry());

        } catch (Throwable ex) {
            System.err.println("Initial SessionFactory creation failed." + ex);
            throw new ExceptionInInitializerError(ex);
        }
    }

这篇关于在hibernate中将映射类添加为单独的xml文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆