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