1

这是我在Spring 上下文中定义的 UserDAO bean

public class UserDAO{

  public boolean isUserAlreadyExists(User user){
     //some logic
  }

  public void createUser(User user){
     //logic to add user to database
  }

}

这是我的春季服务豆

@Component
@Transactional(readonly="true",propagation=Propation.SUPPORTD)
public class UserService{

   @Autowired
   UserDAO userDAO;

   public void createUser(User){
       if(!userDAO.isUserAlreadyExists(user)){
           userDAO.createUser(user);
       }
   }
}

我应该像这样从UserDAO.createUser中调用isUserAlreadyExists

//UserDAO.java
public void createUser(User user){

  if(!isAlreadyUserExists(user)){
     //user adding to database
  }
}

或者

上面的服务 bean 实现是可以的。

4

1 回答 1

3

该逻辑似乎应该在您的服务层中;和前面的例子一样。您createUser()在 DAO 中的函数应该只需要担心创建或添加用户。让服务层担心如果User已经存在该怎么办。

好读

于 2012-04-12T18:57:48.147 回答