当前位置: 首页 > 面试题库 >

Hibernate-它会改变数据库的结构吗?

燕承安
2023-03-14
问题内容

我正在Spring上用Java构建更大的项目,很多人建议我使用hibernate来简化对数据库的访问。问题是,我必须使用该项目以前版本的数据库,该数据库以前是用PHP编写的,因此肯定不能使用hibernate。我已经读过一些有关hibernate的知识,但是我仍然不确定一件事-
它是否必须更改数据库的结构,还是可以将标准MySQL数据库与int,varchar和其他类型的存储值一起使用,而仅使用hibernate摆脱很多SQL在我的Java代码中?


问题答案:

虽然可以使用Hibernate创建/删除表,但通常在生产环境中不会这样做。在这些情况下,您要定义POJOS和基础数据库架构之间的对象关系映射。因此,实际上,Hibernate不需要向数据库架构添加任何内容。

如果您使用的是在应用hibernate之前定义的Schema,则可能需要确保字段转换器合适(即,Hibernate对于SQL中的哪种列类型构成日期或数字可能有不同的想法),但这意味着您将必须提供显式映射/转换器,而不要使用默认值。

但是,您应该能够使用Hibernate,而无需对现有数据库架构进行任何重大更改。



 类似资料:
  • PHPSSO 数据库结构[更新日期:2010-12-28] 点击查看 PHPCMS 数据库结构[更新日期:2010-12-28] 点击查看

  • 如果需要在程序中 Dump 数据库的结构和数据可以调用 engine.DumpAll(w io.Writer) 和 engine.DumpAllToFile(fpath string)。 DumpAll 方法接收一个io.Writer接口来保存Dump出的数据库结构和数据的SQL语句,这个方法导出的SQL语句并不能通用。只针对当前engine所对应的数据库支持的SQL。 Import 执行数据库S

  • 问题内容: 我有一个专栏 组 。 群组 具有存储在group_types中的不同类型(买方,卖方,裁判)。只有当该组是买方类型时,它才具有另一种(更专门)的类型,例如电气和机械类型。 我对如何将其存储在数据库中感到有些困惑。 有人可以建议我一个数据库结构吗? 谢谢 问题答案: 将您的存储为层次结构表(带有或模型): : 将选择中的所有买家。 : 将选择任何数据库中的所有买家。 如果您不需要层次结构

  • 我正在使用Flatter和firebase构建一个应用程序,我想知道最好的firestore数据库结构是什么。 我希望用户能够发布消息,然后通过帖子内容和海报用户名进行搜索。 为用户创建一个集合,每个文档存储用户名和其他信息,并为帖子创建一个单独的集合,每个文档包含帖子和海报的用户名,这是否有意义? 万一帖子数量超过一百万或更多,查询这种大规模收集是否会产生额外的成本? 将每个用户的帖子作为子集合

  • 同步能够部分智能的根据结构体的变动检测表结构的变动,并自动同步。目前有两个实现: Sync Sync将进行如下的同步操作: * 自动检测和创建表,这个检测是根据表的名字 * 自动检测和新增表中的字段,这个检测是根据字段名 * 自动检测和创建索引和唯一索引,这个检测是根据索引的一个或多个字段名,而不根据索引名称 调用方法如下: err := engine.Sync(new(User), ne

  • 本文向大家介绍修改SQL-SERVER数据库表结构的SQL命令附sql命令行修改数据库,包括了修改SQL-SERVER数据库表结构的SQL命令附sql命令行修改数据库的使用技巧和注意事项,需要的朋友参考一下 具体不废话了,请看下文代码详细说明吧。 向表中增加一个 varchar 列:   ALTER TABLE distributors ADD COLUMN address varchar(30)