public Employee createEmployee (Employee e) {
Employee emp = new Employee ();
emp.setId ((long) empList.size() + 1);
emp.setJob (e.getJob ());
emp.setName (e.getName ());
empList.add(emp);
return emp;
}
package springfast.service;
import java.util.ArrayList;
import java.util.List;
import springfast.model.Job;
public class JobManager {
private static List jobList;
static {
Job job1 = new Job();
job1.setId((long)1);
job1.setTitle ("Programmer");
job1.setSalary ( new Long("10000"));
Job job2 = new Job();
job2.setId((long)2);
job2.setTitle ("Manager");
job2.setSalary ( new Long ( "50000" ) ) ;
jobList = new ArrayList();
jobList.add(job1);
jobList.add(job2);
}
public List getJobList() {
return jobList;
}
public Job getJobById (Long id) {
for (Job j : jobList) {
if (j.getId().equals(id))
return j;
}
return null;
}
}
quot;springfast.web.NewEmployeeController">
<property name="commandClass" value="sprinfast.model.Employee"/>
<property name="formView" value="newEmployee"/>
<property name="successView" value="list_employees.html"/>
</bean>
We must now create this Controller: 'WEB-INF/src/springmvc/web/NewEmployeeController.java':
package springfast.web;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.ServletRequestDataBinder;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;
import org.springframework.web.servlet.view.RedirectView;
import springmvc.model.Job;
import springmvc.model.Employee;
import springmvc.service.JobManager;
import springmvc.service.EmployeeManager;
public class NewEmployeeController extends SimpleFormController {
@Override
protected Object formBackingObject(HttpServletRequest request) throws Exception {
Employee defaultEmployee = new Employee();
defaultEmployee.setName ("new employee name");
return defaultEmployee;
}
@Override
protected Map referenceData(HttpServletRequest request) throws Exception {
Map
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<html>
<body>
<h1>New Employee</h1>
<form:form method="post">
Job<br />
<form:select path="job">
<form:options items="${jobList}" itemLabel="name" itemValue="id" />
</form:select>
<br /><br />
Name <br />
<form:input path="name"/><br /><br />
<input type="submit" value="Submit">
</form:form>
</body>
</html>
http://localhost:8080/springfast/new_employee.html
You will see the following result:
This proves that our MVC application works like a charm. We can now relax and have a cup of coffee, or tea but no alcohol please.