1
我有一個使用Spring和Hibernate框架編寫的應用程序。一切工作正常,但我確實有一個問題:如果控制器通過調用服務層方法來調用業務邏輯,那麼某些代碼應該去哪裏,例如在下面的代碼中,用於設置新的人員角色和密碼的代碼應該在處理AddPerson頁面的POST請求的控制器方法中還是在服務層方法中?何處在Spring Hibernate應用程序中放置業務邏輯?
// Saves addPerson.jsp.
@RequestMapping(value = "/add", method = RequestMethod.POST)
public String postAdd(@ModelAttribute("person") Person person) {
logger.debug("PersonController.postAdd called");
// Create random number for new Person's password.
person.setPassword(String.valueOf(Java_Utils.getRandomNumber()));
// Create role for new Person.
person.setRole("PERSON");
// Add Person.
personService.add(person);
// Set records.jsp
return "redirect:/demo/main/record/list";
}
這當然只是一個簡單的例子,但我很好奇。 PERSON的角色是使用Tomcat來阻止用戶訪問經過驗證的頁面,以滿足約束。
這就是爲什麼代碼現在已被移入服務層。謝謝。 – 2013-03-25 10:29:12