1

我是否需要以不同的方式注释 java 域类。我有两张表,一张是用 InnoDB 创建的,另一张是用 MyISAM 创建的。要求就像我无法使用 InnoDB 创建两者。我已经使用 JPA 创建了他们的域 java 类。现在我不确定,我的 java 代码是否能正常工作,因为它在 InnoDB 表的情况下工作!

4

3 回答 3

1

我是否需要以不同的方式注释 java 域类。

不,您无需更改 java 类。据我所知,如果数据库被更改,对 java 类没有影响,它们保持不变,只有配置文件被更改,如 url、方言、用户名和密码。在您的情况下,如果您将数据库引擎从 InnoDb 更改为 MyISAM,则不需要从 java 端进行任何更改。虽然 MyIsam 不支持交易,但您必须注意您的交易。

于 2013-02-22T11:14:42.093 回答
1

通常它应该在没有任何变化的情况下工作。更重要的是,正确完成 JPA 映射,您甚至可以切换到完全不同的 DBMS,它也应该可以工作。

于 2013-02-22T13:53:51.720 回答
0

相同的实体将适用于 InnoDB 和 MyISAM,这意味着您不需要更改任何注释。底层数据库细节对你的持久层代码是透明的,这就是 JPA 提供者所做的。

顺便说一句,题“Does JPA XXX implementation support...”更有意义。

于 2013-02-22T11:23:30.097 回答