Why does JPA require a no-arg constructor for domain objects?

限于喜欢 提交于 2019-12-01 15:26:38

Because it often happens that the JPA provider has to instantiate your domain object dynamically. It cannot do so, unless there is a no-arg constructor - it can't guess what the arguments should be.

Also notice that this is not provider dependent. It is a JPA specification.

JPA v2.0 JSR-317 and v2.1 JSR-338 says:

The entity class must have a no-arg constructor. The entity class may have other constructors as well. The no-arg constructor must be public or protected.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!