Hibernate中的配置文件
Hibernate中配置文件
主配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration SYSTEM
"classpath://org/hibernate/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!--数据库连接属性配置-->
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="hibernate.connection.password">tiger</property>
<property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1521:orcl</property>
<property name="hibernate.connection.username">c##scott</property>
<!--数据库架构名 注意大写(使用hibernate tools 必须)-->
<property name="hibernate.default_schema">C##SCOTT</property>
<!--数据库方言-->
<property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property>
<!--显示sql语句-->
<property name="hibernate.show_sql">true</property>
<!--对数据库表的操作-->
<property name="hbm2ddl.auto">update</property> <property name="hibernate.search.autoregister_listeners">false</property>
<property name="hibernate.validator.apply_to_ddl">false</property> <!--配置文件映射的映射文件-->
<!-- <mapping resource="com/xx/dao/Userinfo.hbm.xml" /> -->
<!-- <mapping resource="com/test/News.hbm.xml" /> -->
<mapping resource="com/mapping/Factory.hbm.xml" />
<mapping resource="com/mapping/Product.hbm.xml" />
</session-factory>
</hibernate-configuration>
多对一映射文件
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated Jan 16, 2016 11:43:24 AM by Hibernate Tools 3.4.0.CR1 -->
<hibernate-mapping >
<class name="com.mapping.Factory" table="FACTORY">
<id name="id" type="java.lang.Integer">
<column name="ID" />
<generator class="native" />
</id>
<property name="name" type="java.lang.String">
<column name="NAME" />
</property> <!-- cascade="all" inverse="false" 级联删除 -->
<!--多对一配置
属性 private Set<Product> products;
-->
<set name="products" table="product">
<key column="factoryId"/><!-- 外键字段 -->
<one-to-many class="com.mapping.Product"/>
</set>
</class>
</hibernate-mapping>
一对多映射文件
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated Jan 16, 2016 11:43:24 AM by Hibernate Tools 3.4.0.CR1 -->
<hibernate-mapping>
<class name="com.mapping.Product" table="PRODUCT">
<id name="id" type="java.lang.Integer">
<column name="ID" />
<generator class="native" />
</id>
<property name="name" type="java.lang.String">
<column name="NAME" />
</property>
<property name="price" type="double">
<column name="PRICE" />
</property>
<!--多对一配置
属性 private Factory factory; --> <many-to-one name="factory" class="com.mapping.Factory" column="FACTORYID"/>
</class>
</hibernate-mapping>
反向工程需要的配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-reverse-engineering PUBLIC "-//Hibernate/Hibernate Reverse Engineering DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-reverse-engineering-3.0.dtd" > <hibernate-reverse-engineering>
<table-filter match-name="USERINFO"/>
</hibernate-reverse-engineering>
含有复合主键的映射文件
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping SYSTEM
"classpath://org/hibernate/hibernate-mapping-3.0.dtd">
<!-- Generated Jan 12, 2016 7:56:21 PM by Hibernate Tools 4.3.1 -->
<hibernate-mapping>
<class name="com.xx.dao.Userinfo" table="USERINFO" optimistic-lock="version">
<!--复合主键
单独一个实现Serializable接口的类
-->
<composite-id name="id" class="com.xx.dao.UserinfoId">
<key-property name="userid" type="short">
<column name="USERID" precision="4" scale="0" />
</key-property>
<key-property name="username" type="string">
<column name="USERNAME" length="15" />
</key-property>
</composite-id>
<property name="userage" type="java.lang.Short" >
<column name="USERAGE" precision="3" scale="0" />
</property>
</class>
</hibernate-mapping>
Hibernate中的配置文件的更多相关文章
- Hibernate中易错地方的总结
1.Hibernate中的配置文件要放在src下,注意不能放在包目录下 2.Hibernate中@Before @After方法不能再普通的类里用,只有在专门的JUnit测试用例里面用. 3.使用 ...
- Hibernate中配置文件的学习
首先我们看一下hibernate的主配置文件 <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Conf ...
- Hibernate中事务的隔离级别设置
Hibernate中事务的隔离级别,如下方法分别为1/2/4/8. 在Hibernate配置文件中设置,设置代码如下
- Hibernate中事务声明
Hibernate中JDBC事务声明,在Hibernate配置文件中加入如下代码,不做声明Hibernate默认就是JDBC事务. 一个JDBC 不能跨越多个数据库. Hibernate中JTA事务声 ...
- Hibernate中的锁机制
锁机制:是数据库为了保证数据的一致性<一个事务的各种操作不相互影响>而使各种共享资源在被并发访问访问变得有序所设计的一种规则,用来保证在当前用户进行操作数据的时候其他的用户不能对同一数据进 ...
- Java三大框架之——Hibernate中的三种数据持久状态和缓存机制
Hibernate中的三种状态 瞬时状态:刚创建的对象还没有被Session持久化.缓存中不存在这个对象的数据并且数据库中没有这个对象对应的数据为瞬时状态这个时候是没有OID. 持久状态:对象经过 ...
- hibernate中获得session的方式
his.getsession实际上是调用了父类中的方法获得session.使用spring管理hibernate的SessionFactory的时候,这个方法会从session池中拿出一session ...
- Hibernate中延迟加载和缓存
什么是延迟加载? 延迟加载是指当应用程序想要从数据库获取对象时(在没有设置lazy属性值为false),Hibernate只是从数据库获取符合条件的对象的OId从而生成代理对象,并没有加载出对象 访问 ...
- Hibernate中一级缓存和二级缓存使用详解
一.一级缓存二级缓存的概念解释 (1)一级缓存就是Session级别的缓存,一个Session做了一个查询操作,它会把这个操作的结果放在一级缓存中,如果短时间内这个 session(一定要同一个ses ...
随机推荐
- js面向对象1----了解构造函数
一.构造函数与实例的区别 1 构造函数 构造函数主要是一种用于生成对象的饼干模具,这些对象具有默认属性和属性方法,它可以创建多个共享特定特性和行为的对象. 构造函数只是一个函数,但当函数遇到了ne ...
- C# for 和 foreach的执行效率
for和foreach哪个执行效率快,相信很多人都会说当然是foreach快啊,在我实验之前我也是这么认为的,直到今天.费话不多说,下面是测试的结果,区分Debug和Release,数据采用int[] ...
- Vue 执行npm run dev时报了三个warning的原因
刚装上了win10,用vue运行下项目,输入npm run dev之后报了三个以下错误: There are multiple modules with names that only differ ...
- 洛谷 P2095 营养膳食
洛谷 P2095 营养膳食 题目描述 Mr.L正在完成自己的增肥计划. 为了增肥,Mr.L希望吃到更多的脂肪.然而也不能只吃高脂肪食品,那样的话就会导致缺少其他营养.Mr.L通过研究发现:真正的营养膳 ...
- Validation failed for query for method public abstract boxfish.bean.Student boxfish.service.StudentServiceBean.find(java.lang.String)!
转自:https://blog.csdn.net/lzx925060109/article/details/40323741 1. Exception in thread "main&quo ...
- hadoop组件及其作用
1.hadoop有三个主要的核心组件:HDFS(分布式文件存储).MAPREDUCE(分布式的计算).YARN(资源调度),现在云计算包括大数据和虚拟化进行支撑. 在HADOOP(hdfs.MAPRE ...
- oracle 10g文件目录结构详解
一个典型的oralce目录结构如下: /u01└── oracle ├── admin (数据库管理文件位置,以实例划分) │ ├── mydb │ │ ├── adum ...
- <meta name="viewport" content="width=device-width,initial-scale=1.0">
meta name="viewport" content="width=device-width,initial-scale=1.0" 解释 <meta ...
- 在云服务器上(CentOS)上安装Node
今天手抖,买了台云服务器,本人对服务器啥的基本不懂,linux命令基本靠度娘,所以连装个node环境都历经坎坷,搞了一下午终于搞好了,记录一下: 第一步:当然是先登录服务器了,打开命令行窗口,输入: ...
- [Nuxt] Update Vuex State with Mutations and MapMutations in Vue.js
You commit changes to state in Vuex using defined mutations. You can easily access these state mutat ...