티스토리 뷰

개발환경 준비

JDK 8, 11, 17 설치

무료 라이센스인 Oracle OpenJDK

https://jdk.java.net/java-se-ri/17

 

Java Platform, Standard Edition 17 Reference Implementations

Java Platform, Standard Edition 17 Reference Implementations The official Reference Implementation for Java SE 17 (JSR 392) is based solely upon open-source code available from the JDK 17 Project in the OpenJDK Community. The binaries are available unde

jdk.java.net

 

 

SDKMan

SDK(Software Developmet Kit) Manager CLI는 커맨드 라인에서 다양한 종류의 OpenJDK와 ant, gradle, maven등 Java 기반 개발도구를 설치하고 관리할 수 있게 해주는 커맨드라인 유틸리티.

https://sdkman.io/

 

Home - SDKMAN! the Software Development Kit Manager

SDKMAN! is a tool for managing parallel versions of multiple Software Development Kits on most Unix based systems.

sdkman.io

운영체제에 실행 명령어를 내릴 수 있는 쉘 프로그램을 사용하여 window os에도 설치할 수 있다.

Git Bash 사용 설치

spring 명령어 사용을 위해 설치

curl(client url)이란? 클라이언트에서 커맨드 라인이나 소스코드로 손 쉽게 웹 브라우저처럼 활동할 수 있도록 해주는 기술. 서버와 통신할 수 있는 커맨드 명령어 툴. 프로토콜들을 이용해 URL로 데이터를 전송하여 서버에 데이터를 보내거나 가져올 떄 사용하기 위한 명령줄 도구 및 라이브러리.

https://shutcoding.tistory.com/23

 

CURL 이란? CURL사용법

CURL 이란? cURL = Client URL 클라이언트에서 커맨드 라인이나 소스코드로 손 쉽게 웹 브라우저 처럼 활동할 수 있도록 해주는 기술(커맨드라인 Tool 혹은 라이브러리) 서버와 통신할 수 있는 커맨드

shutcoding.tistory.com

https://inpa.tistory.com/entry/LINUX-%F0%9F%93%9A-CURL-%EB%AA%85%EB%A0%B9%EC%96%B4-%EC%82%AC%EC%9A%A9%EB%B2%95-%EB%8B%A4%EC%96%91%ED%95%9C-%EC%98%88%EC%A0%9C%EB%A1%9C-%EC%A0%95%EB%A6%AC

 

[LINUX] 📚 CURL 명령어 사용법 - 다양한 예제로 정리

리눅스 Curl(Client URL) 명령어 curl(client url) 명령어는 프로토콜들을 이용해 URL 로 데이터를 전송하여 서버에 데이터를 보내거나 가져올때 사용하기 위한 명령줄 도구 및 라이브러리이다. 쉽게말해

inpa.tistory.com

 

IDE

  • IntelliJ IDEA
  • STS
  • Visual Studio Code

 

Spring Boot 프로젝트 생성

Spring Initializr

JVM기반 스프링 부트 프로젝트 템플릿 만들어주는 API 프로젝트

웹 사이트에서도 프로젝트 템플릿 설정 후 다운로드 받을 수 있다.

기본 스프링 부트 버전, 자바 버전, 프로젝트 빌드 툴, Dependencies 모듈 설정 등..

IntelliJ Ultimate 버전에서는 기능이 내장되어 있다.

https://start.spring.io/

 

 

Spring CLI로 설치

spring shell이 열리지 않는다

 

프로젝트 폴더로 이동 후 spring 명령어로 바로 프로젝트 설정 후 해당 폴더에 압축 풀어서 설치
명령어로 프로젝트 실행

 

 

Hello API 테스트

package tobyspring.helloboot;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

// API 요청에 대한 응답을 화면 통채로 보내는 것이 아닌
// 데이터를 보내는 RestController
@RestController
public class HelloController {
	//Get방식의 /hello url로 요청이 왔을 때 처리
	@GetMapping("/hello")
	public String hello(String name){
		// 쿼리스트링 name이 붙어서 오면 해당 하는 값 출력
		return "Hello " + name;
	}
}

  • 웹 브라우저 개발자 도구
  • curl
  • HTTPie
  • Intellij IDEA Ultimate http request
  • Postman API Platform
  • JUnit Test
  • 각종 API 테스트 도구

 

웹 브라우저 개발자 도구

 

Intellij IDEA Ultimate http request

스프링 부트가 시작되는 메인 메서드
버튼 누르면 API 테스트할 수 있는 파일이 만들어짐
run 버튼 누르면 API 테스트 실행. 실행 결과 파일이 .txt 파일로 만들어진다

 

Postman API Platform

 

 

HTTP 요청과 응답

HTTP(HyperText Transfer Protocol)란?

하이퍼텍스트를 빠르게 교환하기 위한 프로토콜의 일종으로, 서버 클라이언트의 사이에서 어떻게 메시지를 교환할지를 정해 놓은 규칙이다. 요청(Request)과 응답(Response)으로 구성되어 있으며, 일반적으로 80번 포트를 사용한다. 예를 들면 '클라이언트가 웹 페이지에서 링크가 걸려있는 텍스트를 클릭(요청)하면 링크를 타고 새로운 페이지로 넘어간다(응답)'. 따라서 우리가 사용하는 웹 브라우저에서 인터넷 주소 맨 앞에 들어가는 http://가 바로 이 프로토콜을 사용해서 정보를 교환하겠다는 표시인 것이다.

https://namu.wiki/w/HTTP

 

HTTP - 나무위키

HTTP에서 지원하는 요청 메시지는 다음과 같다. GET: 클라이언트가 서버에게 URL에 해당하는 자료의 전송을 요청한다. HEAD: GET 요청으로 반환될 데이터 중 헤더 부분에 해당하는 데이터만 요청한다.

namu.wiki

https://velog.io/@rimu/%EC%9B%B9%EA%B3%BC-%EC%84%9C%EB%B2%84%EC%97%90-%EB%8C%80%ED%95%9C-%EA%B8%B0%EC%B4%88%EC%A7%80%EC%8B%9D-HTTP-%ED%94%84%EB%A1%9C%ED%86%A0%EC%BD%9C

https://ko.wikipedia.org/wiki/HTTP

 

HTTP - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. HTTP(HyperText Transfer Protocol, 문화어: 초본문전송규약, 하이퍼본문전송규약)는 W3 상에서 정보를 주고받을 수 있는 프로토콜이다. 주로 HTML 문서를 주고받는 데에

ko.wikipedia.org

https://doozi0316.tistory.com/entry/HTTPHTTPS%EB%9E%80-TCP-UDP-HandShake-%EA%B0%9C%EB%85%90-%EC%A0%95%EB%A6%AC

 

HTTP/HTTPS란? TCP, UDP, HandShake 개념 정리

🧣 HTTP란? HyperText Transfer Protocol 클라이언트와 서버 간 데이터를 주고 받기 위한 규칙(프로토콜)이다. 여기서 데이터는 텍스트, 이미지, 동영상 등 모든 종류를 말한다. HTTP 종류에는 TCP 와 UDP 방

doozi0316.tistory.com

 

웹 클라이언트가 웹 요청을 웹 컨테이너에게 보내면 웹 컨테이너는 요청을 처리할 웹 컴포넌트에게 작업을 위임하고 웹 컴포넌트는 작업을 분석하여 수행한 후 결과 값을 웹 응답으로 웹 클라이언트에게 결과값을 보낸다.

웹 요청과 웹 응답 기술을 표준화 하여 만들어놓은 규칙이 HTTP 이다.

웹 클라이언트와 웹 컨테이너가 대화를 하는 기술.

 

HTTP 구조

Request

  1. Request Line: Method(Get, Post...), Path(Host와 Port를 제외한 경로), HTTP Version
  2. Headers
  3. Message Body

Response

  1. Status Line: HTTP Version, Status Code(200, 400, 500...), Status Text
  2. Headers
  3. Message Body

 

 

 

https://www.inflearn.com/course/%ED%86%A0%EB%B9%84-%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-%EC%9D%B4%ED%95%B4%EC%99%80%EC%9B%90%EB%A6%AC/dashboard

 

토비의 스프링 부트 - 이해와 원리 - 인프런 | 강의

스프링 부트의 핵심 기능을 직접 만들어보면서 스프링 부트의 동작 원리를 이해하고, 이를 통해 스프링 부트를 잘 학습하고 사용하는 방법을 배우는 강의입니다. 스프링 부트가 사용하는 스프

www.inflearn.com

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함