본문 바로가기
임시 글/Backend(Java)

[BE(Java)] 환경설정

by cogito21_cpp 2024. 12. 28.
반응형

학습목표

- 개발 환경 설정

- 개발 도구 사용법

 

- Corretto 17: AWS에서 배포하는 Open JDK의 프로덕션 용도의 배포판

- SpirngBoot 3.2.0: 스프링 프레임워크를 빠르게 사용할 수 있게 도와주는 도구

- Intellij IDEA, Postman, GitHub, Gradle(build.gradle)

 

1. Intellij 설치

- 자바 통합 개발 환경(IDE)

- Eclipse에 비해 편리함. 유료버전인 Ultimate와 무료버전인 Comunity가 있음

(windows)

1) IntelliJ 웹 페이지 접속

2) IntelliJ IDEA Community Edition 설치 파일 다운로드(cpu확인)

3) 설치 파일 실행하여 진행.(Install Options에서 Add "bin" foler to the PATH 체크)

 

(macos)

1) IntelliJ 웹 페이지 접속

2) IntelliJ IDEA Community Edition 설치 파일 다운로드(cpu확인)

3) 설치 파일 실행후 드래그 앤 드롭으로 설치

 

2. 프로젝트 환경 설정

(프로젝트 생성)

1) IntelliJ 실행

2) New Project

- Name: 프로젝트명

- 프로그래밍 언어: Java

- 프로젝트 유형(Build System): Gradle

- Gradle DSL: Groovy

- JDK 버전: 17

- Advanced Settings의 Groupid: 회사 도메인, 개인 도메인

+) Maven: 빌드 관리 도구

+) Gradle: 빌드 관리 도구. Maven에ㅔ 비해 가독성이 좋고 설정이 간단. 빌드와 테스트 속도가 빠름

 

(테마설정)

1) File > Settings

2) Apperance & Behavior > Apperance의 Theme 변경

 

(Gradle 프로제트를 SpringBoot 프로젝트로 변경)

더보기

1) build.gradle 수정

// 프로젝트에 사용할 플러그 설정
plugins {  
  id 'java'
  id 'org.springframework.boot' version '3.2.0'  // 스프링 부트. 버전은 설치 버전에 맞게 수정 필요
  id 'io.spring.dependency-management' version '1.1.0'  // 의존성 자동 관리
}

// 프로젝트 설정시 기본값인 그룹 이름과 버전, 컴파일시 사용할 자바 버전
group 'lee.cogito21'
version '1.0'
sourceCompatibility = '17'

// 의존성을 받을 저장소 지정
repositories {
  mavenCentral()
}

// 개발에 필요한 기능의 의존성 입력
dependencies {
  implementation 'org.springframework.boot::spring-boot-starter-web' // 웹 관련 기능
  testImplementation 'org.springframework.boot::spring-boot-starter-test'// 테스트 기능
}

test {
  useJUnitPlatform()
}

2) Gradle 탭 클릭후 새로고침

- 하단의 상태바에서 진행중인 import 확인

 

3) import 완료후 새 패키지 생성

- 폴더 우클릭 > New > Package

- 패키지명: 그룹명.프로젝트명

 

4) 새로 만든 패키지에 클래스 생성

- 폴더 우클릭 > New > Java Class

- 클래스명: 프로젝트명+Application

 

5) 생성된 클래스를 메인 클래스로 사용

- class 임포트는 Alt+Enter 사용

- 코드 구현

package lee.cogito21.springbootdevelper;

@SpringBootApplication
public class SpringBootDeveloperApplication {
    public static void main(String[] args) {
        SpringApplication.run(SpringBootDeveloperApplication.class, args);
    }
}

 

6) 클래스 실행

- 클래스 우클릭 > Run '클래스명...main()'

- 실행 메시지 확인

+) 오류 발생: Settings > Build Excecution, Deployment > Gradle에서 Build and run using, Run test using 선택값을 Gradel(default)에서 IntelliJ IDEA로 변경

 

7) 웹 동작 확인

- localhost:8080에 접속

- index.html 파일이 없다면 404 오류 페이지 발생

 

8) index.html 추가

- resource 폴더 우클릭 > New > File 클릭 후  static/index.html 생성

- index.html 코드 구현

<!DOCTYPE html>
<html lang='en'>
<head>
  <meta charset='UTF-8'>
  <title></title>
</head>
<body>
  <p>index.html</p>
</body>
</html>

9) 서버 재실행후 결과 확인

- 로그 확인

- 웹 브라우저에서 확인

 

(Postman)

- Postman: HTTP 요청을 보낼 수 있는 클라이언트 프로그램

1) Postman에서 설치 파일 다운로드

2) 설치 파일 설치후 실행

- 실행 창에서 lightweight API client 클릭

3) Create a request 클릭하여 Request 화면 열기

- API 요청 생성 및 테스트

- API 요청시 설정

- 입력창에 웹 주소, Method 설정

 

(GitHub)

- 코드 저장 및 공유

1) GitHub 접속

2) 회원가입후 로그인

3) Repositories 탭 > New로 새로운 저장소 생성

4) 새로운 저장소와 local folder 동기화

 

5) git 기본 명령어 사용하여 업로드

- git init

- git add

- git commit

- git push <원격저장소> <branch명>

 

6) 문제 발생시 repository의 issues 탭에 기록

- New Issues 클릭

- title, description 기록

 

(shortcut)

1) 기본 단축키

더보기
  Windows macOS
복사하기 Ctrl + C Cmd + C
잘라내기 Ctrl + X Cmd + X
붙여넣기 Ctrl + V Cmd + V
주석 토글 Ctrl + / Cmd + /
전체 선택 Ctrl + A Cmd + A
현재 파일에서 찾기 Ctrl + F Cmd + F
전체 파일에서 찾기 Ctrl + Shift + F Cmd + Shift + F
현재 파일에서 바꾸기 Ctrl + R Cmd + R
전체 파일에서 바꾸기 Ctrl + Shitf + R Cmd + Shift + R
줄 복사 Ctrl + D Cmd + D

2) IDE 공통 응용 단축키

더보기
  Windows macOS
실행 Shift + F10 ^ + R
디버그 모드로 실행 Shift + F9 ^ + D
리팩터링 Shift + Ctrl + Alt + T ^ + T
테스트 생성/이동 Shift + Ctrl + T Cmd + Shift + T
사용하지 않는 임포트문 삭제 Ctrl + Alt + O ^ + Option + O

3) IntelliJ 단축키 

더보기
  Windows macOS
통합 검색(파일, 작업, 심벌, 도구 창 또는 설정을 빠르게 탐색) double Shift double Shift
오류 및 경고 빠른 수정, 코드 개선 Alt + Enter Option + Enter
최근 연 파일 리스트 Ctrl + e Command + e
프로젝트 전체에서 코드 요소가 사용된 모든 위치 표시 Alt + F7 Option + F7

 

 

 

 

반응형

'임시 글 > Backend(Java)' 카테고리의 다른 글

[BE(Java)] Spring/SpringBoot 기본  (0) 2024.12.28
[BE(Java)] 백엔드 기본 지식  (0) 2024.12.28