회원가입 / 로그인 (아이디중복확인) 을 실습했다!
스프링아..친해지자..
특이했던 점
매퍼
인서트문의 ? 가 #{변수명}으로 들어간다
- @Insert("INSERT INTO MEMBER VALUES(#{id},#{pw},#{name},#{tel})")
.
셀렉트문의 where절의 ? 가 #{param1}...으로 들어간다- @Select("SELECT COUNT(*) FROM member WHERE id = #{param1} AND pw = #{param2}")
.컨트롤러
- @ResponseBody 비동기에는 넣어줘야한다
public interface IMemberMapper {
@Select("SELECT * FROM member")
public List<MemberDTO> getMemberList();
@Insert("INSERT INTO MEMBER VALUES(#{id},#{pw},#{name},#{tel})")
public int insertMember(MemberDTO dto);
@Select("SELECT COUNT(*) FROM member WHERE id = #{id}")
public int checkId(String id);
@Delete("DELETE FROM member WHERE id = #{id}")
public int deleteMember(String id);
@Select("SELECT COUNT(*) FROM member WHERE id = #{param1} AND pw = #{param2}")
public int login(String id, String pw);
}
public interface IMemberService {
public List<MemberDTO> getMemberList();
public int insertMember(MemberDTO dto);
public int checkId(String id);
public int deleteMember(String id);
public int login(String id, String pw);
}
@Service
public class MemberServiceImpl implements IMemberService {
@Autowired
private IMemberMapper memberMapper;
@Override
public List<MemberDTO> getMemberList() {
List<MemberDTO> list = new ArrayList<>();
list = memberMapper.getMemberList();
return list;
}
@Override
public int insertMember(MemberDTO dto) {
int result = memberMapper.insertMember(dto);
return result;
}
@Override
public int checkId(String id) {
int result = memberMapper.checkId(id);
System.out.println("impl"+result);
return result;
}
@Override
public int deleteMember(String id) {
int result = memberMapper.deleteMember(id);
return result;
}
@Override
public int login(String id, String pw) {
int result = memberMapper.login(id, pw);
return result;
}
}
public class MemberController {
@Autowired
IMemberService service;
//비동기방식으로 처리해줘서 넣어주었습니다....
@ResponseBody
@RequestMapping("/checkId")
public int checkId(String id) {
System.out.println(id);
int result = service.checkId(id);
System.out.println(result);
return result;
}
// @ResponseBody
@RequestMapping("/deleteMember")
public String deleteMember(String id, Model model) {
System.out.println(id);
int result = service.deleteMember(id);
if(result == 1) {
String message = "삭제완료";
// model.addAttribute("msg",message);
}else {
System.out.println("왜안지워져쓰까?");
}
List<MemberDTO> list = service.getMemberList();
model.addAttribute("memberList",list);
return "member/memberList";
}
@RequestMapping("/loginPage")
public void loginPage() {
}
@ResponseBody
@RequestMapping("/login")
public int login(String id, String pw, Model model) {
int result = service.login(id, pw);
if(result == 1) {
model.addAttribute("id", id);
}
return result;
}
@RequestMapping("/index")
public void index() {
}