Notice
Recent Posts
Recent Comments
Link
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

개(발)린이

Spring(회원 가입 DB 저장 - 2) 본문

Spring

Spring(회원 가입 DB 저장 - 2)

불도정 2023. 4. 26. 23:31

이번시간엔 본격적으로 DB에 회원정보를 저장하는 기능을 구현해 보겠다.

 

먼저 컨트롤러를 먼저 만들어준다.

@PostMapping("/signUp")
	public String signUp(@ModelAttribute Member signUpMember,
						RedirectAttributes ra) {
		
		int result = service.signUp(signUpMember);
				
		if(result > 0) {
			ra.addFlashAttribute("message", "회원가입이 완료되었습니다.");
			return "redirect:/";
		} else {
			ra.addFlashAttribute("message", "입력한 정보가 옳바르지 않습니다.");
			return "member/signUp";
		}
	}

form태그에 action 속성값이 signUp이므로 @PostMapping("/signUp")을 작성하였다.

Member VO를 파라미터로 가져오기 위해 @ModelAttribute를 사용하였다.

그리고 결과값에 따라 메시지를 출력해주기 위해 RedirectAttributes도 추가하였다.

 

다음엔 서비스 인터페이스에 추상메소드를 추가해주고

public abstract int signUp(Member signUpMember);

 

MemberServiceImpl 클래스에 오버라이드 하여 메소드를 추가해준다.

@Override
	public int signUp(Member signUpMember) {
		
		//비밀번호 암호화
		signUpMember.setMemberPw(bcrypt.encode(signUpMember.getMemberPw()));
		
		return dao.signUp(signUpMember);
	}

비밀번호 암호화는 잊지 말자

 

다음은 member-mapper.xml에있는 insert 태그이다

<insert id="signUp" parameterType="member">
	   		INSERT INTO MEMBER_S VALUES(
	   		SEQ_MEMBER_NO_S.NEXTVAL,
	   		#{memberEmail},
	   		#{memberPw},
	   		#{memberNickname},
	   		#{memberTel},
	   		#{memberAddress},
	   		DEFAULT, DEFAULT, DEFAULT)
	   </insert>

modelAttribute를 사용했기 때문에 파라미터타입은 member로 설정하고 insert기 때문에 result는 작성하지 않는다

 

그리고 이제 회원가입을 해보자

 

외적으로는 우선 유효성 검사는 통과하였다.

 

회원가입 완료 메시지가 출력되었다.

이제 DB에가서 잘 입력되었는지 확인해보자

 

잘 입력되었다

비밀번호 암호화까지 잘 수행되었다.

 

다음엔 이메일을 조회하면 그 유저에 대한 정보가 출력되는 기능을 한번 만들어 보겠다.

 

'Spring' 카테고리의 다른 글

String(my page)  (0) 2023.05.01
Spring(예외처리)  (0) 2023.04.27
Spring(회원 가입 - DB저장)  (0) 2023.04.26
Spring(회원가입 - 이메일 중복 체크)  (0) 2023.04.26
Spring(암호화)  (0) 2023.04.26