Insert시 필요한 지역(Region),직위(Position),부서(Department)
/*=================================
#19EmployeeInsertFormController.java
- 사용자 정의 컨트롤러 클래스
- 직원 데이터 입력폼 요청에 대한 액션 처리
- DAO 객체에 대한 의존성 주입(DI)을 위한 준비
→DB에 접근해 직위,지역목록을 가져와야...
→ 인터페이스 자료형 속성 구성.
→ setter 메소드 정의
==================================*/
package com.test.mvc;
import java.util.ArrayList;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
public class EmployeeInsertFormController implements Controller
{
private IEmployeeDAO dao;
public void setDao(IEmployeeDAO dao)
{
this.dao = dao;
}
@Override
public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception
{
//하는 일은 doGet , doPost 와 같다.
//컨트롤러 내부 액션 처리 코드
ModelAndView mav = new ModelAndView();
ArrayList<Region> regionList = new ArrayList<Region>();
ArrayList<Department> departmentList = new ArrayList<Department>();
ArrayList<Position> positionList = new ArrayList<Position>();
try
{
regionList = dao.regionList();
departmentList = dao.departmentList();
positionList = dao.positionList();
mav.addObject("regionList", regionList);
mav.addObject("departmentList", departmentList);
mav.addObject("positionList", positionList);
mav.setViewName("/WEB-INF/view/EmployeeInsertForm.jsp");
} catch (Exception e)
{
System.out.println(e.toString());
// TODO: handle exception
}
return mav;
}
}
<!-- 직원 데이터 입력 폼 Controller 등록 -->
<bean name="/employeeinsertform.action" class="com.test.mvc.EmployeeInsertFormController">
<property name="dao" ref="employeeDAO"></property>
</bean>
<form action="">
<input type="button" value="직원 추가" class="btn btn-primary control" onclick="location.href='employeeinsertform.action'">
</form>
<%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%
request.setCharacterEncoding("UTF-8");
String cp = request.getContextPath();
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<link rel="stylesheet" type="text/css" href="<%=cp %>/css/main.css">
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
</head>
<body>
<!--------------------------------------------------
#20. EmployeeList.jsp
-직원 데이터 입력 폼 페이지
-관리자가 접근하는 직원 데이터 페이지
---------------------------------------------------->
<div>
<!-- 메뉴 영역 -->
<div>
<c:import url="EmployeeMenu.jsp"></c:import>
</div>
<!-- 콘텐츠 영역 -->
<div id ="content">
<h1>[직원 관리] > [직원 정보 입력]</h1>
<hr>
<form action="employeeinsert.action" method="post" id="employeeForm">
<table>
<tr>
<th>이름</th>
<td>
<input type="text" id="name" name="name" placeholder="이름 입력">
</td>
</tr>
<tr>
<th>주민번호</th>
<td>
<input type="text" id="ssn1" name="ssn1" style="width: 100px;">
-
<input type="text" id="ssn2" name="ssn2" style="width: 110px;">
</td>
</tr>
<tr>
<th>생년월일</th>
<td>
<input type="text" id="birthday" name="birthday" placeholder="생년월일">
</td>
</tr>
<tr>
<th>양/음력</th>
<td>
<input type="radio" value="0" name="lunar" id="lunar0" checked="checked">
<label for="lunar0">양력</label>
<input type="radio" value="1" name="lunar" id="lunar1">
<label for="lunar1">음력</label>
</td>
</tr>
<tr>
<th>전화번호</th>
<td>
<input type="tel" id="telephone" name="telephone" placeholder="ex) 010-1234-1234">
</td>
</tr>
<tr>
<th>지역</th>
<td>
<select name="regionId" id="regionId">
<!--
<option value="1">마포</option>
<option value="2">서초</option>
<option value="3">은평</option> -->
<c:forEach var="region" items="${regionList }">
<option value = "${region.regionId}">${region.regionName }</option>
</c:forEach>
</select>
</td>
</tr>
<tr>
<th>부서</th>
<td>
<select name="departmentId" id="departmentId">
<!-- <option value="1">독서부</option>
<option value="2">바둑부</option>
<option value="3">축구부</option> -->
<c:forEach var="department" items="${departmentList }">
<option value="${department.departmentId }">
${department.departmentName }
</option>
</c:forEach>
</select>
</td>
</tr>
<tr>
<th>직위</th>
<td>
<select name="positionId" id="positionId">
<!-- <option value="1">독서부</option>
<option value="2">바둑부</option>
<option value="3">축구부</option> -->
<c:forEach var="position" items="${positionList }">
<option value="${position.positionId }">
${position.positionName }
</option>
</c:forEach>
</select>
</td>
</tr>
<tr>
<th>기본급</th>
<td>
<input type="text" id="basicPay" name="basicPay"/>
(최소 기본급
<span id="minBasicPay" style="color: red; font-weight: bold;">0</span>원)
</td>
</tr>
<tr>
<th>수당</th>
<td>
<input type="text" id="extraPay" name="extraPay" />
</td>
</tr>
<tr>
<td colspan="2" align="center">
<br><br>
<button type="button" class="btn btn-primary" id="submitBtn" style="width: 40%">직원 추가</button>
<button type="button" class="btn btn-primary" id="listBtn" style="width: 40%" >직원 리스트</button>
<br><br>
<span id="err" style="color: red; font-weight: bold; display: none;">
</span>
</td>
</tr>
</table>
</form>
</div>
<!-- 회사 소개 및 어플리케이션 소개 영역 -->
<div id="footer">
</div>
</div>
</body>
</html>
<!--내 코드 -->
<script type="text/javascript">
$(function()
{
$("#positionId").change(function()
{
//alert("아");
//alert($("#positionId").val());
var positionId = $("#positionId").val();
혹은
var param = "positionId="+$("#positionId").val();
$.ajax(
{
type : "POST"
, url : "ajax.action"
, data : {positionId:positionId}
, success : function(args)
{
$("#minBasicPay").html(args);
}
, beforeSend:showRequest
, error : function(e)
{
alert(e.responseText);
}
});
});
});
function showRequest()
{
return true;
}
</script>
<script type="text/javascript">
// $();
// jquery();
$(document).ready(function()
{
// Ajax 요청 및 응답 처리
ajaxRequest();
//-- 지금은 페이지 최초 요청되었을 때만 minBasicPay 뿌려주는 형태
// 그게 아니라 selectbox 바뀔 때마다 뿌려줘야 한다. (Line 51에 작성)
// 테스트
//alert("확인");
// 먼저, 아래에서 ajax요청과 관련된 함수 만들고 오자
// 직위(select)의 선택된 내용이 변경되었을 경우 수행해야 할 코드 처리
$("#positionId").change(function()
{
// 테스트
//alert("변경~!!!");
// Ajax 요청 및 응답 처리
ajaxRequest();
});
// 직원 추가 버튼이 클릭되었을 때 수행해야 할 코드 처리
$("#submitBtn").click(function()
{
// 테스트
//alert("버튼 클릭~!!!");
// 테스트
//alert($("#minBasicPay").val()); //--(Ⅹ)
// └→ 아무것도 안나옴. 이렇게 얻어낼 수 없다.
//alert($("#minBasicPay").text()); //--(○)
// 데이터 검사(누락된 입력값이 있는지 없는지에 대한 여부 확인)
if ($("#name").val()=="" || $("#ssn1").val()=="" || $("#ssn2").val()==""
|| $("#birthday").val()=="" || $("#telephone").val()==""
|| $("#basicPay").val()=="")
{
$("#err").html("필수 입력 항목이 누락되었습니다.");
$("#err").css("display", "inline");
return; //-- submit 액션 처리 중단
}
// 최소 기본급에 대한 유효성 검사
// if (직급별최소기본급 > 사용자가입력한기본급) {return;}
// $("#minBasicPay").text() > $("#basicPay").val() 그냥 이대로 산술비교 불가
// 정수형태로 변환해줘야 한다.
if ( parseInt($("#minBasicPay").text()) > parseInt($("#basicPay").val()) )
{
$("#err").html("입력하신 기본급이 최소 기본급보다 작습니다.");
$("#err").css("display", "inline");
return; //-- submit 액션 처리 중단
}
// 폼 submit 액션 처리 수행
$("#employeeForm").submit();
//직원 리스트 버튼이 클릭되었을 경우 수행할 코드 처리
//onclick="location.href='employeeinsertform.action'"
$("#listBtn").click(function()
{
location.href="employeeinsertform.action";
});
});
});
// ajax요청과 관련된 함수
function ajaxRequest()
{
//alert("Ajax 요청 및 응답 처리");
// 『$.post()』 / 『$.get()』
//-- jQuery 에서 Ajax 를 써야 할 경우 지원해주는 함수
// (서버 측에서 요청한 데이터를 받아오는 기능의 함수)
// ※ 이 함수(『$.post()』)의 사용 방법(방식)
//-- 『$.post(요청주소, 전송데이터, 응답액션처리)』
// ·요청주소(url)
// → 데이터를 요청할 파일에 대한 정보
// ·전송데이터(data)
// → 서버 측에 요청하는 과정에서 내가 전달할 파라미터
// ·응답액션처리(function)
// → 응답을 받을 수 있는 함수
// 기능 처리
// ※ 참고로... data 는 파라미터의 데이터타입을 그대로 취하게 되므로
// html 이든... 문자열이든... 상관이 없다.
$.post("ajax.action", {positionId: $("#positionId").val()}, function(data)
{
$("#minBasicPay").html(data);
});
//--① ~~.action 이라는 약속은 지켜서 구성해야 한다.
// ② 직위의 selectBox 에 선택된 Id를 넘겨주면 된다.
// ③ position 넘겨주고 받은거 파라미터로 받는 함수
// id가 minBasicPay인 거에 그 값 넣어서 출력되게 해주면 된다.
// 그러면 ajax.action 에 응답하는 뭔가가 있어야 한다.
// → dispatcher-servlet 건드려야 한다.
}
</script>
<bean name="/ajax.action" class="com.test.mvc.AjaxController">
<property name="dao" ref="employeeDAO"></property>
</bean>
/*=================================
#22. AjaxController.java
- 사용자 정의 컨트롤러 클래스
==================================*/
/*
EmployeeDAO.java 에 만들어놨던 내용 중에
직위 아이디에 따른 최소 기본급 확인/검색해주는 메소드를 비즈니스 로직삼아서 일함
→ getMinBasicpay()
그 값을 Ajax.jsp 에 두면 된다.
*/
package com.test.mvc;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
//※ Spring 이 제공하는 『Controller』 인터페이스를 구현함으로써
// 사용자 정의 컨트롤러 클래스를 구성한다.
public class AjaxController implements Controller
{
private IEmployeeDAO dao;
//Controller 인페이스의 handleRequest()메소드 재정의
public void setDao(IEmployeeDAO dao)
{
this.dao = dao;
}
@Override
public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception
{
//하는 일은 doGet , doPost 와 같다.
//컨트롤러 내부 액션 처리 코드
ModelAndView mav = new ModelAndView();
String positionId = request.getParameter("positionId");
System.out.println(positionId);
int minBasicPay = 0;
minBasicPay = dao.getMinBasicPay(positionId);
mav.addObject("minBasicPay", minBasicPay);
mav.setViewName("/WEB-INF/view/Ajax.jsp");
return mav;
}
}
<%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%
request.setCharacterEncoding("UTF-8");
String cp = request.getContextPath();
%>
${minBasicPay}
<link rel="stylesheet" type="text/css" href="<%=cp %>/css/jquery-ui.css">
<script type="text/javascript" src="<%=cp%>/js/jquery-ui.js"></script>
위 두개 추가
<script type="text/javascript">
// jQuery-UI 캘린더를 불러오는 함수 처리(datepicker())
//-- id가 birthday인 걸 클릭하면 달력 나오게 하고 싶은 거
$("#birthday").datepicker(
{
//-- 여기까지하고 확인해보면 생년월일 클릭하면 달력나오고
// 날짜 선택하면 달력 사라지고 텍스트박스에 해당 날짜 들어감
// 날짜 05/01/2022 로 들어가고 있음
// jquery-ui.js 의 dateFormat: "mm/dd/yy" 에 구문에 의해서
// 아래와 같이 해당 속성 이름 쓰고 변경해줄 수 있다~
dateFormat: "yy-mm-dd"
, changeMonth: true
, changeYear: true
});
</script>
<%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%
request.setCharacterEncoding("UTF-8");
String cp = request.getContextPath();
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<link rel="stylesheet" type="text/css" href="<%=cp %>/css/main.css">
<link rel="stylesheet" type="text/css" href="<%=cp %>/css/jquery-ui.css">
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript" src="<%=cp%>/js/jquery-ui.js"></script>
<script type="text/javascript">
// $();
// jquery();
$(document).ready(function()
{
// Ajax 요청 및 응답 처리
ajaxRequest();
//-- 지금은 페이지 최초 요청되었을 때만 minBasicPay 뿌려주는 형태
// 그게 아니라 selectbox 바뀔 때마다 뿌려줘야 한다. (Line 51에 작성)
// 테스트
//alert("확인");
// jQuery-UI 캘린더를 불러오는 함수 처리(datepicker())
//-- id가 birthday인 걸 클릭하면 달력 나오게 하고 싶은 거
$("#birthday").datepicker(
{
//-- 여기까지하고 확인해보면 생년월일 클릭하면 달력나오고
// 날짜 선택하면 달력 사라지고 텍스트박스에 해당 날짜 들어감
// 날짜 05/01/2022 로 들어가고 있음
// jquery-ui.js 의 dateFormat: "mm/dd/yy" 에 구문에 의해서
// 아래와 같이 해당 속성 이름 쓰고 변경해줄 수 있다~
dateFormat: "yy-mm-dd"
, changeMonth: true
, changeYear: true
});
// 먼저, 아래에서 ajax요청과 관련된 함수 만들고 오자
// 직위(select)의 선택된 내용이 변경되었을 경우 수행해야 할 코드 처리
$("#positionId").change(function()
{
// 테스트
//alert("변경~!!!");
// Ajax 요청 및 응답 처리
ajaxRequest();
});
// 직원 추가 버튼이 클릭되었을 때 수행해야 할 코드 처리
$("#submitBtn").click(function()
{
// 테스트
//alert("버튼 클릭~!!!");
// 테스트
//alert($("#minBasicPay").val()); //--(Ⅹ)
// └→ 아무것도 안나옴. 이렇게 얻어낼 수 없다.
//alert($("#minBasicPay").text()); //--(○)
// 데이터 검사(누락된 입력값이 있는지 없는지에 대한 여부 확인)
if ($("#name").val()=="" || $("#ssn1").val()=="" || $("#ssn2").val()==""
|| $("#birthday").val()=="" || $("#telephone").val()==""
|| $("#basicPay").val()=="")
{
$("#err").html("필수 입력 항목이 누락되었습니다.");
$("#err").css("display", "inline");
return; //-- submit 액션 처리 중단
}
// 최소 기본급에 대한 유효성 검사
// if (직급별최소기본급 > 사용자가입력한기본급) {return;}
// $("#minBasicPay").text() > $("#basicPay").val() 그냥 이대로 산술비교 불가
// 정수형태로 변환해줘야 한다.
if ( parseInt($("#minBasicPay").text()) > parseInt($("#basicPay").val()) )
{
$("#err").html("입력하신 기본급이 최소 기본급보다 작습니다.");
$("#err").css("display", "inline");
return; //-- submit 액션 처리 중단
}
//submit 액션 처리 수행
$("#employeeForm").submit();
//직원 리스트 버튼이 클릭되었을 경우 수행할 코드 처리
//onclick="location.href='employeeinsertform.action'"
$("#listBtn").click(function()
{
location.href="employeeinsertform.action";
});
});
});
// ajax요청과 관련된 함수
function ajaxRequest()
{
//alert("Ajax 요청 및 응답 처리");
// 『$.post()』 / 『$.get()』
//-- jQuery 에서 Ajax 를 써야 할 경우 지원해주는 함수
// (서버 측에서 요청한 데이터를 받아오는 기능의 함수)
// ※ 이 함수(『$.post()』)의 사용 방법(방식)
//-- 『$.post(요청주소, 전송데이터, 응답액션처리)』
// ·요청주소(url)
// → 데이터를 요청할 파일에 대한 정보
// ·전송데이터(data)
// → 서버 측에 요청하는 과정에서 내가 전달할 파라미터
// ·응답액션처리(function)
// → 응답을 받을 수 있는 함수
// 기능 처리
// ※ 참고로... data 는 파라미터의 데이터타입을 그대로 취하게 되므로
// html 이든... 문자열이든... 상관이 없다.
$.post("ajax.action", {positionId: $("#positionId").val()}, function(data)
{
$("#minBasicPay").html(data);
});
//--① ~~.action 이라는 약속은 지켜서 구성해야 한다.
// ② 직위의 selectBox 에 선택된 Id를 넘겨주면 된다.
// ③ position 넘겨주고 받은거 파라미터로 받는 함수
// id가 minBasicPay인 거에 그 값 넣어서 출력되게 해주면 된다.
// 그러면 ajax.action 에 응답하는 뭔가가 있어야 한다.
// → dispatcher-servlet 건드려야 한다.
</script>
</head>
<body>
<!--------------------------------------------------
#20. EmployeeList.jsp
-직원 데이터 입력 폼 페이지
-관리자가 접근하는 직원 데이터 페이지
---------------------------------------------------->
<div>
<!-- 메뉴 영역 -->
<div>
<c:import url="EmployeeMenu.jsp"></c:import>
</div>
<!-- 콘텐츠 영역 -->
<div id ="content">
<h1>[직원 관리] > [직원 정보 입력]</h1>
<hr>
<form action="employeeinsert.action" method="post" id="employeeForm">
<table>
<tr>
<th>이름</th>
<td>
<input type="text" id="name" name="name" placeholder="이름 입력">
</td>
</tr>
<tr>
<th>주민번호</th>
<td>
<input type="text" id="ssn1" name="ssn1" style="width: 100px;">
-
<input type="text" id="ssn2" name="ssn2" style="width: 110px;">
</td>
</tr>
<tr>
<th>생년월일</th>
<td>
<input type="text" id="birthday" name="birthday" placeholder="생년월일">
</td>
</tr>
<tr>
<th>양/음력</th>
<td>
<input type="radio" value="0" name="lunar" id="lunar0" checked="checked">
<label for="lunar0">양력</label>
<input type="radio" value="1" name="lunar" id="lunar1">
<label for="lunar1">음력</label>
</td>
</tr>
<tr>
<th>전화번호</th>
<td>
<input type="tel" id="telephone" name="telephone" placeholder="ex) 010-1234-1234">
</td>
</tr>
<tr>
<th>지역</th>
<td>
<select name="regionId" id="regionId">
<!--
<option value="1">마포</option>
<option value="2">서초</option>
<option value="3">은평</option> -->
<c:forEach var="region" items="${regionList }">
<option value = "${region.regionId}">${region.regionName }</option>
</c:forEach>
</select>
</td>
</tr>
<tr>
<th>부서</th>
<td>
<select name="departmentId" id="departmentId">
<!-- <option value="1">독서부</option>
<option value="2">바둑부</option>
<option value="3">축구부</option> -->
<c:forEach var="department" items="${departmentList }">
<option value="${department.departmentId }">
${department.departmentName }
</option>
</c:forEach>
</select>
</td>
</tr>
<tr>
<th>직위</th>
<td>
<select name="positionId" id="positionId">
<!-- <option value="1">독서부</option>
<option value="2">바둑부</option>
<option value="3">축구부</option> -->
<c:forEach var="position" items="${positionList }">
<option value="${position.positionId }">
${position.positionName }
</option>
</c:forEach>
</select>
</td>
</tr>
<tr>
<th>기본급</th>
<td>
<input type="text" id="basicPay" name="basicPay"/>
(최소 기본급
<span id="minBasicPay" style="color: red; font-weight: bold;">0</span>원)
</td>
</tr>
<tr>
<th>수당</th>
<td>
<input type="text" id="extraPay" name="extraPay" />
</td>
</tr>
<tr>
<td colspan="2" align="center">
<br><br>
<button type="button" class="btn btn-primary" id="submitBtn" style="width: 40%">직원 추가</button>
<button type="button" class="btn btn-primary" id="listBtn" style="width: 40%" >직원 리스트</button>
<br><br>
<span id="err" style="color: red; font-weight: bold; display: none;">
</span>
</td>
</tr>
</table>
</form>
</div>
<!-- 회사 소개 및 어플리케이션 소개 영역 -->
<div id="footer">
</div>
</div>
</body>
</html>
<bean name="/employeeinsert.action" class="com.test.mvc.EmployeeInsertController">
<property name="dao" ref="employeeDAO"></property>
</bean>
/*=================================
#23. EmployeeInsertController.java
- 사용자 정의 컨트롤러 클래스
- 직원 데이터 입력 액션 수행 및 해당 액션 처리 이후
『employeelist.action』을 요청할 수 있도록 안내
- DAO 객체에 대한 의존성 주입(DI)을 위한 준비.
→인터페이스 자료형
→setter 메소드 정의
==================================*/
package com.test.mvc;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
//※ Spring 이 제공하는 『Controller』 인터페이스를 구현함으로써
// 사용자 정의 컨트롤러 클래스를 구성한다.
public class EmployeeInsertController implements Controller
{
private IEmployeeDAO dao;
//Controller 인페이스의 handleRequest()메소드 재정의
public void setDao(IEmployeeDAO dao)
{
this.dao = dao;
}
@Override
public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception
{
//하는 일은 doGet , doPost 와 같다.
//컨트롤러 내부 액션 처리 코드
ModelAndView mav = new ModelAndView();
Employee employee = new Employee();
employee.setName(request.getParameter("name"));
employee.setSsn1(request.getParameter("ssn1"));
employee.setSsn2(request.getParameter("ssn2"));
employee.setBirthday(request.getParameter("birthday"));
employee.setLunar(Integer.parseInt(request.getParameter("lunar")));
employee.setTelephone(request.getParameter("telephone"));
employee.setRegionId(request.getParameter("regionId"));
employee.setDepartmentId(request.getParameter("departmentId"));
employee.setPositionId(request.getParameter("positionId"));
employee.setBasicPay(Integer.parseInt(request.getParameter("basicPay")));
employee.setExtraPay(Integer.parseInt(request.getParameter("extraPay")));
int result = dao.employeeAdd(employee);
System.out.println(request.getParameter("name"));
System.out.println(request.getParameter("ssn1"));
System.out.println(request.getParameter("ssn2"));
System.out.println(request.getParameter("birthday"));
System.out.println(Integer.parseInt(request.getParameter("lunar")));
System.out.println(request.getParameter("telephone"));
System.out.println(request.getParameter("regionId"));
System.out.println(request.getParameter("departmentId"));
System.out.println(request.getParameter("positionId"));
System.out.println(Integer.parseInt(request.getParameter("basicPay")));
System.out.println(Integer.parseInt(request.getParameter("extraPay")));
System.out.println(result);
// check~!!!
//mav.setViewName("EmployeeList.jsp");
// 내가 추가해줄테니까 넌 돌아가서 리스트 봐~ 라고 할껀데
// 위에처럼 view 호출해주면 안된다.
// 이건 뭐를 가지고 클라이언트 만나는 게 아님
// '내가 갱신했으니까, 클라이언트한테 다시 요청하라고 해' 라고 해야함
mav.setViewName("redirect:employeelist.action");
return mav;
}
}