作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个带有 DAOManager 的类设置,并为我需要与之交互的表设置了单独的 DAO 类。当我想从数据库中插入或删除对象时,有必要验证对象。我应该验证 DAOManager 类中相应方法中的对象还是特定 DAO 类中的对象?当然也可以在调用 DAOManager 之前验证对象。哪个选项最好?
public class DAOManager {
public void insertIntoTable(Object obj) {
//Validate here?
exampleDAO.insert(Object obj);
}
}
public class ExampleDAO() {
public void insert(Object obj) {
//Or validate here?
//Insert logic...
}
}
最佳答案
我会选择使用 validateOnInsert()、validateOnDelete() 方法创建抽象类“ObjectValidation”,...
如果您的 DAO 不需要验证,则所有单个 DAO 都应该实现该类并将特定逻辑添加到验证中,返回 true 并继续管理器进程。
public class ExampleDAO() extends DAOValidation{
public void insert(Object obj) {
if(validationOnInsert(obj)){...}
}
public boolean validateOnInsert(Object obj) {
//your validation here
}
public boolean validateOnDelete(Object obj) {
//your validation here
}
}
可能不同的人有不同的方法来解决这个问题,但我认为 DAO 是应该了解类本身的所有业务逻辑的类,管理者应该充当向 DAO 请求操作的分发者
关于java - DAOManager - 对象验证应该在这里完成还是在特定的 DAO 类中完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36279254/
我有一个带有 DAOManager 的类设置,并为我需要与之交互的表设置了单独的 DAO 类。当我想从数据库中插入或删除对象时,有必要验证对象。我应该验证 DAOManager 类中相应方法中的对象还
根据 ORMLite 文档,所有创建的 Dao 对象都缓存在 DaoManager 中。但是在 ORMLite 中 examples ,我看到 Dao 类再次缓存在 DatabaseHelper 类中
我是一名优秀的程序员,十分优秀!