`
wubo_789
  • 浏览: 13383 次
  • 性别: Icon_minigender_1
  • 来自: 武穴
社区版块
存档分类
最新评论

hibernate.hbm2ddl.auto 问题小记

阅读更多
总是在一些小问题上跌倒。
最近做单DAO服务类,在测试的时候,为了简单,采用hibernate.hbm2ddl.auto自动生成表,但我发现不管是update还是create都没有在数据库中建立表,这太不应该了,经过几番周折,发现问题所在:
这是建立order表不成功的POJO:
@Entity
public class Order {
	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	private int id;
	
	private Date createDate;
	
	@OneToMany(targetEntity=Item.class, mappedBy="order", cascade=CascadeType.ALL)
	private Set<Item> items;

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public Date getCreateDate() {
		return createDate;
	}

	public void setCreateDate(Date createDate) {
		this.createDate = createDate;
	}

	public Set<Item> getItems() {
		return items;
	}

	public void setItems(Set<Item> items) {
		this.items = items;
	}
	
}

改过后建立order表成功的POJO:
@Entity
[b]@Table(name="ORDER", schema="hibernate")[/b]
public class Order {
	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	[b]@Column(nullable=false, unique=true)[/b]	
         private int id;
	
	private Date createDate;
	
	@OneToMany(targetEntity=Item.class, mappedBy="order", cascade=CascadeType.ALL)
	private Set<Item> items;

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public Date getCreateDate() {
		return createDate;
	}

	public void setCreateDate(Date createDate) {
		this.createDate = createDate;
	}

	public Set<Item> getItems() {
		return items;
	}

	public void setItems(Set<Item> items) {
		this.items = items;
	}
	
}

希望能给遇到同样问题的朋友提个醒
分享到:
评论

相关推荐

    hibernate.hbm2ddl.auto属性详解

    详解hibernate.hbm2ddl.atuo 属性的配置

    hibernate.hbm.xml详解

    《hibernate.hbm.xml详解》 在Java的持久化框架Hibernate中,`hibernate.hbm.xml`文件是至关重要的,它定义了Java对象与数据库表之间的映射关系,使得对象模型能够与关系型数据库无缝对接。这篇文章将深入解析`...

    hibernate.queries.hbm.xml

    hibernate.queries.hbm.xml这个文件需要放在jbpm*(版本).jar中。。的org.jbpm.db目录下,先删除以前的文件,然后,换上共享中这个。。大家可以用文件比较器看看,并没有改变以前的,只是新加了。。

    hibernate3 配置hbm2ddl和hbm2java所需jar

    hbm2ddl是Hibernate提供的一个自动化数据库建模工具,它可以将Hibernate的映射文件(.hbm.xml)转换为数据库的DDL(Data Definition Language),用于创建或更新数据库表结构。这大大节省了手动编写SQL脚本的时间,...

    详解hibernate自动创建表的配置

    首先,我们要关注的关键配置项是`hibernate.hbm2ddl.auto`。这个属性决定了Hibernate在启动时如何处理数据库的元数据,即表结构。以下四个值是它可能的取值: 1. **update**:这是最常用的设置,当设置为`update`时...

    Hibernate常用操作示例

    Hibernate常用操作示例,包含详细注释说明,数据库初始化文件。使用和学习请参考:http://blog.csdn.net/daijin888888/article/details/51692942

    hibernate325ga+struts2011+spring25实现crud

    部署时,可修改web-inf/config/spring/applicationContext.xml文件,修改相应的数据库信息,把把&lt;prop key="hibernate.hbm2ddl.auto"&gt;update 改为&lt;prop key="hibernate.hbm2ddl.auto"&gt;create即可自动创建表 我自己写的...

    hbm2ddl属性hbm2ddl属性

    &lt;property name="hibernate.hbm2ddl.auto"&gt;create ``` 这样,每当应用程序启动时,Hibernate都会检查`User`实体类并自动创建名为`users`的表。 2. **更改实体类**:如果我们决定为`User`实体添加一个新的字段`...

    Spring3+hibernate4+Struts2图书管理系统

    2.修改applicationContext.xml文件中hibernate.hbm2ddl.auto的值为create而不是update 3.修改数据库的连接信息(数据库,用户名,密码) 4.部署到Tomcat服务器上面,然后运行 5.在浏览器中输入...

    javaee 书上的Customer程序

    怎样运用Hibernate hibernate.dialect=org.hibernate.dialect.SQLServerDialect hibernate.connection.driver_class=... hibernate.hbm2ddl.auto=create hibernate.show_sql=true

    hibernate.cfg.xml文件

    5. **hibernate.hbm2ddl.auto**:此属性决定了Hibernate在启动时如何处理数据库模式。例如,`create`表示每次启动时都创建新表,`update`则更新已有表结构,`validate`验证表结构是否匹配,`none`则不做任何操作。 ...

    spring如何摒弃hibernate.cfg.xml

    这个属性用于指定类路径下具体的Hibernate映射文件(.hbm.xml)。例如,如果我们有一个名为`petclinic.hbm.xml`的映射文件,我们可以这样配置: ```xml &lt;value&gt;petclinic.hbm.xml ``` 这种方式只能处理单个...

    Hibernate.cfg.xml常用配置总结.pdf

    3. **Hbm2ddl.auto**: 这个属性决定了 Hibernate 如何自动管理数据库的元数据。有以下几种模式: - `create`: 每次启动应用时,Hibernate 会删除现有的表并重新创建它们,这会导致数据丢失。 - `update`: ...

    ssh整合,不带hibernate.cfg.xml的方式

    &lt;value&gt;com/example/Entity2.hbm.xml&lt;/value&gt; ``` 在这里,我们使用了Spring的PropertyPlaceholderConfigurer来解析`hibernate.properties`中的属性,并注入到`LocalSessionFactoryBean`的配置中。`...

    Hibernate的........htm.xml和hibernatecfg.xml配置

    `.hbm.xml`文件用于映射数据库表和Java类之间的关系,而`hibernate.cfg.xml`则是Hibernate的整体配置文件,包含了数据库连接、事务管理等核心设置。 ** Hibernate基础知识 ** Hibernate是一款流行的Java持久化框架...

    hibernate.properties

    #hibernate.hbm2ddl.auto create-drop #hibernate.hbm2ddl.auto create #hibernate.hbm2ddl.auto update #hibernate.hbm2ddl.auto validate ## specify a default schema and catalog for unqualified tablenames ...

    Hibernate.cfg.xml常用配置总结.docx

    &lt;property name="hibernate.hbm2ddl.auto"&gt;update &lt;property name="hibernate.default_schema"&gt;my_schema &lt;property name="hibernate.dialect"&gt;org.hibernate.dialect.MySQLDialect ... &lt;/hibernate-...

    数据库的自动创建

    需要注意的是,`hibernate.hbm2ddl.auto`的自动操作是基于映射文件(.hbm.xml或注解)的,因此当你的实体类(model)发生变化时,你需要确保数据库已经同步更新了这些变更。否则,如果你在实体类中添加了新的字段而...

    Hibernate.cfg.xml配置总结

    &lt;mapping resource="com/amigo/pojo/User.hbm.xml"/&gt; &lt;mapping resource="com/amigo/pojo/Org.hbm.xml"/&gt; ``` 这些映射文件定义了实体类与数据库表之间的对应关系,包括字段映射、主键生成策略等。 综上所述,...

    hibernate-tools(包含版本3、版本5)解决hbm.xml中文注释乱码和生成实体类注释

    总共有2个版本,根据自己的需求使用版本3或者5: 1. hibernate-tools-3.4.0.CR2.jar是修改完成的jar包,直接替换原来的jar包, 重启eclipse即可生效(插件包所在路径是:D:\eclipse\plugins\org.hibernate.eclipse....

Global site tag (gtag.js) - Google Analytics