view - 타임리프로 (JSP 대신에 타임리프로 가야)
controller - 스프링으로 (이전보다 더 빠르고 쉽게 가능)
DAO 구현은 - MyBatis로 하게 될 것, 그리고 JPA (DB연결)
DI - @Autowired 같은걸 쓸 것
트랜잭션같은 것도 Spring으로
프론트단은,
DOM 대신할 수 있는건 jQuery , VueJS / React / Angular
- 우리는 React를 하게 될 것
또 다른 back단 : Node.js
- 자바스크립트의 백단
- 여기서도 MVC가 있는데
Jade... 등 해서 또 다른 백단 기술도 배울 것
- 톰캣과 같은 역할을 하는 것 : Express
//
Maven 프로젝트를 지금부터 만들 것
Git
STS
-> 일주일 배울 것
-> 프로젝트 바로 바로 해야 수업 따라갈 수 있을 것
실습 시간이 노는 시간이 아니라 완전히 공부를 해야하는 시간이 될 것!
ㅡㅡㅡㅡㅡ
> Spring tools 4
> window 버전 다운 (jar)
이클립스 와서
- 이클립스를 사용하겠지만 이클립스를 탈피할 것 (프로젝트 빌드업하는걸 다른 걸 쓰겠다는 것)
-
뭘 쓰든(이클립슨, vs..) 빌드툴이 같으면 편집이 다 가능하다는
Maven이 많이 쓰이는거고
Gradle이 얼리 어답터 느낌 - 빌드업이 빠른 장점
// 빌드업 도구인 Maven을 알아보자.
이걸 이클립스에 얹어서 사용 가능한 것
Maven을 이용해서 프로젝트를 만들어보자.
// 기존의 이클립스 이제 안 열거임. (기존 이클립스 지금 연 이유는 test 하기 위해 나눈 것)
Spring 넣은 이클립스를 사용할 것
1) maven 다운 받아보자
- 아파치거임
- https://maven.apache.org/download.cgi
-
메이븐이 있는 홈디렉토리 주소 복사해서 > 환경변수에 넣어줄 것
-환경변수는 MY PC 우클릭 누르면 됨
1) M2_HOME
C:\Users\Parkminjeong\Desktop\2021-02\tools\apache-maven-3.8.1
해서 만들기
2) PATH에 등록
3) 콘솔창 열고 확인
-> 버전이 나오면 정상!
// 이제 maven을 설치해보자.
그동안 이클립스에서 빌드업할 때는
new > 다이나믹 프로젝트...
-> 이제는 이클립스가 제공하는 형식이 아니라 maven 활용해서 만들 것
보통 프로젝트명 = 아키팩트
내가 만드는 결과물 = 아키팩트라는 아이디를 부여하는
맨 뒤 하양이 선택해서(maven) javaprj를 만든
- 장점 : 남이 만든 인공물을 기본 틀로 쓸 수 있는 것
vs 기존에는 아무것도 없는 빈 깡통에서 시작했었음
그리고 그렇게 만들어진 javaprj를 가지고 남들이 갔다 쓰쓸 수도 있고
- 그 때 충돌나지 않도록 Dgroupld라고 패키지처럼 써주는거고
1) 먼저 프로젝트 만들 수 있는 폴더 하나 만들자
mavenWorkspace
2) 프로젝트 만들기
mvn -help
이 중에서 가장 기본적인 architype? 만들어보자
스펠링 틀리면 안 됨. 그래서 복사하라고 주심
-> mvn archetype:generate -DgroupId=com.newlecture -DartifactId=javaprj -DarchetypeArtifactId=maven-archetype-quickstart
-> 뭔가 다운로드가 막 됨.
뭘?
왜?
뭘 정하라고 하는건 그냥 enter 치면 됨
3) 이 프로젝트 만들어서 편집을 해보자
- '편집기'가 없는데
-> source > main > 편집해보자
- 우리가 가진 편집기 VS
->
느낌표 몇 개를 넣어봤음 ㅎㅎ
자 이제 실행을 해보자.
compile 명령어를 좀 알아야...
다 패스(phases) 명령어
- 빌드업과 관련된 명령어
흰색 : 단계는 있으나 단계를 실행할 로직 아직 결합 안 된 것 (아무 의미 없는 단계)
파란색 : 우리가 많이 쓰는거
노란색 : 특정 로직이 설정되어 있는거
maven 한 다음에 validate 명령어, initialize 명령어...
maven 다음에 compile하면 쭉.... 이전거를 훓어서 지나감
- 마치 칩을 꽂아서 활성화시키는 느낌
노란색, 파란색 - 프로그램으로 칩 꽂을 수 있는? 곳
우리는 compile, test, package, install, deploy 등의 명령어는 기억하자
컴파일하려면 컴파일할 코드가 있는 곳에 가야함
- 컴파일 할 때 maven이 참고하는 것 : POM.xml
이거 보고 컴파일 옵션 확인, 설정된거 있는지 확인
꼭! POM 있는 곳에서 실행해야함
- 만약 그렇지 않으면 POM 있는 곳에서 실행하라고 오류메시지 뜸
컴파일 명령어 : mvn compile
에러나야 정상
- jdk 7 이상을 설정해서 쓰라는 오류
오류가 나는 이유
- phase : 단계는 maven이 결정 - 카세트
plug-in: '고리'는 우리가 결정 - 테입
- 하나의 plug-in이 2개 phase를 사용할 수도. 2군데 이상을 꽂을 수도 있는 것
- 문제는 '버전'을 얘기해주어야 함
이 컴파일 옵션을 수정해보자. (버전 맞추기)
POM.xml을 VS로 열어보자
-
우리가 사용하는 maven은 3.8.1
-> 플러그인 버전들을 바꿔보자.
plugin의 버전을3.8.1로 바꾸고
실행할 때는 1.8 버전으로 하라는 것 (jdk 버전인 것. 1.8 버전 이상에서 실행하라고 하는 것)
- 코드 안외워서 쳐도 된다.
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
-> 저장하고 다시 한 번 mvn compile 하면 오류가 안난다.
프로젝트에 target 생김 > 컴파일된 결과물 생김 > app.class
properties로 할 수도 있다.
VS에서 주석처리하고 아래로 써줘보자.
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
// 실행하는 방법
mvn package를 실행하면
-> target 안에 > jar 파일이 만들어짐. 이거를 가지고 실행을 한다!
C:\Users\내 이름\Desktop\2021-02\mavenWorkspace\javaprj 에서??
-> POM 있는 곳에서!
그럼 이게 만들어진다.
그 다음은 이 파일 이용해서 실행하는 것
main함수를 jar파일과 묶어서 배포가능한데
main 함수가 아니어도 특정 클래스 사용하려면 풀 패키지명이 같이 있는데
classpath 설정해서 실행(cp?) 가능
javaprj 루트에 있다는것!
그 안의 jar를 실행하고 싶은 것
// 실행해본 것
maven이라는 녀석을 이렇게 console 창으로 써야할까...?
-> 아니지~~
이클립스를 켜보자.
근데 아까 Spring에서 다운 받은 이클립스! ... 는 아래 해보고 다음에.
확장자 zip으로 바꾸기
> content로 되어 있는거(sts) tool 폴더에 붙여넣기 하기
sts-4를 압축 풀어주기
windows는 파일명에 길이 제한이 있다.
- 그래서 압축 풀 때 sts-4 를 c-drive root에다가 품
그리고 난 다음에 옮기기
// 이클립스
import 누르고 > maven > exsiting 선택 > 폴더에서 우리가 플젝 만든거 선택. javaprj 있는거 > 그럼 POM 선택된거고 finish 누름
ㅡㅡㅡㅡㅡ 다음주부터 배우는대로 만들 것.