[Salle] 1. 회원가입 페이지 (5) - INSERT문

2020. 12. 1. 22:37프로젝트/Salle(살래) 중고거래 웹

728x90

요약

  • 구글링 + 참고서 = 생산성 향상
  • 덕분에 MVC 구조를 생각하며 설계해봤다. Mapper를 Service에 Autowired해서 구현하는 것처럼
  • TODO: DB에 반영하고 여력이 된다면 로그인 Service 구현까지 해보기

진행사항

  • DB 연동은 Mybatis 이용(JPA, JDBC와 다르게 SQL문을 별도의 XML파일에서 관리하기 때문에 편리하단 장점이 있음)
  • INSERT문
    • Mapper XML 파일 - Mapper 인터페이스
    • Service 클래스에서 Mapper 메서드 구현
    • Controller - View에서 받은 입력값을 ModelAttribute로 객체로 만듦. 객체를 Service 메서드 매개변수에 담아 실행.
    • Mapper XML에서 SQL문 자동실행. #{}로서 변수 자동 insert 바인딩? Yes

이슈

  • jsp 파일 modelAttribute 연동 시 'cannot find Bean' error 발생
    • 별도의 메서드로 만들어주니 작동됨. 매개변수에 넣었던 게 문제였음. 왜 인식을 못하는지는 모르겠음.
    • 본질적 문제는 POST가 아닌 GET이었음. ModelAttribute를 사용하기 위해선 빈 Model을 addAttribute 해줘야 함
      • modelAttribute에 담을 객체를 model을 통해 같은 이름으로 jsp에 전달해줘야 함
  • 이슈는 아니지만 intellij 팁. 드래그해서 문단 들여쓰기 단축키
    • shift + tab