1. 의존성 설정 ( pom.xml ) - https://mvnrepository.com/ 검색
2. 내장톰캣 port 번호, context 변경 ( application.properties )
3. Mysql 연동 설정 ( application.properties )
4. MainController (MainServlet) 생성 (패키지도 생성)
-> 당연히 처음 생성하니까 GetMapping, 일단 String으로 생성했고 main.jsp로 연결해야 해서 return "main";
파라미터에는 request.getParameter 역할을 해줄
@RequestParam(required = false, defaultValue = "top") 저장되는 변수
저장되는 변수는 Mapper, 서비스 생성 후 적는듯
5. 서비스 생성 ( 패키지 생성 )
6. DTO 생성 ( 패키지 생성 ) ( DTO는 비즈니스 로직을 포함하지 않는 데이터를 전달하기 위한 단순한 객체 )
-> 우클릭 - 소스 - superclass, using field, getter setter, toString() 생성
7. 서비스
인터페이스 안에 내용은 지금 적지말고 Mapper 생성후 .java랑 동일하게 작성
8. ServiceImpl 재정의 (@Service 어노테이션 추가)
9. 서비스는 Mapper를 연동해야 해서 Mapper(DAO) 생성
xml 파일의 namespace와 .java의 패키지가 동일한지 확인
10. Mapper 작성
public 리턴타입 메서드(id값) 파라미터타입
goodsList는 여러개니까 List로 받아주기
11. Mapper는 서비스에서 쓰니까 서비스에 Mapper 주입하기
주입 받는 방법은 @AutoWired ( 권장안함 ) 혹은 생성자(using Field) 주입
12. 서비스에 Mapper 주입 후 메서드 호출
13. 서비스를 쓰는 게 컨트롤러니까 컨트롤러에 서비스 주입하고 메서드 호출
List<GoodsDTO> goodsList = goodsService.goodsList(gCategory);
서비스에 있는 goodsList를 goodsList란 이름으로 받아주기
모델에 저장하기
파라미터에 Model or ModelMap
m.addAttribute ( "뷰에 전달될 속성의 이름 ", 뷰에 전달될 실제 데이터(값) )
14. main.jsp만 보여주면 끝
15. main.jsp에서 bootstrap, jquery 대신 webJar 사용
16. 이미지, css도 static 밑에 넣으면 가능