Day 47, 48 - myBatis,JSP
프로젝트의 진행 과정은 아래의 순서라고 생각하면 된다
인력구성
요구분석
모델링
쿼리테스트
ARCHITECTURE
UI/UX 설계
구축(WATER FALL 등 개발방법론)
통합/시나리오테스트
배포/테스트
이행(API주석 작업 등)
유지보수
FBS 기능의 이름
WBS 어플리케이션의 이름
화면 controller dao 전달값 계속 확인
LOMBOK
DTO/VO(데이터 전송을 위해서 사용하는 객체)
1) private 멤버 필드
2) 생성자 / 생성자 overloading
3) getter/setter
4) toString() override
5) hashcode / equals override
myBatis , JSP 과정
dto 생성 -> SqlSessionFactoryManager 생성 -> Configuration.xml 생성 -> mapper.xml생성 -> Interface 생성 -> Implements -> JSP
dto : table에서 column 가져옴, 생성자, 필요하다면 생성자 Overloading, getter와 setter 생성, toString() override
SqlSessionFactoryManager : single-ton sqlSessionFactory 객체 생성, path 설정, Reader IO try-catch, getter 생성
Configuration.xml : properties resource 있다면 연결해주고 typeAlias도 설정해준다. iBatis에서는 mapper.xml 작성할 때마다 필요하면 설정해줘야했는데 myBatis는 Cofiguration에 한번에 하고 사용하면 된다. 굳 나머지 설정은 똑같다
environments default가 development / environment가 여러개 있을 수 도있으니 나중에 당황하지 마시길
mapper.mxl: namespace 조심 쿼리문 준비하면됨 쿼리 작성하기 전에 테스트부터 꼭 하시길(디비버에서 했음)
insert는 selectkey설정해주고 keyproperty 생성한 다음에 insert가 된다. 조심하시고 생성한 다음에 cofiguration.xml에 연결해줘야 함
JSP : Controller.jsp
순서 중요(7단계) : 커맨드 입력 받기, dao 생성, 분기, parameter 받기, dao 실행, scope객체에 담기, 페이지 이동
<% srciptlet 작성하면 된다
커맨드 입력 받기 : request.getParameter("command"); 받아서 반환타입 확인하고 받아줘라
dao 생성 : 위에서 만들어 놓은 dao 생성해라
분기 : command 입력 받은 것에 따라서 분기하면 된다(if). 받았으면 trim먼저 해주고 equals로 command 값을 비교하여 진행해라
parameter 받기 : 있으면 받고 없으면 받지마라 받아야하는 타입과 갯수 잘 파악해서 원래 문서에 다 있다 문서작업한거 보고하면 쉽고 request.getParameter로 받아라
dao 실행 : dao 실행하면 된다.
scope객체에 담기 : 일단 주로 pageContext.forward() 많이 했다