post-thumbnail

스트림(Stream)

기존 방식의 한계 자바에서 배열이나 컬렉션을 다루기 위해 흔히 for문이나 Iterator를 사용하곤 했습니다. 하지만 다음과 같은 문제점이 존재합니다. | 기존 방식의 문제점 | 설명 |

2025년 7월 23일
·
0개의 댓글
·
post-thumbnail

람다식(Lambda Expression)

간단히 말해서 메서드를 하나의 식(expression)으로 표현한 것이다. 메서드를 람다식으로 표현하면 메서드의 이름과 반환값이 없어지므로, 람다식을 익명 함수(anonymous function)라고도 한다.자바에서는 모든 메서드는 클래스에 포함되어야 하므로 클래스도

2025년 7월 21일
·
0개의 댓글
·
post-thumbnail

스프링 부트 3 백엔드 개발자 되기 책 후기

젊은 개발자가 쓴 스프링 부트 입문서현재 작은 스타트업에서 풀스택 개발자로 재직 중이며, 규모에 비해 적지 않은 연봉을 받고 있다. 처음에는 프론트엔드 개발자로 입사하였으나, 현재는 업무 영역을 넓혀 백엔드 개발까지 담당하고 있다. 회사의 백엔드는 주로 Node.js를

2025년 7월 18일
·
0개의 댓글
·

스프링 시큐리티

스프링 시큐리티(Spring Security)는 스프링 기반의 애플리케이션 보안(인증, 인가, 권한)을 담당하는 스프링 하위 프레임워크이다.스프링 스큐리티는 필터 기반으로 동작한다. 각 필터에서 인증, 인가와 관련된 작업을 처리한다.기본적으로 세션 & 쿠키 방식으로 인

2025년 7월 16일
·
0개의 댓글
·

thymeleaf

타임리프는 템플릿 엔진이다. 템플릿 엔진은 서버에서 데이터를 받아 우리가 보는 웹 페이지, 즉 HTML 상에 데이터를 넣어 보여주는 도구이다.build.gradle 파일에 의존성을 추가해야 타임리프를 사용할 수 있다.■ 타임리프 표현식■ 타임리프 문법API 컨트롤러는

2025년 7월 14일
·
0개의 댓글
·
post-thumbnail

쓰레드

프로세스란 실행 중인 프로그램, 프로그램을 실행하면 OS로부터 실행에 필요한 자원(메모리)을 할당받아 프로세스가 된다.프로세스는 프로그램을 수행하는 데 필요한 데이터와 메모리 등의 자원 그리고 쓰레드로 구성되어 있으며 프로세스의 자원을 이용해서 실제로 작업을 수행하는

2025년 7월 12일
·
0개의 댓글
·

스프링 부트와 JPA

ORM ORM은 Object-Relational Mapping의 약어로, 객체(Object)와 관계형 데이터베이스(Relational Database) 사이의 데이터를 자동으로 매핑해주는 기술이다. 자바의 객체와 관계형 데이터베이스의 테이블 사이의 구조적 차이를 매

2025년 7월 11일
·
0개의 댓글
·

스프링 부트와 테스트

스프링 부트 구조 스프링 부트는 각 계층이 양 옆의 계층과 통신하는 구조를 따른다. 계층은 각자의 역할과 책임이 있는 어떤 소프트웨어의 구성 요소를 의미한다. 각 계층은 소통할 수 있지만 다른 계층에 직접 간섭하거나 영향을 미치지 않는다. 스프링 부트에는 프레젠테이

2025년 7월 10일
·
0개의 댓글
·

스프링과 스프링 부트

스프링은 자바 기반의 엔터프라이즈 애플리케이션 개발을 손쉽게 만들어주는 프레임워크입니다. 객체 지향적인 설계 원칙을 자연스럽게 따르도록 지원함으로써 대규모 애플리케이션 개발에 효과적입니다.위와 같이 클래스 A에서 직접 B 객체를 생성할 경우, 클래스 간 결합도가 높아지

2025년 7월 9일
·
0개의 댓글
·
post-thumbnail

애너테이션(Annotation)

자바 언어의 설계자들은 소스코드와 그에 대한 문서를 따로 관리하는 것보다 소스코드 자체에 문서 정보를 포함시키는 방식이 더욱 효율적이라고 판단하였습니다. 이에 따라 자바에서는 주석(comment)을 이용해 문서화할 수 있는 기능을 제공하며, 이를 위해 javadoc.e

2025년 7월 7일
·
0개의 댓글
·
post-thumbnail

제네릭

Java에서 제네릭(Generic)은 다양한 타입의 객체들을 다루는 클래스나 메서드에서 컴파일 시점의 타입 체크(compile-time type check) 를 가능하게 해주는 강력한 기능입니다. 제네릭을 올바르게 사용하면 타입 안정성을 높이고, 불필요한 형변환(cas

2025년 7월 4일
·
0개의 댓글
·
post-thumbnail

컬렉션 프레임워크

프로그래밍을 하다 보면 데이터를 하나만 다루는 경우보다, 여러 개의 데이터를 그룹으로 묶어 처리해야 하는 상황이 훨씬 더 많습니다. Java에서는 이러한 다수의 데이터를 효과적으로 저장하고 관리할 수 있도록 컬렉션 프레임워크(Collection Framework)를 제

2025년 7월 3일
·
0개의 댓글
·
post-thumbnail

형식화 클래스

Java 애플리케이션에서는 사용자에게 데이터를 보여줄 때, 숫자나 날짜, 통화 등 다양한 형식으로 데이터를 표현하는 경우가 많습니다. 이러한 데이터 표현의 일관성과 유연성을 위해 Java에서는 java.text 패키지를 통해 형식화(formatting) 클래스를 제공합

2025년 6월 24일
·
0개의 댓글
·
post-thumbnail

Calendar 클래스

소프트웨어 개발에서 날짜와 시간의 처리는 생각보다 까다로운 문제입니다. 시간대(Time Zone), 윤년(leap year), 월의 길이 차이 등 다양한 예외 상황이 존재하기 때문입니다. Java는 이러한 복잡성을 감안하여 일찍이 날짜와 시간을 다루기 위한 표준 클래스

2025년 6월 22일
·
0개의 댓글
·
post-thumbnail

java.lang 패키지

Java 프로그래밍을 시작하면서 가장 먼저 접하게 되는 패키지 중 하나가 바로 java.lang입니다. 이 패키지는 자바 애플리케이션의 기본적인 동작에 필수적인 클래스들로 구성되어 있으며, 별도의 import 문 없이도 사용할 수 있도록 특별히 설계되어 있습니다.예외

2025년 6월 18일
·
0개의 댓글
·
post-thumbnail

예외 처리(Exception Handling)

코드를 작성하다 보면 예상치 못한 오류가 발생하는 경우가 자주 있습니다. 예를 들어, 배열의 범위를 초과하거나, 파일이 없을 때 접근하려고 할 때 등등. 이런 오류를 예외(Exception) 라고 부르고, 자바에서는 예외를 안전하게 처리할 수 있는 예외 처리(Excep

2025년 6월 8일
·
0개의 댓글
·
post-thumbnail

추상 클래스와 인터페이스

자바에서 객체 지향 프로그래밍을 제대로 활용하기 위해 꼭 이해하고 넘어가야 할 두 가지 중요한 개념이 있습니다. 바로 추상 클래스(Abstract Class) 와 인터페이스(Interface) 입니다.추상 클래스는 미완성 설계도입니다.여러 클래스에 공통적으로 사용되는

2025년 6월 6일
·
0개의 댓글
·
post-thumbnail

자바의 패키지(package): 구조, 선언, classpath

자바를 학습하다 보면 package 라는 키워드를 자주 만나게 됩니다. 처음에는 단순한 폴더 개념처럼 보이지만, 실제로는 클래스의 관리, 충돌 방지, 배포, 보안 등 다양한 역할을 수행하는 중요한 개념입니다.이번 글에서는 자바의 패키지에 대해 자세히 알아보고, 실제 코

2025년 6월 3일
·
0개의 댓글
·
post-thumbnail

참조 변수의 형변환

Java를 공부하다 보면 반드시 마주치는 개념 중 하나가 "형변환(casting)"입니다. 기본형(primitive type)에서도 형변환은 자주 사용되지만, 이번 글에서는 참조형(reference type)의 형변환에 초점을 맞춰 정리해 보겠습니다.기본형처럼 참조형도

2025년 6월 3일
·
0개의 댓글
·