2013-04-18 1 views
1

У меня есть одно-одно отображение классов Employee and Department. У меня есть классы Bean в домене. У меня есть JSP с интерфейсом, который является формой Employee. Эта форма имеет раскрывающийся список, в котором перечислены все доступные отделы.Единый ORM и вставка в DB

Теперь мне нужно выполнить операцию вставки сотрудника, используя спящий режим.

<form:form action="add" method="post" modelAttribute="user"> 
    <div> 
     <form:label path="emailAddress">Email</form:label> 
     <form:input path="emailAddress" /> 
    </div> 
    <div> 
     <form:label path="deptartment">Department</form:label> 
     <form:select path="department"> 
     <form:options items="${departmentList}" /> 
     </form:select> 
    </div> 
</form:form> 

метод управления:

@RequestMapping(value = "add", method = RequestMethod.POST) 
    public String getAddEmployeeSettingsPage(@ModelAttribute("employee") Employee employee, 
      BindingResult result) { 

     System.out.println(employee); 
     return "empsettings"; 
    } 

Теперь объект работник не имеет никакого отношения к кафедре. Что мне нужно сделать, чтобы получить объект сотрудника в контроллере вместе с соответствующей ссылкой отдела. Надеюсь, я поняла. Заранее спасибо.

+0

прохладный .. получил его здесь: http://stackoverflow.com/questions/12425154/java-springmvc-get-parameter-in-the-controller – Srikrishnan

ответ

0

Я нашел SOLN без необходимости впрыскивать:

<div> 
    <form:label path="department.departmentId">Department</form:label> 
    <form:select path="department.departmentId"> 
    <form:options items="${departmentList}" itemValue="departmentId" itemLabel="departmentName"/> 
    </form:select> 
</div> 

Просто связать отдел в комбинированное окно .. :)

2

Внесите DAO в контроллер, попросите диспетчера из отдела связаться с сотрудником из DAO и сохраните сотрудника.

В идеале вы, вероятно, захотите объединить всю эту логику в сервисный метод, чтобы служба просто взяла сотрудника и продолжала работу с соответствующим департаментом. Кроме того, не будет ли отношение много-к-одному, многие сотрудники принадлежат одному отделу. В противном случае, вы бы сотрудник Боб, который принадлежит отделу Бобу, сотрудник Сь принадлежит отделу Си и т.д.

Смежные вопросы