회원 정보를 클릭하면 해당 아이디의 회원 정보를 보여주며 세션이 있는 사용자만 마이페이지의 회원 정보를 상세 조회를 할 수 있다.
<label for="id">아이디</label>
<input type="text" name="id" id="id" value="${info.id }" readonly>
<input type="password" name="pwd" id="pwd" value="${info.pwd }"
class="user-margin" readonly>
<다른 항목들도 같은 코드로 불러온다. (생략)>
해당 회원의 정보를 readonly
로 불러온다.
비밀번호 경우는 보이면 안되는 정보라 type
을 password
했기 때문에 보이지 않지만 이 부분을 안불러와도 된다.
@GetMapping("myInfo")
public String myInfo(HttpSession session, Model model)throws Exception {
String id = (String) session.getAttribute(LOGIN);
model.addAttribute("info", ms.memberInfo(id));
return "member/myInfo";
}
세션을 가져와서 세션 객체 안에 있는 회원 아이디 정보를 저장한다.
서비스로 회원 정보를 연결하는데 이 값을 model에 저장하고 페이지 이동을 한다.
public memberDTO memberInfo(String id);
public memberDTO memberInfo(String id){
memberDTO dto = null;
try {
dto = memberMapper.memberInfo(id);
} catch (Exception e) {
e.printStackTrace();
}
return dto;
}
public memberDTO memberInfo(String memberId);
<select id="memberInfo" resultMap="member">
select * from box_member where buser_id = #{id}
</select>
해당 아이디를 가진 회원 정보를 불러오는 쿼리문을 작성한다.