12
或创建一个由域模型组成的域层,并与JPA实体对话以访问数据库? 这两种方法有什么优点和缺点?谢谢!将JPA实体用作域模型是否是一种很好的做法?
或创建一个由域模型组成的域层,并与JPA实体对话以访问数据库? 这两种方法有什么优点和缺点?谢谢!将JPA实体用作域模型是否是一种很好的做法?
这确实取决于你如何编码你的域名。
一般来说(在Java中)我更喜欢创建一组单独的JPA注释的DTO以使用持久性。这样的DTO将匹配数据库表,将自定义库中使用的
该方法使域模型与数据库模式真正解耦,以便您可以独立进化。这种方法的缺点是你有更多的代码可以编写,但是我发现这样的代码编写维护起来非常简单和便宜。
在实体上使用JPA注释是一种非常常见的方法,但随着您的域模型的发展和变得越来越复杂,我自己的经验是您必须面对远比其他解决方案昂贵的问题。
你有一个公共项目与执行? – heat 2015-02-17 04:05:51
使用Hibernate作为JPA提供程序允许您使用XML映射域对象。这可以帮助您将域对象从JPA注释中清除干净。 – 2015-07-31 12:32:41
这正是我所做的。 有道理;) – Mik378 2017-09-23 19:48:22