분류 전체보기 16

자료형(기본 자료형, 참조 자료형, Wrapper Class, 박싱과 언박싱)

기본 자료형자바에서 가장 기본적인 데이터 타입이며, 값 자체를 저장합니다. 정수형: byte, short, int, long실수형: float, double문자형: char논리형: boolean 기본 자료형은 메모리에서 고정된 크기의 공간을 차지하며, 실제 데이터 값을 저장합니다. 특징총 8가지의 기본형을 미리 정의하고 제공합니다.기본 자료형은 반드시 사용하기 전에 선언되어야 합니다.운영체제에 따라 자료형의 길이가 변하지 않습니다.값을 직접 저장하기 때문에 null을 허용하지 않습니다. 만약 기본형에 null을 넣고싶다면, Wrapper Class를 활용해야합니다.스택(Stack)메모리에 저장됩니다. 참조 자료형참조 자료형은 객체의 주소를 저장합니다.참조형은 Java에서 최상인 java.lang.Obje..

CS/Java 2025.10.15

Call By Value와 Call By Reference

Java는 기본적으로 모든 전달방식이 Call by Value입니다자바의 Call by Value 동작 방식 자바의 데이터 타입은 다음과 같이 크게 두가지로 나누어집니다. 원시타입(primitive type) - Numeric Type(byte, short, int,float, long, double, char), Boolean Type(boolean참조타입(reference type) - Class Type, Interface Type, Array Type, Enum Type, 기타 참조 타입(String 등)메서드 파라미터로 원시 타입을 전달하는 것과 참조 타입을 전달하는 것에는 동작 방식에 차이가 있습니다.원시 타입(primity type) 전달 방식 행위 : add 함수를 통해 int타입의 변..

CS/Java 2025.10.14

[Spring Security + JWT] 세션 기반 인증에서 JWT로 전환 회고

2025.01.11 15:26 작성 학교 수업 시간에 SpringSecurity를 사용해서 프로젝트를 진행했었다.처음에는 웹으로 프로젝트를 만들고자 세션으로 진행을 하였으나, 프로젝트 주제 상 모바일이 더 적합하다고 느껴 JWT로 전환해보자고 결정했다.왜 SpringSecurity를 사용했는가?Spring 공식 문서에 따르면, Spring Security는 Java 애플리케이션에서 인증과 권한 부여를 모두 제공하는 데 중점을 둔 프레임워크라고 기술되어 있다. 그 핵심은 사용자 정의 요구 사항을 충족하도록 쉽게 확장할 수 있는 점에 있다.Spring Security의 주요 특징은 다음과 같다:인증 및 권한 부여에 대한 포괄적이고 확장 가능한 지원세션 고정, 클릭재킹, 크로스 사이트 요청 위조(CSRF) 등..

PROJECT 2025.10.14

Generic

Q. 자바의 Generic에 대해 설명해주세요.자바의 Generic은 "이 클래스나 메소드는 나중에 실제로 사용할 때 타입을 정해줄게"라고 하며 작성할 때 타입을 정하지 않는 기능입니다. 클래스나 메소드를 정의할 때 타입 파라미터를 지정하여, 실제 객체를 생성하거나 메소드를 호출할 때 구체적인 타입을 결정할 수 있게 합니다. 이를 통해 형 변환 오류를 줄이고, 컴파일 시점에 오류를 미리 발견하며, 개발자의 생산성을 향상시킬 수 있습니다. Q. Object를 사용하면 String을 포함한 모든 타입을 다 저장할 수 있을텐데, Generic을 꼭 써야하는 이유가 있나요?Object를 사용하면 어떤 타입이든 저장할 수 있지만, 꺼낼 때 항상 Object타입으로 반환되기 때문에 추가작업을 위해 명시적 형변환이..

CS/Java 2025.10.13

[MSA-초기세팅]🏗️ MSA 환경 구성 (1)

지난 글 [기획/설계] DDD 기반 설계와 EventStorming 도입하기에서도메인을 기능 단위로 나누고, 각 서비스의 역할과 경계를 정리했습니다. 이번에는 그 설계를 실제로 구현할 MSA 개발 환경을 세팅해보려 합니다.여기서 말하는 ‘환경 세팅’은 단순히 프로젝트를 여러 개로 나누는 걸 넘어,각 서비스가 독립적으로 실행되고 서로 통신하며, 배포 가능한 상태로 만드는 것을 의미합니다.📚 시리즈 구성이 시리즈는 다음 순서로 진행됩니다.MSA 환경 구성 – 각 서비스의 공통 환경과 인프라 구조 설정 (현재 글)멀티모듈 구성 – 공통 모듈, Proto 공유, Gradle 설정Spring Cloud Config (Private Repo) – 설정 중앙화 및 비공개 레포지토리 관리Eureka (Server/C..

MSA 2025.10.09

[MSA-기획/설계] DDD기반 설계 EventStorming 도입하기

작성: 2025.05.20🌈이벤트 스토밍 도입 배경MSA 기반 중고거래 플랫폼을 만들기로 하여 ERD를 구상하기로 했습니다.처음에는 무작정 서비스를 도메인 별로 나누었더니 회원 + 프로필 / Auth / 상품+관심상품+상품검색/ 거래+배송/ 알림 / 신고 + 관리자 기능 / 커뮤니티, 커뮤니티 검색 / 채팅 이렇게 9개로 구분을 했었습니다.그런데 이렇게 자잘하게 나누다보니 마이크로서비스 간의 호출이 너무 잦게되어 오버스펙으로 판단이 되었기에 이에 대해서 멘토님께 “회원을 처리할 때 인증 인가 부분을 Auth 서비스에서 책임지게 하고, Memeber 서비스에서는 회원 등록, 수정, 탈퇴 등 프로필 관리만 할 수 있도록 나누는 것이 괜찮을까요?” 라고 질문을 드렸었고, 이에 대한 답은 “너무 오버스펙인 것..

MSA 2025.10.09