【问题标题】:Access two services methods from one controller in hibernate and Spring MVC在 hibernate 和 Spring MVC 中从一个控制器访问两种服务方法
【发布时间】:2011-12-03 10:17:39
【问题描述】:

我无法从一个控制器访问 2 种服务方法。我想创建一个任务,但同时我想创建新角色并将其自动增量 ID 分配给任务的角色 ID(外键)。它是一对一的映射。

我可以在 simpleFormContrller 中实现它吗?我该怎么做?

public class CreateTaskController extends SimpleFormController {

 HResourceService hrService;         // Create a Service class instance.

 public void setHResourceService(HResourceService hrservice) {
    this.hrService = hrservice;
}

public CreateTaskController() {

    setCommandClass(Task.class);
        `

` @Override protected ModelAndView onSubmit(Object command) 抛出异常 {

    Task task = (Task) command;

    //ContactService.createContact(contact);

    hrService.createTask(task);

    ModelAndView mv = new ModelAndView();

    mv.setViewName(getSuccessView());

    mv.addObject("taskCreated", task.getDescription());    // Pass response to taskCreated view
    return mv;
}

}`

【问题讨论】:

    标签: hibernate spring-mvc controller mapping netbeans6.7


    【解决方案1】:

    如果你有正确的hibernate bean之间的关系定义应该没有问题。

    public class Role implements Serializable {
    
       @OneToOne(cascade=CascadeType.ALL,mappedBy="task")    
       private Task task;
    
    }
    
    public class Task implements Serializable {
    ....
       @OneToOne
       @JoinColumn(cascade=CascadeType.ALL,"role_id")
       private Role role;
    ....
    }
    
    @Override protected ModelAndView onSubmit(Object command) throws Exception {
    
        Task task = (Task) command;
        task.setRole(new Role("big_brother").setTask(task));
    
        hrService.createTask(task);
    
        ModelAndView mv = new ModelAndView();
    
        mv.setViewName(getSuccessView());
    
        mv.addObject("taskCreated", task.getDescription());    // Pass response to taskCreated view
        return mv;
    }
    

    【讨论】:

      猜你喜欢
      • 2012-11-08
      • 2012-06-17
      • 2012-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-13
      • 1970-01-01
      • 2013-07-18
      相关资源
      最近更新 更多