분류 전체보기 185

스프링 부트 핵심 가이드(장정우 지음) - REST API 명세를 문서화하는 방법(Swagger), 로깅 라이브러리(Logback)

*책 내용과 다르게, 다음과 같은 환경에서 프로젝트 생성 Windows11(윈도우 11) 환경자바 JDK 17 버전 설치 https://yungenie.tistory.com/11 [Java] 차근차근 Java 설치하기 (JDK17, Window 11)자바 개발 도구 설치 방법에 대해서 알아보겠습니다. Java17은 LTS(Long Term Support : 장기 지원) 릴리즈로 1년 후까지 기술 지원 및 버그를 개선한 서비스를 제공받을 수 있습니다. 업데이트 버전을 꾸yungenie.tistory.com스프링 부트 4.31.0 사용 - STS(Spring Tool Suite) 설치(Spring Tools for Eclipse - https://spring.io/tools)=> https://primin..

스프링 부트 핵심 가이드(장정우 지음) - Gradle 기초, API를 작성하는 다양한 방법

*책 내용과 다르게, 다음과 같은 환경에서 프로젝트 생성 Windows11(윈도우 11) 환경자바 JDK 17 버전 설치 https://yungenie.tistory.com/11 [Java] 차근차근 Java 설치하기 (JDK17, Window 11)자바 개발 도구 설치 방법에 대해서 알아보겠습니다. Java17은 LTS(Long Term Support : 장기 지원) 릴리즈로 1년 후까지 기술 지원 및 버그를 개선한 서비스를 제공받을 수 있습니다. 업데이트 버전을 꾸yungenie.tistory.com스프링 부트 4.31.0 사용 - STS(Spring Tool Suite) 설치(Spring Tools for Eclipse - https://spring.io/tools)=> https://primin..

스프링 부트 핵심 가이드(장정우 지음) - 개발에 앞서 알면 좋은 기초 지식

1. 서버 간 통신마이크로서비스 아키텍처에서 한 서버가 다른 서버에 통신을 요청하는 것을 의미-> 한 대는 서버/다른 한 대는 클라이언트가 됨 가장 많이 사용되는 방식은 HTTP/HTTPS 방식(TCP/IP, SOAP 방식도 있음) *마이크로서비스 아키텍처(MSA: Microservice Architecture)서비스 규모를 작게 나누어 구성한 아키텍처-> 애플리케이션 하나에 여러 기능을 넣지 않고, 블로그 프로젝트/카페 프로젝트/메일 프로젝트 등으로 나누어 개발사용자가 블로그 기능을 사용하기 위해 로그인 기능을 거치려면 두 기능 간 통신이 필요 2. 스프링 부트의 동작 방식* 핸들러 매핑이란?요청 정보를 기준으로 어떤 컨트롤러를 사용할지 선정하는 인터페이스핸들러 매핑 인터페이스는 여러 구현체를 가지며,..

스프링 부트 핵심 가이드(장정우 지음) - 스프링 부트 개요

1. 스프링 프레임워크자바(Java) 기반 애플리케이션 프레임워크로, 엔터프라이즈급(기업 환경 대상 개발) 애플리케이션을 위한 다양한 기능 제공-> 오픈소스 경량급 애플리케이션 프레임워크로 불림(자바로 애플리케이션을 개발하는 데 필요한 기능을 쉽게 사용)한국 전자정부 표준 프레임워크 기반 기술로 채택되어, 공공기관 웹 서비스를 개발할 때 사용 1) 제어 역전(IoC: Inversion of Conmtrol)객체를 생성하고 사용하는 작업을 개발자가 직접 제어하지 않고, 객체의 생명주기 관리를 외부(스프링 컨테이너 or IoC 컨테이너)에 위임하여 컨테이너에 제어권이 넘어간 것이를 통해 의존성 주입(DI), 관점 지향 프로그래밍(AOP) 등이 가능해짐2) 의존성 주입(DI: Dependency Injecti..

Java 기초 또 다시 공부하기 20일차(마지막) - 입출력 스트림(보조 스트림, 입출력 관련 API)

1. 보조 스트림 (Filter Streams)기본 스트림을 감싸서 기능을 확장하는 역할입력 스트림: BufferedInputStream, DataInputStream출력 스트림: BufferedOutputStream, DataOutputStream, PrintStream단독 사용 불가 → 반드시 기본 스트림을 감싸야 함1) BufferedInputStream / BufferedOutputStream 기본 스트림(InputStream/OutputStream)을 감싸서 버퍼(buffer) 메모리를 활용하여 입출력 효율을 높이는 보조 스트림데이터가 1바이트씩 처리되는 기본 스트림의 단점(느림)을 보완하기 위해 한 번에 블록 단위로 처리-> 디스크 I/O 최소화 → 성능 향상BufferedInputStream..

Java 기초 또 다시 공부하기 19일차 - 컬렉션 프레임워크2(LIFO와 FIFO 컬렉션), 입출력 스트림(I/O 스트림)

1. 컬렉션 프레임워크2(LIFO와 FIFO 컬렉션)자바 컬렉션의 스택(Stack) 클래스과 큐(Queue) 인터페이스는 순서 기반 로직에서 자주 사용1) Stack 클래스 (1) 기본 개념 Stack의 구조 LIFO(Last In First Out): 마지막에 들어온 요소가 먼저 나감 주요 메서드리턴 타입메서드설명Epush(E item)주어진 객체를 스택에 추가Epeek()스택의 맨 마지막 객체를 가져옴(스택에서 객체 제거 x)Epop()스택의 맨 마지막 객체를 가져옴(스택에서 객체 제거 o) 객체 생성 방법: 저장할 객체 타입을 E 타입 파라미터 자리에 표기하고 기본 생성자를 호출Stack stack = new Stack();Stack stack = new Stack(); // E타입 파라미터를 ..

Java 기초 또 다시 공부하기 18일차 - 스레드(스레드 제어), 컬렉션 프레임워크

1. 스레드(스레드 제어)스레드 객체를 생성하고 start() 메서드를 호출하면 언제든 실행할 준비가 되어 있는 '실행 대기 상태'가 됨-> 운영체제에서 실행 대기 상태 스레드 중 하나를 선택하여 '실행 상태'로 만드는 것실행 상태의 스레드는 run() 메서드를 모두 실행하기 전에 다시 실행 대기 상태로 돌아갈 수 있고,실행 대기 상태에 있는 다른 스레드가 선택되어 실행 상태가 되기도 함 run() 메서드의 내용이 모두 실행되면 스레드의 실행이 멈추고 종료 상태가 됨 1) 스레드 상태 (Thread States)자바에서 Thread.State 열거형(Enum)은 총 6가지 상태를 정의상태설명NEW 스레드 객체가 생성됐지만 아직 start()가 호출되지 않음RUNNABLE실행 준비 완료 상태(JVM이 스케..

Java 기초 또 다시 공부하기 17일차 - 기본 API 클래스(java.util 패키지), 스레드(멀티 스레드)

이전 공부글2025.06.20 - [자바(JAVA)/미니 프로젝트 & 기초 공부] - Java 기초 또 다시 공부하기 16일차 - 기본 API 클래스(java.lang 패키지) String 클래스와 System 클래스도 모두 API에 속" data-og-host="keep-programming-study.tistory.com" data-og-source-url="https://keep-programming-study.tistory.com/159" data-og-url="https://keep-programming-study.tistory.com/159" data-og-image="https://blog.kakaocdn.net/dna/mLcrs/hyY8PTp6l8/AAAAAAAAAAAAAAAAAAAAAO5Pk7ESsPk3csxLZQ0dM_sLfp2viKvrj2Oz3o-gNZZr/..?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1764514799&allow_ip=&allow_referer=&signature=b2kPjasNrdej36pydG%2FASs6tMAg%3D

Java 기초 또 다시 공부하기 16일차 - 기본 API 클래스(java.lang 패키지)

*자바 API 도큐먼트API(Application Programming Interface): 라이브러리(library)라고도 하며, 프로그램 개발에 자주 사용되는 클래스/인터페이스의 모음을 의미-> String 클래스와 System 클래스도 모두 API에 속함API는 굉장히 방대하므로, 필요할 때마다 API Document에서 찾아 써야 함 -> API Document: 방대한 자바 표준 API 중 우리가 원하는 API를 쉽게 찾아 이용할 수 있도록 도와줌 HTML 페이지로 작성되어 있으며, Java 17의 도큐먼트 페이지는 아래와 같음 https://docs.oracle.com/en/java/javase/17/docs/api/index.html Overview (Java SE 17 & JD..

Java 기초 또 다시 공부하기 15일차 - 예외 처리(예외 클래스, 예외 처리)

예외(exception)사용자의 잘못된 조작 또는 개발자의 잘못된 코드로 인해 발생하는 프로그램 오류발생 시 프로그램이 곧바로 종료되는데, 예외 처리(exception handling)를 통해 프로그램을 종료하지 않고 정상 실행 상태를 유지할 수 있음자바에서는 예외가 발생할 가능성이 높은 코드를 컴파일할 때 예외 처리 유무 확인(모든 예외를 확인하는 것은 아님)-> 예외 처리 코드가 없다면 컴파일되지 않음1. 예외 클래스자바에서는 예외를 클래스로 관리-> 프로그램 실행 도중 예외 발생 시, JVM에서 해당 예외 클래스로 객체를 생성해야 예외 처리 코드에서 예외 객체 이용모든 예외 클래스는 java.lang.Exception 클래스를 상속받음1) 예외와 예외 클래스(1) 일반 예외(컴파일러 체크 예외, e..