Guest User

Untitled

a guest
Nov 20th, 2017
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 14.65 KB | None | 0 0
  1. Bean Class:
  2. package com.dineshonjava.bean;
  3. import javax.persistence.Column;
  4. import javax.persistence.Entity;
  5. import javax.persistence.SecondaryTable;
  6. import javax.persistence.Table;
  7. import javax.validation.constraints.Max;
  8. import javax.validation.constraints.Min;
  9. import javax.validation.constraints.NotNull;
  10. import javax.validation.constraints.Pattern;
  11. import javax.validation.constraints.Size;
  12. import org.hibernate.validator.constraints.Email;
  13. import org.hibernate.validator.constraints.NotEmpty;
  14. import com.dineshonjava.validator.Ajay;
  15. @Entity
  16. @Table(name="employees")
  17. @SecondaryTable(name="employeedetails")
  18. public class EmployeeBean {
  19. private Integer id;
  20. @NotEmpty
  21. @Size(min=2,max=20)
  22. private String name;
  23. @NotNull
  24. @Min(18)@Max(90)
  25. private Integer age;
  26. @NotEmpty @Email
  27. private String email;
  28. @NotNull
  29. private Integer salary;
  30. @NotEmpty
  31. private String address;
  32. @NotEmpty
  33. private String bae;
  34. @NotNull
  35. private Integer experience;
  36. @NotEmpty
  37. @Size(min = 6, max = 15)
  38. private String password;
  39. @NotEmpty
  40. @Ajay
  41. private String phone;
  42. @NotNull
  43. @Column(table="employeedetails")
  44. private Integer accno;
  45. public Integer getId() {
  46. return id;
  47. }
  48. public void setId(Integer id) {
  49. this.id = id;
  50. }
  51. public String getName() {
  52. return name;
  53. }
  54. public void setName(String name) {
  55. this.name = name;
  56. }
  57. public Integer getAge() {
  58. return age;
  59. }
  60. public void setAge(Integer age) {
  61. this.age = age;
  62. }
  63. public String getEmail() {
  64. return email;
  65. }
  66. public void setEmail(String email) {
  67. this.email = email;
  68. }
  69. public Integer getSalary() {
  70. return salary;
  71. }
  72. public void setSalary(Integer salary) {
  73. this.salary = salary;
  74. }
  75. public String getAddress() {
  76. return address;
  77. }
  78. public void setAddress(String address) {
  79. this.address = address;
  80. }
  81. public String getBae() {
  82. return bae;
  83. }
  84. public void setBae(String bae) {
  85. this.bae = bae;
  86. }
  87. public Integer getExperience() {
  88. return experience;
  89. }
  90. public void setExperience(Integer experience) {
  91. this.experience = experience;
  92. }
  93. public String getPassword() {
  94. return password;
  95. }
  96. public void setPassword(String password) {
  97. this.password = password;
  98. }
  99. public String getPhone() {
  100. return phone;
  101. }
  102. public void setPhone(String phone) {
  103. this.phone = phone;
  104. }
  105. public Integer getAccno() {
  106. return accno;
  107. }
  108. public void setAccno(Integer accno) {
  109. this.accno = accno;
  110. }
  111. }
  112.  
  113. Controller Class:
  114. package com.dineshonjava.controller;
  115. import java.util.ArrayList;
  116. import java.util.HashMap;
  117. import java.util.List;
  118. import java.util.Map;
  119. import javax.validation.Valid;
  120. import org.springframework.beans.factory.annotation.Autowired;
  121. import org.springframework.stereotype.Controller;
  122. import org.springframework.validation.BindingResult;
  123. import org.springframework.web.bind.annotation.ModelAttribute;
  124. import org.springframework.web.bind.annotation.RequestMapping;
  125. import org.springframework.web.bind.annotation.RequestMethod;
  126. import org.springframework.web.servlet.ModelAndView;
  127. import com.dineshonjava.bean.EmployeeBean;
  128. import com.dineshonjava.model.Employee;
  129. import com.dineshonjava.service.EmployeeService;
  130. @Controller
  131. public class EmployeeController {
  132. @Autowired
  133. private EmployeeService employeeService;
  134. @RequestMapping(value = "/save", method = RequestMethod.POST)
  135. public ModelAndView saveEmployee(@Valid @ModelAttribute("command") EmployeeBean employeeBean,
  136. BindingResult result) {
  137. if(result.hasErrors()){
  138.  
  139. return new ModelAndView("addEmployee");
  140. }
  141. Employee employee = prepareModel(employeeBean);
  142. employeeService.addEmployee(employee);
  143. Map<String, Object> model = new HashMap<String, Object>();
  144. model.put("employees", prepareListofBean(employeeService.listEmployeess()));
  145. return new ModelAndView("displayEmployee",model);
  146. }
  147. @RequestMapping(value = "/saved", method = RequestMethod.POST)
  148. public ModelAndView savedEmployee(@Valid @ModelAttribute("command") EmployeeBean employeeBean,
  149. BindingResult result) {
  150. if(result.hasErrors()){
  151.  
  152. return new ModelAndView("addEmployee");
  153. }
  154. Employee employee = prepareModel(employeeBean);
  155. employeeService.addEmployee(employee);
  156. Map<String, Object> model = new HashMap<String, Object>();
  157. model.put("employees", prepareListofBean(employeeService.listEmployeess()));
  158. return new ModelAndView("displayEmployee",model);
  159. }
  160. @RequestMapping(value="/employees", method = RequestMethod.GET)
  161. public ModelAndView listEmployees() {
  162. Map<String, Object> model = new HashMap<String, Object>();
  163. model.put("employees", prepareListofBean(employeeService.listEmployeess()));
  164. return new ModelAndView("employeesList", model);
  165. }
  166.  
  167. @RequestMapping(value = "/add", method = RequestMethod.GET)
  168. public ModelAndView addEmployee(@Valid @ModelAttribute("command") EmployeeBean employeeBean,
  169. BindingResult result) {
  170. if(result.hasErrors()){
  171.  
  172. return new ModelAndView("addEmployee");
  173. }
  174. Map<String, Object> model = new HashMap<String, Object>();
  175. model.put("employees", prepareListofBean(employeeService.listEmployeess()));
  176. return new ModelAndView("addEmployee", model);
  177. }
  178.  
  179. @RequestMapping(value = "/index", method = RequestMethod.GET)
  180. public ModelAndView welcome() {
  181. return new ModelAndView("index");
  182. }
  183.  
  184. @RequestMapping(value = "/delete", method = RequestMethod.GET)
  185. public ModelAndView editEmployee(@ModelAttribute("command") EmployeeBean employeeBean,
  186. BindingResult result) {
  187. employeeService.deleteEmployee(prepareModel(employeeBean));
  188. Map<String, Object> model = new HashMap<String, Object>();
  189. model.put("employee", null);
  190. model.put("employees", prepareListofBean(employeeService.listEmployeess()));
  191. return new ModelAndView("displayEmployee", model);
  192. }
  193.  
  194. @RequestMapping(value = "/edit", method = RequestMethod.GET)
  195. public ModelAndView deleteEmployee(@Valid @ModelAttribute("command") EmployeeBean employeeBean,
  196. BindingResult result) {
  197. if(result.hasErrors()){
  198. Map<String, Object> model = new HashMap<String, Object>();
  199. model.put("employee", prepareEmployeeBean(employeeService.getEmployee(employeeBean.getId())));
  200. model.put("employees", prepareListofBean(employeeService.listEmployeess()));
  201. return new ModelAndView("editEmployee", model);
  202. }
  203. Map<String, Object> model = new HashMap<String, Object>();
  204. model.put("employee", prepareEmployeeBean(employeeService.getEmployee(employeeBean.getId())));
  205. model.put("employees", prepareListofBean(employeeService.listEmployeess()));
  206. return new ModelAndView("displayEmployee", model);
  207. }
  208.  
  209. private Employee prepareModel(EmployeeBean employeeBean){
  210. Employee employee = new Employee();
  211. employee.setAddress(employeeBean.getAddress());
  212. employee.setAge(employeeBean.getAge());
  213. employee.setName(employeeBean.getName());
  214. employee.setSalary(employeeBean.getSalary());
  215. employee.setId(employeeBean.getId());
  216. employee.setBae(employeeBean.getBae());
  217. employee.setExperience(employeeBean.getExperience());
  218. employee.setEmail(employeeBean.getEmail());
  219. employee.setPassword(employeeBean.getPassword());
  220. employee.setPhone(employeeBean.getPhone());
  221. employee.setAccno(employeeBean.getAccno());
  222. employeeBean.setId(null);
  223. return employee;
  224. }
  225. private List<EmployeeBean> prepareListofBean(List<Employee> employees){
  226. List<EmployeeBean> beans = null;
  227. if(employees != null && !employees.isEmpty()){
  228. beans = new ArrayList<EmployeeBean>();
  229. EmployeeBean bean = null;
  230. for(Employee employee : employees){
  231. bean = new EmployeeBean();
  232. bean.setName(employee.getName());
  233. bean.setId(employee.getId());
  234. bean.setAddress(employee.getAddress());
  235. bean.setSalary(employee.getSalary());
  236. bean.setAge(employee.getAge());
  237. bean.setBae(employee.getBae());
  238. bean.setExperience(employee.getExperience());
  239. bean.setEmail(employee.getEmail());
  240. bean.setPassword(employee.getPassword());
  241. bean.setPhone(employee.getPhone());
  242. bean.setAccno(employee.getAccno());
  243. beans.add(bean);
  244. }
  245. }
  246. return beans;
  247. }
  248. private EmployeeBean prepareEmployeeBean(Employee employee){
  249. EmployeeBean bean = new EmployeeBean();
  250. bean.setAddress(employee.getAddress());
  251. bean.setAge(employee.getAge());
  252. bean.setName(employee.getName());
  253. bean.setSalary(employee.getSalary());
  254. bean.setId(employee.getId());
  255. bean.setBae(employee.getBae());
  256. bean.setExperience(employee.getExperience());
  257. bean.setEmail(employee.getEmail());
  258. bean.setPassword(employee.getPassword());
  259. bean.setPhone(employee.getPhone());
  260. bean.setAccno(employee.getAccno());
  261. return bean;
  262. }
  263. }
  264. EmployeeDisplay.jsp:
  265. <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
  266. pageEncoding="ISO-8859-1"%>
  267. <%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
  268. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
  269. <%@ taglib uri="http://www.springframework.org/tags/form"
  270. prefix="form"%>
  271. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
  272. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  273. <html>
  274. <head>
  275. <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  276. <title>Spring MVC Form Handling</title>
  277. </head>
  278. <style>
  279. .error {
  280. color: red; font-weight: bold;
  281. }
  282. </style>
  283. <body>
  284. <h2>Add Employee Data</h2>
  285. <form:form method="POST" action="/sdnext/save.html">
  286. <table>
  287. <tr>
  288. <td align="left" width="20%">EmployeeID: </td>
  289.  
  290. <td align="left" width="40%"><form:input path="id" readonly="true" size="30"/></td>
  291.  
  292. </tr>
  293. <tr>
  294. <td align="left" width="20%">Name: </td>
  295. <td align="left" width="40%"><form:input path="name" size="30"/></td>
  296. <td><form:errors path="name" cssClass="error"/></td>
  297. </tr>
  298. <tr>
  299. <td align="left" width="20%">Age: </td>
  300. <td align="left" width="40%"><form:input path="age" size="30"/></td>
  301. <td align="left"><form:errors path="age" cssClass="error"/></td>
  302. </tr>
  303. <tr>
  304. <td align="left" width="20%">salary: </td>
  305. <td align="left" width="40%"><form:input path="salary" size="30"/></td>
  306. <td align="left"><form:errors path="salary" cssClass="error"/></td>
  307. </tr>
  308.  
  309. <tr>
  310. <td align="left" width="20%">Address: </td>
  311. <td align="left" width="40%"><form:input path="address" size="30"/></td>
  312. <td><form:errors path="address" cssClass="error"/></td>
  313. </tr>
  314. <tr>
  315. <td align="left" width="20%">Bae: </td>
  316. <td align="left" width="40%"><form:input path="bae" size="30"/></td>
  317. <td><form:errors path="bae" cssClass="error"/></td>
  318. </tr>
  319. <tr>
  320. <td align="left" width="20%">Experience: </td>
  321. <td align="left" width="40%"><form:input path="experience" size="30"/></td>
  322. <td><form:errors path="experience" cssClass="error"/></td>
  323.  
  324. </tr>
  325. <tr>
  326. <td align="left" width="20%">Email: </td>
  327. <td align="left" width="40%"><form:input path="email" size="30"/></td>
  328. <td><form:errors path="email" cssClass="error"/></td>
  329. </tr>
  330. <tr>
  331. <td>Password: </td>
  332. <td><form:password path="password" size="30"/></td>
  333. <td><form:errors path="password" cssClass="error"/></td>
  334. </tr>
  335. <tr>
  336. <td align="left" width="20%">Phone: </td>
  337. <td align="left" width="40%"><form:input path="phone" size="30"/></td>
  338. <td><form:errors path="phone" cssClass="error"/></td>
  339. </tr>
  340. <tr>
  341. <td align="left" width="20%">Accno: </td>
  342. <td align="left" width="40%"><form:input path="accno" size="30"/></td>
  343. <td><form:errors path="accno" cssClass="error"/></td>
  344. </tr>
  345. <tr>
  346. <td colspan="2"><input type="submit" value="Submit"/></td>
  347. </tr>
  348. </table></form:form>
  349. </body>
  350. </html>
  351.  
  352. EmployeeDisplay.jsp:
  353. <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
  354. pageEncoding="ISO-8859-1"%>
  355. <%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
  356. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
  357. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  358. <html>
  359. <head>
  360. </head>
  361. <body>
  362. <c:if test="${!empty employees}">
  363. <table align="left" border="1">
  364. <tr>
  365. <th>Employee ID</th>
  366. <th>Employee Name</th>
  367. <th>Employee Age</th>
  368. <th>Employee Salary</th>
  369. <th>Employee Address</th>
  370. <th>Employee Bae</th>
  371. <th>Employee Experience</th>
  372. <th>Employee Email</th>
  373. <th>Password</th>
  374. <th>Phone</th>
  375. <th>Account Number</th>
  376. <th>Action Performed</th>
  377. </tr>
  378. <c:forEach items="${employees}" var="employee">
  379. <tr>
  380. <td><c:out value="${employee.id}"/></td>
  381. <td><c:out value="${employee.name}"/></td>
  382. <td><c:out value="${employee.age}"/></td>
  383. <td><c:out value="${employee.salary}"/></td>
  384. <td><c:out value="${employee.address}"/></td>
  385. <td><c:out value="${employee.bae }"/></td>
  386. <td><c:out value="${employee.experience }"/></td>
  387. <td><c:out value="${employee.email}"/></td>
  388. <td><c:out value="${employee.password}"/></td>
  389. <td><c:out value="${employee.phone}"></c:out>
  390. <td><c:out value="${employee.accno}"></c:out>
  391.  
  392. <td align="center"><a href="edit.html?id=${employee.id}">Edit</a> | <a href="delete.html?id=${employee.id}">Delete</a></td>
  393. </tr>
  394. </c:forEach>
  395. </table>
  396. </c:if>
  397. </body>
  398. </html>
Add Comment
Please, Sign In to add comment