회원가입 기능구현2/2

- MemberService.java 인터페이스 추가
- MemberServiceImpl.java 추가
	- 회원가입 메서드 추가
- MemberController.java 코드 추가
	- 회원가입 메서드 추가(joinPost())
- join.jsp 코드 변경 및 추가
	- 제이쿼리 연결 코드 추가
	- 버튼 작동 코드 추가
	- form 속성변경
	- input 속성 추가
- MemberMapperTests.java 추가
	- 회원가입 mapper메서드 테스트
This commit is contained in:
SeoJin Kim
2020-08-13 16:42:37 +09:00
parent e75f4cef04
commit 32b7c50539
14 changed files with 235 additions and 20 deletions

View File

@@ -2,26 +2,48 @@ package com.vam.controller;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import com.vam.model.MemberVO;
import com.vam.service.MemberService;
@Controller
@RequestMapping(value="/member")
public class MemberController {
private static final Logger logger = LoggerFactory.getLogger(MemberController.class);
@Autowired
private MemberService memberservice;
//회원가입 페이지 이동
@RequestMapping(value="join", method=RequestMethod.GET)
@RequestMapping(value="/join", method=RequestMethod.GET)
public void loginGET() {
logger.info("회원가입 페이지 진입");
}
//회원가입
@RequestMapping(value="/join", method=RequestMethod.POST)
public String joinPOST(MemberVO member) throws Exception{
logger.info("join 진입");
// 회원가입 서비스 실행
memberservice.memberJoin(member);
logger.info("join Service 성공");
return "redirect:/main";
}
//로그인 페이지 이동
@RequestMapping(value="login", method = RequestMethod.GET)
@RequestMapping(value="/login", method = RequestMethod.GET)
public void joinGET() {
logger.info("로그인 페이지 진입");

View File

@@ -0,0 +1,10 @@
package com.vam.service;
import com.vam.model.MemberVO;
public interface MemberService {
//회원가입
public void memberJoin(MemberVO member) throws Exception;
}

View File

@@ -0,0 +1,24 @@
package com.vam.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.vam.mapper.MemberMapper;
import com.vam.model.MemberVO;
@Service
public class MemberServiceImpl implements MemberService{
@Autowired
MemberMapper membermapper;
@Override
public void memberJoin(MemberVO member) throws Exception {
membermapper.memberJoin(member);
}
}

View File

@@ -6,11 +6,15 @@
<meta charset="UTF-8">
<title>Insert title here</title>
<link rel="stylesheet" href="/resources/css/member/join.css">
<script
src="https://code.jquery.com/jquery-3.4.1.js"
integrity="sha256-WpOohJOqMqqyKL9FccASB9O0KwACQJpFTUBLTYOVvVU="
crossorigin="anonymous"></script>
</head>
<body>
<div class="wrapper">
<form action="">
<form id="join_form" method="post">
<div class="wrap">
<div class="subjecet">
<span>회원가입</span>
@@ -18,13 +22,13 @@
<div class="id_wrap">
<div class="id_name">아이디</div>
<div class="id_input_box">
<input class="id_input">
<input class="id_input" name="memberId">
</div>
</div>
<div class="pw_wrap">
<div class="pw_name">비밀번호</div>
<div class="pw_input_box">
<input class="pw_input">
<input class="pw_input" name="memberPw">
</div>
</div>
<div class="pwck_wrap">
@@ -36,13 +40,13 @@
<div class="user_wrap">
<div class="user_name">이름</div>
<div class="user_input_box">
<input class="user_input">
<input class="user_input" name="memberName">
</div>
</div>
<div class="mail_wrap">
<div class="mail_name">이메일</div>
<div class="mail_input_box">
<input class="mail_input">
<input class="mail_input" name="memberMail">
</div>
<div class="mail_check_wrap">
<div class="mail_check_input_box">
@@ -58,7 +62,7 @@
<div class="address_name">주소</div>
<div class="address_input_1_wrap">
<div class="address_input_1_box">
<input class="address_input_1">
<input class="address_input_1" name="memberAddr1">
</div>
<div class="address_button">
<span>주소 찾기</span>
@@ -67,12 +71,12 @@
</div>
<div class ="address_input_2_wrap">
<div class="address_input_2_box">
<input class="address_input_2">
<input class="address_input_2" name="memberAddr2">
</div>
</div>
<div class ="address_input_3_wrap">
<div class="address_input_3_box">
<input class="address_input_3">
<input class="address_input_3" name="memberAddr3">
</div>
</div>
</div>
@@ -83,5 +87,17 @@
</form>
</div>
<script>
$(document).ready(function(){
//회원가입 버튼(회원가입 기능 작동)
$(".join_button").click(function(){
$("#join_form").attr("action", "/member/join");
$("#join_form").submit();
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,37 @@
package com.vam.mapper;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import com.vam.model.MemberVO;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("file:src/main/webapp/WEB-INF/spring/root-context.xml")
public class MemberMapperTests {
@Autowired
private MemberMapper membermapper; //MemberMapper.java 인터페이스 의존성 주입
//회원가입 쿼리 테스트 메서드
@Test
public void memberJoin() throws Exception{
MemberVO member = new MemberVO();
member.setMemberId("test"); //회원 id
member.setMemberPw("test"); //회원 비밀번호
member.setMemberName("test"); //회원 이름
member.setMemberMail("test"); //회원 메일
member.setMemberAddr1("test"); //회원 우편번호
member.setMemberAddr2("test"); //회원 주소
member.setMemberAddr3("test"); //회원 상세주소
membermapper.memberJoin(member); //쿼리 메서드 실행
}
}

View File

@@ -2,26 +2,48 @@ package com.vam.controller;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import com.vam.model.MemberVO;
import com.vam.service.MemberService;
@Controller
@RequestMapping(value="/member")
public class MemberController {
private static final Logger logger = LoggerFactory.getLogger(MemberController.class);
@Autowired
private MemberService memberservice;
//회원가입 페이지 이동
@RequestMapping(value="join", method=RequestMethod.GET)
@RequestMapping(value="/join", method=RequestMethod.GET)
public void loginGET() {
logger.info("회원가입 페이지 진입");
}
//회원가입
@RequestMapping(value="/join", method=RequestMethod.POST)
public String joinPOST(MemberVO member) throws Exception{
logger.info("join 진입");
// 회원가입 서비스 실행
memberservice.memberJoin(member);
logger.info("join Service 성공");
return "redirect:/main";
}
//로그인 페이지 이동
@RequestMapping(value="login", method = RequestMethod.GET)
@RequestMapping(value="/login", method = RequestMethod.GET)
public void joinGET() {
logger.info("로그인 페이지 진입");

View File

@@ -0,0 +1,10 @@
package com.vam.service;
import com.vam.model.MemberVO;
public interface MemberService {
//회원가입
public void memberJoin(MemberVO member) throws Exception;
}

View File

@@ -0,0 +1,23 @@
package com.vam.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.vam.mapper.MemberMapper;
import com.vam.model.MemberVO;
@Service
public class MemberServiceImpl implements MemberService {
@Autowired
MemberMapper membermapper;
@Override
public void memberJoin(MemberVO member) throws Exception {
membermapper.memberJoin(member);
}
}

View File

@@ -6,11 +6,15 @@
<meta charset="UTF-8">
<title>Insert title here</title>
<link rel="stylesheet" href="/resources/css/member/join.css">
<script
src="https://code.jquery.com/jquery-3.4.1.js"
integrity="sha256-WpOohJOqMqqyKL9FccASB9O0KwACQJpFTUBLTYOVvVU="
crossorigin="anonymous"></script>
</head>
<body>
<div class="wrapper">
<form action="">
<form id="join_form" method="post">
<div class="wrap">
<div class="subjecet">
<span>회원가입</span>
@@ -18,13 +22,13 @@
<div class="id_wrap">
<div class="id_name">아이디</div>
<div class="id_input_box">
<input class="id_input">
<input class="id_input" name="memberId">
</div>
</div>
<div class="pw_wrap">
<div class="pw_name">비밀번호</div>
<div class="pw_input_box">
<input class="pw_input">
<input class="pw_input" name="memberPw">
</div>
</div>
<div class="pwck_wrap">
@@ -36,13 +40,13 @@
<div class="user_wrap">
<div class="user_name">이름</div>
<div class="user_input_box">
<input class="user_input">
<input class="user_input" name="memberName">
</div>
</div>
<div class="mail_wrap">
<div class="mail_name">이메일</div>
<div class="mail_input_box">
<input class="mail_input">
<input class="mail_input" name="memberMail">
</div>
<div class="mail_check_wrap">
<div class="mail_check_input_box">
@@ -58,7 +62,7 @@
<div class="address_name">주소</div>
<div class="address_input_1_wrap">
<div class="address_input_1_box">
<input class="address_input_1">
<input class="address_input_1" name="memberAddr1">
</div>
<div class="address_button">
<span>주소 찾기</span>
@@ -67,12 +71,12 @@
</div>
<div class ="address_input_2_wrap">
<div class="address_input_2_box">
<input class="address_input_2">
<input class="address_input_2" name="memberAddr2">
</div>
</div>
<div class ="address_input_3_wrap">
<div class="address_input_3_box">
<input class="address_input_3">
<input class="address_input_3" name="memberAddr3">
</div>
</div>
</div>
@@ -83,5 +87,17 @@
</form>
</div>
<script>
$(document).ready(function(){
//회원가입 버튼(회원가입 기능 작동)
$(".join_button").click(function(){
$("#join_form").attr("action", "/member/join");
$("#join_form").submit();
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,35 @@
package com.vam.mapper;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import com.vam.model.MemberVO;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("file:src/main/webapp/WEB-INF/spring/root-context.xml")
public class MemberMapperTests {
@Autowired
private MemberMapper membermapper; //MemberMapper.java 인터페이스 의존성 주입
//회원가입 쿼리 테스트 메서드
@Test
public void memberJoin() throws Exception{
MemberVO member = new MemberVO();
member.setMemberId("test"); //회원 id
member.setMemberPw("test"); //회원 비밀번호
member.setMemberName("test"); //회원 이름
member.setMemberMail("test"); //회원 메일
member.setMemberAddr1("test"); //회원 우편번호
member.setMemberAddr2("test"); //회원 주소
member.setMemberAddr3("test"); //회원 상세주소
membermapper.memberJoin(member); //쿼리 메서드 실행
}
}