티스토리 뷰
01. @GetMapping
get 방식으로 페이지 호출
RETURN 응답시 html 의 경로
@GetMapping("/addMember")
public String addMember(Model model) {
System.out.println("/addMember GET방식 요청");
model.addAttribute("title", "회원등록");
return "member/addMember";
}
02. HTML
src/main/resources/templates/member/addMember.html
<form th:action="@{/member/addMember}" method="POST">
<table border="1">
<tr>
<td>
<label for="memberId">회원아이디</label>
</td>
<td>
<input type="text" id="memberId" name="memberId"/>
</td>
</tr>
<tr>
<td>
<label for="memberPw">회원비밀번호</label>
</td>
<td>
<input type="text" id="memberPw" name="memberPw"/>
</td>
</tr>
<tr>
<td>회원권한</td>
<td>
<select name="memberLevel">
<option value="1">관리자</option>
<option value="2">판매자</option>
<option value="3">구매자</option>
<option value="4">회원</option>
</select>
</td>
</tr>
<tr>
<td>
<label for="memberName">회원이름</label>
</td>
<td>
<input type="text" id="memberName" name="memberName"/>
</td>
</tr>
<tr>
<td>
<label for="memberEmail">회원이메일</label>
</td>
<td>
<input type="text" id="memberEmail" name="memberEmail"/>
</td>
</tr>
<tr>
<td>
<label for="memberAddr">회원주소</label>
</td>
<td>
<input type="text" id="memberAddr" name="memberAddr"/>
</td>
</tr>
<tr>
<td colspan="2">
<button type="submit">입력완료</button>
</td>
</tr>
</table>
</form>
03.
MemberService.java
@Service
@Transactional
public class MemberService {
}
04.
memberController.java
@PostMapping
POST 방식으로 페이지 호출
@PostMapping("/addMember")
public String addMember() {
return "redirect:/member/memberList";
}
05.
memberService의 addMember 메서드를 호출
@PostMapping("/addMember")
public String addMember(Member member) {
System.out.println("MemberController 회원등록 화면에서 입력받은 값: "+member);
memberService.addMember(member);
return "redirect:/member/memberList";
}
06.
MemberService.java
executeUpdate( ) 반영된 레코드의 건수를 반환
public int addMember(Member member) {
int result = memberMapper.addMember(member);
return result;
}
07. sql 문 작성
MemberMapper.xml
<insert id="addMember" parameterType="Member">
INSERT INTO tb_member
(
m_id
,m_pw
,m_name
,m_level
,m_email
,m_addr
,m_reg_date
)VALUES(
#{memberId}
,#{memberPw}
,#{memberName}
,#{memberLevel}
,#{memberEmail}
,#{memberAddr}
,CURDATE()
);
</insert>
08. null 체크, 중복확인
MemberController.java
@PostMapping("/addMember")
public String addMember(Member member) {
System.out.println("MemberConttoller 회원등록 화면에서 입력받은 값: " + member);
//insert 처리
String memeberId = member.getMemberId();
//null 체크
if(memeberId != null && !"".equals(memeberId)) {
memberService.addMember(member); //요 구문이 빠졌다고 회원추가 안됨
}
return "redirect:/member/memberList";
}
'41기 개발자과정' 카테고리의 다른 글
20211217 Object 클래스 (0) | 2021.12.17 |
---|---|
20211217 Super, final (0) | 2021.12.17 |
20211208 SpringBoot, MyBatis 회원조회 (0) | 2021.12.14 |
20211208 MVC 실행 흐름 (0) | 2021.12.08 |
20211208 Mybatis (0) | 2021.12.08 |