https://spring.io/tools3/sts/all - sts 다운로드 링크
기존 작업하던 디렉토리가 아닌 c 드라이브 밑에서 압축을 풀어야 한다.
압축을 푸는데 실패가 나올 경우 여기에 압축풀기
sts bundle폴더가 있으면 성공
sts-3.9.11.RELEASE / 안의 STS.exe 실행
실행 후 워크스페이스 경로를 지정
이클립스와 유사//
스프링 내에 서버가 내장돼어있다.
Spring Legacy Project -> Spring MVC Project
패키지 디렉토리는 3개 이상
클래스 패스
1. 프로젝트 외부
장점 : 가벼워짐(용량)
단점 : 이동이 어렵다. (클래스 패스 다시 잡아줘야함)
2. 프로젝트 내부(WEB_INF/lib/*.jar
장점 : 이동이 쉽다.
단점 : 무겁다.
위 둘의 단점을 해결 한것이 maven
클래스 패스를 따로 잡아 주지 않아도 되며 관련된 외부에 저장된
파일의 클래스 패스를 잡아줌
자료 저장
C:\Users\bit(사용자명).m2 에 저장
pom.xml 수정 (스프링은 세팅이 50% 이상)
java-version : 1.8
springframework-version : 5.0.7.RELEASE
서블릿 버전
스프링이 자바를 못찾을 수 있으므로 안정성을 위해
jre에도 해당 파일이 있기 때문에 javaw.exe의 절대경로를 직접 매핑해준다.
스프링 디렉토리에 STS-ini에
-vm
C:\Program Files\Java\jdk1.8.0_271\bin\javaw.exe를(개인 디렉토리 절대경로) 추가
//역할 분배 web.xml은 database 설정 담당 그외의 부가적인 부분은 root-content.xml
servlet-context.xml 은 컨트롤러 담당
lombok.jar
해당 디렉토리
java -jar lombok.jar
log4j.xml root의 value= warn -> info로 변경
[ -> %5B
] -> %5D
json 데이터를 자동으로 만들어줌 jackson-databind
롬복패키지를 통한 로깅 서비스 (Sysout 대체) log4j
log.info ...
생성자, getter/setter를 자동으로 생성해줌 lombok
@NoArgsConstructor
@AllArgsConstructor
@Data
test 부분은 구간별 테스트를 하는 junit파일 넣어서 사용한다
resources 디렉토리는 xml... 등 의 자바 외의 파일이 들어간다.
스프링 Request Mapping
@RequestMapping("/base1") get/post
@RequestMapping(value = "/base2", method = RequestMethod.GET) get
@RequestMapping(value = "/base3", method = {RequestMethod.GET, RequestMethod.POST}) get/post