hibernate3学习笔记(十三)|Dynamic Model

在构造系统原型阶段,由于需求尚未确定,程序中的POJO会在开发过程中存在相当大的变动,于是在Hibernate3中引入了动态模型的概念。如此不需要事先实际定义POJO。

数据库DDL如下:

1.CREATE TABLE user (2.    id INT(11) NOT NULL auto_increment PRIMARY KEY,3.    name VARCHAR(100) NOT NULL default '',4.    age INT5.);

User.hbm.xml配置文件中设定entity-name属性(属性值为查找的唯一标示符,不可重复)。

1.<?xml version="1.0" encoding="UTF-8"?>2.
3.<!DOCTYPE hibernate-mapping PUBLIC4.    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"5.    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
6.
7.<hibernate-mapping>
8.
9.    <class entity-name="com.hb3.pack_06.model.DynamicUserModel" table="user">
10.11.        <id name="id" column="id" type="java.lang.Integer">12.            <generator class="native"/>13.        </id>
14.
15.        <property name="name"16.                  column="name"17.                  type="java.lang.String"/>18.19.        <property name="age"20.                  column="age"21.                  type="java.lang.Integer"/>22.    </class>
23.24.</hibernate-mapping>

修改hibernate.cfg.xml配置文件:

......
<mapping resource="com/hb3/pack_06/model/User.hbm.xml" />
......

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索文件
, null
, 配置
, 属性
, 原型
pojo
,以便于您获取更多的相关知识。

时间: 2024-12-21 21:20:30

hibernate3学习笔记(十三)|Dynamic Model的相关文章

hibernate3学习笔记(十五)|继承映射

这里详细讨论继承映射的3种方式: 1.Table per concrete class 继承关系如下图: 数据表设计如下图: MySQL数据库中执行如下DDL: 1.CREATE TABLE defaultuser (2. id INT(11) NOT NULL auto_increment PRIMARY KEY,3. name VARCHAR(100) NOT NULL default '',4. someProperty VARCHAR(100)5.);6.7.CREATE TABLE p

kvm虚拟化学习笔记(十三)之kvm虚拟机磁盘文件读取小结

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://koumm.blog.51cto.com/703525/1298845 kvm虚拟机磁盘挂载还真不是一帆风顺的.xen虚拟化默认就raw格式的磁盘,可以直接挂载,kvm如果采用raw也可以直接挂载,与xen磁盘挂载方式一致. 本文出自:http://koumm.blog.51cto.com 1.kvm虚拟化相比xen虚拟化来说,工具与方法众多,本文列举思路如下: (1)raw格式

hibernate3学习笔记(二十三)|进阶特性(三)

6.从数据表生成映射文件 可以从资料库的表格自动生成映射文件,首先 下载 Middlegen-Hibernate,下载後将之解压缩. 这边所使用的资料库是MySQL,并假设您的资料库中已有以下的表格: CREATE TABLE user ( id INT(11) NOT NULL auto_increment PRIMARY KEY, name VARCHAR(100) NOT NULL default '', age INT ); 进入Middlegen-Hibernate解压缩後的confi

hibernate3学习笔记(二十三)|进阶特性(二)

4.Interceptor 介面: 您可以在开启Session时载入一个自订Interceptor,这个Interceptor会在对应的动作发生之前呼叫对应的方法,方法是让您定义的Interceptor实作Interceptor介面,介面的定义如下: Interceptor.java package org.hibernate; import java.io.Serializable; import java.util.Iterator; import org.hibernate.type.Ty

hibernate3学习笔记(二十三)|进阶特性(一)

1.悲观锁定: 在多个客户端可能读取同一笔数据或同时更新一笔数据的情况下,必须要有访问控制的手段,防止同一个数据被修改而造成混乱,最简单的手段就是对资料进行锁定,在自己进行资料读取或更新等动作时,锁定其他客户端不能对同一笔资料进行任何的动作. 悲观锁定(Pessimistic Locking)一如其名称所示,悲观的认定每次资料存取时,其它的客户端也会存取同一笔资料,因此对该笔资料进行锁定,直到自己操作完成後解除锁定. 悲观锁定通常透过系统或资料库本身的功能来实现,依赖系统或资料库本身提供的锁定机

hibernate3学习笔记(一)

今天开始系统的学习一下hibernate3.3.2 (annotations版)首先去hibernate的官方网站下载hibernate-distribution-3.3.2.GA版本,然后下载slf4j-1.5.8 一.hibernate-annotations-3.4.0.GA,然后在MyEclipse下建立一个java工程,加入如图的jar包.一个是hibernate的核心包hibernate3.jar,然后是lib目录下required下的全部jar,最后是一个是slf4j-1.5.8中

Unmi的Struts2学习笔记(十三)

柏杨在形容中国人不团结,喜欢窝里斗用了这样的话:每一个中国人都是一条 龙,但是三个中国人加在一起──三条龙加在一起,就成了一条猪.一条虫,甚至 连虫都不如--<丑陋的中国人>.可是他老人家走得走,要是能多有半个月的阳 寿,不知作有何感想. 1. <s:optiontransferselect.../> 正是考虑到通常使用而新加的用于 创建两个下拉框,可以来回移动列表项.有属性设置是否显示 "选定左移"."全 部左移"."选定右移&q

hibernate3学习笔记(二十二)|Query缓存机制

接前面的例子:http://blog.csdn.net/kunshan_shenbin/archive/2008/09/03/2874375.aspx 测试代码如下: 1.package com.hb3.pack_22;2.3.import java.io.IOException;4.import java.sql.SQLException;5.import java.util.List;6. 7.import org.hibernate.Query;8.import org.hibernate

hibernate3学习笔记(二十一)|二级缓存

二级缓存及外部缓存,它能够越过数个Session,通过同一个SessionFactory进行管理和维护. 接上例的代码:http://blog.csdn.net/kunshan_shenbin/archive/2008/09/03/2874375.aspx 要使用二级缓存,首先需要对hibernate.cfg.xml文件进行修改: 1.<?xml version="1.0" encoding="utf-8"?>2.<!DOCTYPE hiberna