
💡 빌드 자동화 시스템
jar파일로 만들어줌
✔ 빌드(Build)
작성한 소스코드를 실행 가능한 결과물로 만드는 일련의 과정
: gradle 기반의 빌드 스크립트
dependencies에 라이브러리 추가 ➞ Maven Repository에서 다운로드
| 택배 | 네트워크 | |
|---|---|---|
| 주소(IP) | 경기도 00시 ··· | 192.168.@@.@ |
| 받는사람(포트) | 감자 | 8080 |
: 인터넷을 통해 HTTP를 이용하여 웹상의 클라이언트의 요청을 응답해주는 통신을 하는 일종의 컴퓨터

1) 사용자가 브라우저를 통해 서버에 Http 요청(Http Request) 보냄
2) 서버가 요청을 처리하고 결과를 Http 응답(Http Response)에 담아 브라우저에 전송
3) 브라우저는 서버에서 전송한 데이터를 웹사이트를 그려냄
: API 작동 방식에 대한 조건을 부과하는 소프트웨어 아키텍처
⇨ 동적 요청이 들어왔을 때 Web Server가 해당 요청을 WAS에 전달
Web Server + WAS = Apache Tomcat
| Method | URL | 설명 | |
|---|---|---|---|
| 인사 | GET | /api/hello | Hello World!출력 |
@RestController
public class HelloController {
@GetMapping("/api/hello")
public String hello() {
return "Hello World!";
}
}
HyperText Transfer Protocol
: 데이터를 주고 받는 양식을 정의한 통신 규약

단축키: Ctrl + Shift + t
//계산기
public class Calculator {
public Double operate(double num1, String op, double num2) {
switch (op) {
case "*":
return num1 * num2;
case "/":
if(num2 != 0) {
return num1 / num2;
} else return null;
case "+":
return num1 + num2;
case "-":
return num1 - num2;
default:
throw new IllegalArgumentException("잘못된 연산자입니다");
}
}
}
//CalculatorTest
@Test
@DisplayName("나누기 테스트")
void test2() {
Calculator calculator = new Calculator();
Double result = calculator.operate(9, "/", 0);
System.out.println("result = " + result);
Assertions.assertEquals(null, result);
}

자바 프로젝트를 진행하는데 거의 필수적으로 필요한 메서드/생성자 등을 자동 생성해줌으로써 코드를 절약할 수 있도록 도와주는 라이브러리
// 소스 코드
@Getter
@Setter
public class Memo {
private String username;
private String contents;
}
// 컴파일 된 클래스 코드
public class Memo {
private String username;
private String contents;
public Memo() {
}
@Generated // 디컴파일러가 Lombok이 자동 생성한 메서드임을 표시하기 위해 임의로 붙임
public String getUsername() {
return this.username;
}
@Generated
public String getContents() {
return this.contents;
}
@Generated
public void setUsername(final String username) {
this.username = username;
}
@Generated
public void setContents(final String contents) {
this.contents = contents;
}
}
Spring과 관련된 설정을 할 때 사용되는 파일
server.port=8081
