我有一个Tomcat应用程序,它使用从Eclipse/JPA自动生成的实体。然后,我手动编写了DAO,这些DAO与数据库接口。
我认为保持实体简单有很大的好处。例如,规范说它必须有一个空的构造函数。不使用它们意味着如果数据库模式发生变化,我可以重新生成它们。但我很想扩展它们。
有几个问题。
如果我创建一个新实体,我希望某些字段具有非空值。如果我有一个空的构造函数,我不能在那里做。例如status=' new ',Date created =new Date()等。
我意识到我需要一个工厂。但是,这是否应该说生活在DAO中呢?例如DAO.getNewObject()?
类似地,如果我想使用测试或验证逻辑,它会去哪里?例如,完整性分数=是否填写了姓名、地址、电话等?这样的东西应该存在于道中吗?还是实体?还是别的什么?
我是否应该有一个新的类来扩展实体并将逻辑放在其中?
think是不是涵盖了一些建筑方面的东西?
发布于 2014-09-20 00:00:50
对于像NotNull、MinLength之类的验证,
https://stackoverflow.com/questions/25772275
复制相似问题