위에서 부서명을 추가해 보여주게 하자.
EmpDto수정
package test.db; public class EmpDto { private int empno; private String ename; private int sal; private String dname; public int getEmpno() { return empno; } public void setEmpno(int empno) { this.empno = empno; } public String getEname() { return ename; } public void setEname(String ename) { this.ename = ename; } public int getSal() { return sal; } public void setSal(int sal) { this.sal = sal; } public String getDname() { return dname; } public void setDname(String dname) { this.dname = dname; } }
EmpListController 수정
package test.db; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.AbstractController; public class EmpListController extends AbstractController { @Override protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception { //보통 모델부를 호출하지만 그냥 하자 간단하게.. //datebase connection pooling도 안쓰고 그냥 일반 jdbc방법을 쓰자. Connection cn = null; PreparedStatement st = null; ResultSet rs = null; String sql = "SELECT e.empno, e.ename, e.sal, d.dname " + "FROM t_emp e, t_dept d " + "WHERE e.deptno =d.deptno ORDER BY 1 ASC"; List<EmpDto> list = new ArrayList<EmpDto>(); try { Class.forName("oracle.jdbc.OracleDriver"); cn = DriverManager.getConnection( "jdbc:oracle:thin:@localhost:1521:xe", "oraclejava", "oraclejava"); st = cn.prepareStatement(sql); rs = st.executeQuery(); while(rs.next()) { EmpDto dto = new EmpDto(); dto.setEmpno(rs.getInt("empno")); dto.setEname(rs.getString("ename")); dto.setSal(rs.getInt("sal")); dto.setDname(rs.getString("dname")); list.add(dto); } } catch (Exception e) { e.printStackTrace(); } finally { if(rs != null ) try {rs.close();} catch(Exception e) {} if(st != null ) try {st.close();} catch(Exception e) {} if(cn != null ) try {cn.close();} catch(Exception e) {} } //view에다 뿌려야지 ModelAndView mav = new ModelAndView(); mav.setViewName("/test/emplist.jsp"); mav.addObject("list", list); return mav; } }
emplist.jsp 수정
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <!-- uri=""사이에서 ctrl-space하면 사용가능 목록나와 --> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> <link rel="stylesheet" href="css/board.css" type="text/css"> </head> <body> <table> <caption>사원리스트</caption> <tr> <th>사원번호</th> <th>이름</th> <th>급여</th> <th>부서명</th> </tr> <c:forEach items="${list }" var="dto"> <tr> <td align="center">${dto.empno }</td> <td align="center">${dto.ename }</td> <td align="center">${dto.sal }</td> <td align="center">${dto.dname }</td> </tr> </c:forEach> </table> </body> </html>
.
.
.
.
.