2013-02-22 88 views
1

是否需要以不同方式注释java域类。 我有两个表,其中一个是使用InnoDB创建的,另一个是使用MyISAM创建的。 这个要求就像我无法用InnoDB创建。 我已经使用JPA创建了他们的领域java类。 现在我不确定,我的java代码能否正常工作,因为它在InnoDB表格的情况下工作!Hibernate JPA是否支持mysql InnoDB和MyISAM引擎

+1

您在JPA配置中拥有哪个事务级别 – 2013-02-22 11:12:21

回答

0

相同的实体将适用于InnoDB和MyISAM,这意味着您不需要更改任何注释。基础数据库的详细信息对持久层代码是透明的,这就是JPA提供程序的功能。

顺便提一下,问题标题“JPA XXX实施支持...”更有意义。

1

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

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

+0

其实我并没有想过为他们单独设置类。当前配置使用InnoDB。是否可以使用相同的配置从MyISAM表中获取数据。 – kedar 2013-02-22 11:36:47

+0

当然是没有问题的。 – 2013-02-22 11:37:56

+0

增加了更多解释 – 2013-02-22 11:40:19

1

通常它应该没有任何改变地工作。如果正确完成JPA映射,甚至可以切换到完全不同的DBMS,并且它也可以工作。