본문 바로가기

Web/Spring

Spring EMP 뿌려주기

문제?


쿼리문 실행을 보기위해 설정한 것!!

emp를 가지고와서 목록 뿌려주기!!!


1. controller 패키지에 EmpController 작성(DeptController 참고)
2. dao 패키지에 EmpDao 작성 (DeptDao 참고)
3. dto 패키지에 EmpDto 작성 (Emp 테이블의 컬럼들을 빈으로 작성) getSett메소드
4. mapper 패키지에 emp.xml 작성
   resultType = "kr.or.javac.dto.EmpDto" 로 선언.
5. /Web-INF/views/emp/list.jsp 작성 ( forEach> 태그로 사원 리스트를 보여줌)




EmpController.java

경로 : SpringProject/src/main/java/kr/or/javac/controller/EmpController.java


package kr.or.javac.controller;

import kr.or.javac.dao.*;
import java.util.*;

import org.springframework.beans.factory.annotation.*;
import org.springframework.stereotype.*;
import org.springframework.ui.*;
import org.springframework.web.bind.annotation.*;


@Controller

-- 설정한 컴포넌트 스캔을 통하여 로딩된( <bean> tag를 써서 일일이 등록된 class도 )

-- @Controller를 적용한 Class는 DefaultAnnotationHandlerMapping을 통해 컨트롤로 사용된다.


public class EmpController {
    @Autowired

--  @Autowired 어노테이션은 Spring에서 의존관계를 자동으로 설정할때 사용된다.
     이 어노테이션은 생성자, 필드, 메서드 세곳에 적용이 가능하다
    private Empdao dao;
   
    @RequestMapping   
    (value="/emp/list", method=RequestMethod.GET)

    // GET 방식으로

   //@RequestMapping의 value 형태의 url이 들어오면 helloJabsiri method를 호출 하겠다는 것


   
    public String List(ModelMap map){
        List list = dao.getList();
        map.put("list", list);          //request.setAttribute("list",list) 와 동일한 작동

        // modelMap은 @mvc를 통해 만들어진 결과를 뷰 페이지에 전달하기 위한 맵입니다.

         return "/emp/list";
    }
}



 


EmpDto.java

경로 : SpringProject/src/main/java/kr/or/javac/dto/EmpDto.java


package kr.or.javac.dto;

public class EmpDto {

    private String empno;
    private String ename;
    private String job;
    private String mgr;
    private String hiredate;
    private String sal;
    private String comm;
    private String deptno;
   
    public String getEmpno() {
        return empno;
    }
    public void setEmpno(String empno) {
        this.empno = empno;
    }
    public String getEname() {
        return ename;
    }
    public void setEname(String ename) {
        this.ename = ename;
    }
    public String getJob() {
        return job;
    }
    public void setJob(String job) {
        this.job = job;
    }
    public String getMgr() {
        return mgr;
    }
    public void setMgr(String mgr) {
        this.mgr = mgr;
    }
    public String getHiredate() {
        return hiredate;
    }
    public void setHiredate(String hiredate) {
        this.hiredate = hiredate;
    }
    public String getSal() {
        return sal;
    }
    public void setSal(String sal) {
        this.sal = sal;
    }
    public String getComm() {
        return comm;
    }
    public void setComm(String comm) {
        this.comm = comm;
    }
    public String getDeptno() {
        return deptno;
    }
    public void setDeptno(String deptno) {
        this.deptno = deptno;
    }
}


emp.xml

경로 : SpringProject/src/main/java/kr/or/javac/mapper/emp.xml


<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="emp">
    <select id="getlist" resultType="kr.or.javac.dto.EmpDto">
        select * from emp
    </select>
</mapper>


 


Empdao.java

경로 : SpringProject/src/main/java/kr/or/javac/dao/Empdao.java


package kr.or.javac.dao;

import java.util.*;

import org.apache.ibatis.session.*;
import org.springframework.beans.factory.annotation.*;
import org.springframework.stereotype.*;

@Repository
-- @Repository를 적용한 Class는 DataBaseAccess를 할수 있는 Dao로 등록된다.
public class Empdao {

    @Autowired
    private SqlSession mapper;
    // SqlSession MyBatis를 사용하기 위한 기본적인 자바 인터페이스 이다.
    public List getList() {
        return mapper.selectList("emp.getlist");
        // mapper namespace = "emp" // mapper id = "getlist" 이다..
    }
}


list.jsp

경로 : SpringProject/src/main/webapp/WEB-INF/views/emp/list.jsp


<?xml version="1.0" encoding="UTF-8" ?>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<% String cp = request.getContextPath(); %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>EMP 테이블이당당당당당</title>
</head>
<body>
<h1>emp 테이블</h1>
<table border="1" bgcolor="red">
        <c:forEach var="ltem" items="${list }">
            <tr>
                <td>${ltem.empno }</td>
                <td>${ltem.ename }</td>
                <td>${ltem.job }</td>
                <td>${ltem.mgr }</td>
                <td>${ltem.hiredate }</td>
                <td>${ltem.sal }</td>
                <td>${ltem.comm }</td>
                <td>${ltem.deptno }</td>
            </tr>
        </c:forEach>
    </table>
</body>
</html>


★ 결과


'Web > Spring' 카테고리의 다른 글

Visual Svn  (0) 2012.08.09
Spring 게시판 만들기~  (0) 2012.08.09
ibatise 설정  (0) 2012.08.08
Spring Post 한글 처리 방식  (0) 2012.08.08
Spring DataSource Maven 방식 설정  (0) 2012.08.08