hibernate.cfg.xml放在哪

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hibernate.cfg.xml放在哪相关的知识,希望对你有一定的参考价值。

只要你能找到,放在哪里都可以。sessionFactory = new Configuration().configure("WEB-INF/hibernate.cfg.xml").buildSessionFactory();

hibernate实现有两种配置,xml配置与注释配置。
一、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>
<!--url信息-->
<property name="connection.url">jdbc:mysql://localhost:3306/webases</property>
<!--数据库方言信息-->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<!--用户名-->
<property name="connection.username">root</property>
<!--密码-->
<property name="connection.password">123456</property>
<!--数据库驱动信息-->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<!--指定Hibernate映射文件路径-->
<mapping resource="com/Hibernate/order.hbm.xml" />
</session-factory>
</hibernate-configuration>

二、注解方式:

先是需要加入4个jar包:hibernate-commons-annotations.jar 、
hibernate-annotations.jar、ejb3-persistence.jar 、
hibernate-jpa-2.0-api-1.0.1.Final.jar
不同的地方:
(1):hibernate.hbm.xml 文件中把引用:xxx.hbm.xml改为引用实体类:
即把:<mapping resource="com/wsw/hibernate/model/Order.hbm.xml"/>
改为:<mapping class="com.wsw.hibernate.model.Order" />
(2):获取SessionFactory方式发生了变化:
即:由SessionFactory sf = new Configuration().configure().buildSessionFactory()
改为:SessionFactory sf = new AnnotationConfiguration().configure().buildSessionFactory()
(3):注解方式不需要在xxx.hbm.xml把实体类与表进行映射。而采用在实体类中进行注解。
注意:(1):如果实体类属性名与表字段名不一致的时候,要么都注解在属性前,要么都注解在get方法前。不能部分注解在属性前,部分注解在方法前。
(2):如果实体类属性名与表字段名一致的时候,可以部分注解在属性前,部分注解在方法前。
(3):如果在实体类中某些属性不注解:(属性和get都不写注解),默认为表字段名与实体类属性名一致。
(4):如果实体类的某个成员属性不需要存入数据库中,使用@Transient 进行注解就可以了。即类似于:(xxx.hbm.Xml配置中的某些字段不写(就是不需要对这个成员属性进行映射))
(5):表名称可以在实体类前进行注解。
(6):所有这些注解在:javax.persistence包下。而不是在hibernate包中。
参考技术A 放到那不重要,关键用的时候你得找到(一般都放到根目录下)
sessionFactory = new Configuration().configure("/hibernate.cfg.xml").buildSessionFactory();
参考技术B 放到目录里

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">

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

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

<mapping class="com.group.users.entity.Users"/>

</session-factory>

</hibernate-configuration>

以上是关于hibernate.cfg.xml放在哪的主要内容,如果未能解决你的问题,请参考以下文章

Java - 框架之 Hibernate

hibernate.properties 与 hibernate.cfg.xml

hibernate--hibernate.cfg.xml常用配置详解

加载hibernate配置文件的2种方式

如何使用 hibernate.properties 文件而不是 hibernate.cfg.xml

使用 hibernate.cfg.xml 时更改 hibernate.properties 文件的位置