회원정보수정
1. 회원 정보 수정 페이지 이동
📑 MemberController.jsp
@RequestMapping("/memUpdateForm.do")
public String memUpdateForm(){
return "member/memUpdateForm";
}
📑 memUpdateForm.jsp
<form name="frm" action="${contextPath}/memUpdate.do" method="post">
<input type="hidden" id="memID" name="memID" value="${mvo.memID}"/>
<input type="hidden" id="memPassword" name="memPassword" value=""/>
<table class="table table-bordered" style="text-align: center; border: 1px solid #dddddd;">
<tr>
<td style="width: 110px; vertical-align: middle;">아이디</td>
<td>${mvo.memID}</td>
</tr>
<tr>
<td style="width: 110px; vertical-align: middle;">비밀번호</td>
<td colspan="2"><input id="memPassword1" name="memPassword1" onkeyup="passwordCheck()" class="form-control" type="password" maxlength="20" placeholder="비밀번호를 입력하세요."/></td>
</tr>
<tr>
<td style="width: 110px; vertical-align: middle;">비밀번호확인</td>
<td colspan="2"><input id="memPassword2" name="memPassword2" onkeyup="passwordCheck()" class="form-control" type="password" maxlength="20" placeholder="비밀번호를 확인하세요."/></td>
</tr>
<tr>
<td style="width: 110px; vertical-align: middle;">사용자 이름</td>
<td colspan="2"><input id="memName" name="memName" class="form-control" type="text" maxlength="20" placeholder="이름을 입력하세요." value="${mvo.memName}"/></td>
</tr>
<tr>
<td style="width: 110px; vertical-align: middle;">나이</td>
<td colspan="2"><input id="memAge" name="memAge" class="form-control" type="number" maxlength="20" placeholder="나이를 입력하세요." value="${mvo.memAge}"/></td>
</tr>
<tr>
<td style="width: 110px; vertical-align: middle;">성별</td>
<td colspan="2">
<div class="form-group" style="text-align: center; margin: 0 auto;">
<div class="btn-group" data-toggle="buttons">
<label class="btn btn-primary <c:if test="${mvo.memGender eq '남자'}"> active</c:if>">
<input type="radio" name="memGender" autocomplete="off" value="남자"
<c:if test="${mvo.memGender eq '남자'}"> checked</c:if> />남자
</label>
<label class="btn btn-primary <c:if test="${mvo.memGender eq '여자'}"> active</c:if>">
<input type="radio" name="memGender" autocomplete="off" value="여자"
<c:if test="${mvo.memGender eq '여자'}"> checked</c:if> />여자
</label>
</div>
</div>
</td>
</tr>
<tr>
<td style="width: 110px; vertical-align: middle;">이메일</td>
<td colspan="2"><input id="memEmail" name="memEmail" class="form-control" type="text" maxlength="20" placeholder="이메일을 입력하세요." value="${mvo.memEmail}"/></td>
</tr>
<tr>
<td colspan="3" style="text-align: left;">
<span id="passMessage" style="color: red"></span><input type="button" class="btn btn-primary btn-sm pull-right" value="수정" onclick="goUpdate()"/>
</td>
</tr>
</table>
</form>
1) 세션(Session)에 저장된 ${ mvo } 을 사용하여 현제 user의 정보를 뿌려준다.
2) 성별은 radio 박스로 하나가 체크되어야한다. < c: if > 문을 사용하여 ${mvo.성별} eq "성별값" 동일 한 것을 체크하여 선택된 상태를 active, checked 를 추가 한다.
3) 수정 버튼을 클릭시 onclick="goUpdate()" 메서드 실행 >> 가입할때와 동일한 유효성 검사 ↓ 후 Form이 저장 되도록한다.
2. 유효성 검사
goUpdate( ) 스크립트 내용생략, 아래 유효성 검사 방법 확인
3. 로그인 성공시 팝업 및 회원정보 섹션 저장
가입할때와 동일한 구성 요소(회원가입 성공, 실패 내용 확인 ↑)
📑 MemberController.jsp
@RequestMapping("/memUpdate.do")
public String memUpdate(Member m, RedirectAttributes rttr,
String memPassword1, String memPassword2, HttpSession session) {
...
}
// 회원을 수정저장하기
int result=memberMapper.memUpdate(m);
if(result==1) { // 수정성공 메세지
rttr.addFlashAttribute("msgType", "성공 메세지");
rttr.addFlashAttribute("msg", "회원정보 수정에 성공했습니다.");
// 회원수정이 성공하면=>로그인처리하기
session.setAttribute("mvo", m); // ${!empty mvo}
return "redirect:/";
}else {
rttr.addFlashAttribute("msgType", "실패 메세지");
rttr.addFlashAttribute("msg", "회원정보 수정에 실패했습니다.");
return "redirect:/memUpdateForm.do";
}
📑 MemberMapper.java
publicf int memUpdate(Member vo);
📑 MemberMapper.xml
<update id="memUpdate" parameterType="kr.board.entity.Member">
update mem_tbl set memPassword=#{memPassword}, memName=#{memName},
memAge=#{memAge},memGender=#{memGender},memEmail=#{memEmail}
where memID=#{memID}
</update>
'BackEnd > Spring Boot' 카테고리의 다른 글
[ Spring ] JAVA 기반의 환경설정 방법 (0) | 2023.03.04 |
---|---|
[ String ] 파일 업로드 기능 Api ( cos.jar ) (0) | 2023.03.04 |
[ Spring ] 로그인 / 로그아웃 처리 (0) | 2023.03.02 |
[ Spring ] 회원가입 유효성 검사 및 성공·실패 여부 - (3) 회원가입 (0) | 2023.03.02 |
[ Spring ] 비밀번호 일치 확인 - (2) 회원가입 (0) | 2023.03.02 |