常规的思路是,设计好数据库,建好表,借助MyEclipse(也可以是其他IDE),自动生成映射,或者自己写映射。早就听说hibernate中可以自动生成表。但是一直没有试验。今天首先介绍其中的一个属性hbm2ddl.auto,这个就是这个方案的核心属性,有四个值:create,create-drop,update看看我们从网上查找到得资料:
<!-- 启动时删数据库中的表,然后创建,退出时不删除数据表
<property name="hbm2ddl.auto">create</property>-->
<!-- 启动时删数据库中的表,然后创建,退出时自动删除所有表
<property name="hbm2ddl.auto">create-drop</property>-->
<!-- 自动修改,如果表结构与实体类不一致,那么就修改表使它们一致,数据会保留
<property name="hbm2ddl.auto">update</property>-->
<!-- 自动校验,如果表结构与实体类不一致,那么不做任何操作,报错
<property name="hbm2ddl.auto">validate</property>-->
这样的话,设计实体类,直接写POJO,
然后写映射,让hibernate帮我们生成数据库表。或者我们知道了manytoone onetomany
我们完全可以只用注释的了。实体类。关于注释底下有说明。
主要是 在包ejb3-persistence 中,这种也是主要的是用到得是jpa的这种规则。我常用的几个属性在下面给了说明。
— @Entity:表示该类是一个可持久化的是实体类,标记了该注释的类可以由实体管理器EntityMangager来管理。
— @Table:表示该实体类映射为数据库中的指定的一个表。例如本例中Customer实体映射为数据库的表“customer”,使用的注释是@Table(name = "customer"),其中name的值为数据对应的表名“customer”。
— @Column:表示实体类的属性对应表中的指定字段。例如本例中属性“shortName”标注为@Column(name = "short_name") ,其中name的值为数据库中对应字段名“short_name”。
— @Id:表示该属性为该实体的主键。例如本例中属性“id”标注为@Id,表示属性id为表中对应的主键。
— 除了这些注释以外,使一个POJO类成为一个可持久化的Entity类还需要注意以下几点。
Ø 实体类必须有一个默认的无参数的构造方法,并且无参数的构造方法必须是public或protected的。
Ø 若要使实体类能够支持序列化,例如支持远程调用,可以实现Serializable接口。实现该接口是可选的,但建议实体类都实现这个接口。
分享到:
相关推荐
最后,为了使Hibernate根据实体类自动生成表,我们需要初始化SessionFactory并进行一些数据库操作。以下是一个简单的启动代码示例: ```java import org.hibernate.SessionFactory; import org.hibernate.boot....
4. 在使用 MyEclipse 自动生成 Hibernate 映射文件和实体类时,需要创建数据库连接和相应的表,然后选择需要添加 Hibernate 映像文件的工程,最后进行反转工程操作。 使用 MyEclipse 自动生成 Hibernate 映射文件和...
本主题将深入探讨如何根据Java实体类自动生成Hibernate的映射文件,这对于不使用MyEclipse等集成开发环境的开发者来说尤其实用。 首先,我们需要了解Hibernate映射文件的基本结构。通常,一个映射文件以`.hbm.xml`...
8. **完成设置:** 最后点击“Finish”按钮完成设置,此时Hibernate会根据所选数据库表自动生成相应的实体类及映射文件。 9. **查看生成结果:** 自动跳转到Java资源视图中,可以看到对应的实体类已经生成完毕。 ##...
请输入包的名称和映射文件需要放到的文件夹之后运行CreateTableXml里的main方法,就可以自动生成映射文件了。记着刷新文件夹,要不然是看不到的。 当然只是一些基础的属性。对于一些比较复杂,还是需要自己来修改的...
本话题主要围绕如何根据数据库中的表生成Hibernate实体类进行展开。 首先,我们需要理解Hibernate实体类的作用。实体类是与数据库表对应的Java类,它们包含了表的字段和相关属性,以及由Hibernate提供的getter和...
这个Maven插件解决了这个问题,它能自动扫描数据库中的表结构,包括字段名、字段类型、字段长度、是否可为空等信息,然后自动生成对应的Java实体类。这些实体类不仅包含了字段,还带有对应的getter和setter方法,...
### MyEclipse自动生成Hibernate实体类配置文件 #### 一、引言 在软件开发过程中,ORM(对象关系映射)技术是连接数据库与应用程序的重要桥梁。Hibernate作为一款优秀的ORM框架,极大地简化了数据访问层的开发工作...
本篇将详细讲解如何通过Hibernate配置文件自动生成数据库表,以及相关的知识点。 **一、Hibernate概述** Hibernate是Java平台上的一个开源框架,它的主要功能是提供一种映射机制,将Java类与数据库表进行对应,...
这款工具基于FreeMarker模板引擎,结合Java的Swing技术构建了可视化的用户界面,使得开发者能够快速地根据MySQL数据库中的表结构自动生成对应的Hibernate实体类。 首先,我们来了解下Hibernate,这是一个强大的对象...
因此,实体类自动生成工具应运而生,以提高开发效率,减少重复劳动。 这个名为"个人EntityTool"的压缩包文件,根据其标题和描述,很可能是作者自己编写的一个用于自动生成实体类的工具。这样的工具通常会根据数据库...
"mysql自动生成实体类"就是这样一个工具,它能够帮助开发者快速地根据MySQL中的表结构生成对应的Java实体类,极大地减少了手动编写代码的工作量。 生成实体类的主要目的是实现对象关系映射(Object-Relational ...
4. **生成Java代码**: 根据解析到的表结构,自动生成Java实体类。每个字段对应一个Java属性,数据类型需要转换成Java兼容的类型,如`VARCHAR`转`String`,`INT`转`int`等。同时,生成对应的getter和setter方法。 5....
Myeclipse 自动生成 Hibernate 配置文件及实体类映射 ORM 配置文件 Myeclipse 是一个功能强大的集成开发环境(IDE),它提供了许多实用的功能来简化软件开发过程。在这个示例中,我们将展示如何使用 Myeclipse 自动...
private static void printTableMetaInfo(Session session) { Connection connection = session.connection(); try { DatabaseMetaData metaData = connection.getMetaData(); ResultSet result = metaData....
Spring Boot + MyBatis 通过实体类自动生成数据库表的方法 本文主要介绍了使用 Spring Boot 2.1.8.RELEASE 和 MyBatis 生成数据库表的方法。该方法通过实体类自动创建数据库表,并提供了详细的示例代码,对学习和...
在这个场景中,"JAVA通过实体生成数据库表"指的是使用特定的工具或框架,根据预先定义好的Java实体类,自动生成对应的数据库表结构。 首先,我们需要理解什么是实体类。在Java中,实体类通常是对应数据库中的一张表...
在使用Hibernate框架进行对象关系映射(ORM)时,MyEclipse提供了自动生成映射文件和实体类的功能,极大地简化了数据库与Java类之间的绑定工作。以下是详细步骤和相关知识点: 1. **DB Browser视图**:在MyEclipse...
`Hibernate-tools`提供了一种方式来自动生成与数据库表对应的实体类,这大大减少了手动编写代码的工作量。在5.2.1版本中,我们可以在配置文件中指定注释模板,使得生成的实体类带有详细的注释。例如,你可以定义一...