전체 글
-
CollectionArchitecture/Data Structure 2025. 2. 14. 19:56
Collection객체 지향 프로그래밍에서 여러 개의 요소를 하나의 집합으로 묶어 다룰 수 있도록 하는 데이터 구조여러 개의 데이터 항목을 저장하고, 이를 효율적으로 관리하는 기능을 제공하는 인터페이스 또는 클래스를 의미Java에서 컬렉션 프레임워크의 최상위 인터페이스로, 데이터의 그룹을 다루는 다양한 자료구조에 대한 공통적인 규약을 제공Collection Interface : 리스트, 셋, 큐 등 여러 컬렉션 클래스를 위한 기본 인터페이스로 사용java.util 패키지에 속함 Iterable: 컬렉션을 순차적으로 반복(iterate) 할 수 있게 해주는 인터페이스 TreeSet내부적으로 이진 탐색 트리를 사용하여 요소들을 자동으로 정렬합니다.중복된 값을 허용하지 않으며, 빠른 검색 및 정렬 기능을 제공..
-
OOP (Object-Oriented Programming)Architecture/Application Architecture 2025. 2. 14. 19:25
OOP (Object-Oriented Programming)객체지향 프로그래밍 (OOP) : 소프트웨어 설계 및 구현 방식으로, 프로그램을 "객체"라는 독립적인 단위로 분리하여 문제를 해결 OOP에서 지향하는 바는 코드를 더 구조적이고 재사용 가능하며 유지보수가 용이하게 만드는 것 1. 캡슐화 (Encapsulation)데이터와 메서드를 하나의 단위로 묶고, 객체 외부에서는 내부 구현을 숨기려는 원칙데이터의 무결성을 보호하고, 외부에서 직접 데이터에 접근하지 못하게 하여 코드의 안정성을 높임ex. 클래스 내부에서 데이터를 관리하고, 그 데이터에 접근하는 방법을 메서드로 제공하여 데이터를 안전하게 수정하도록 제한 2. 상속 (Inheritance)기존의 클래스에서 새로운 클래스를 만들어 그 기능을 재사..
-
MVC PatternArchitecture/Application Architecture 2025. 2. 14. 18:58
ProcessClient Controller (API) Service(Business) DAO(Persistance) DB Controller : Client - Server 중간역할API 요청에 따라 응답View로 Request Body에 담긴 데이터를 DTO로 변환하여 Service 로 전달처리결과를 DTO로 받고 Response Body에 담아 Client에게 반환 @ControllerAPI, View 를 동시에 사용View 반환이 주목적 @RestControllerView가 필요없는 상황에서 API만 서비스에서 사용@Controller + @ResponseBody데이터반환이 주목적 2. Service : 데이터 가공자 역할DAO 를 통해서 DB 접근 DTO로 데이터 전달받은후 비지니스 로..
-
SpringBackEnd/Java 2025. 2. 14. 18:37
SpringHistoryEJB -> Spring Framework -> Spring Boot EJB (Enterprise JavaBeans) Java EE (Enterprise Edition), 서버측 컴포넌트 구축에 중점 모듈화, 분산시스템, 복잡성 Spring Framework EJB 복잡성을 피함, 유연하고 간결한 개발환경, 오픈 소스 프레임워크 DI, AOP, POJO, IoC 등 Spring Boot Spring Framework 확장, 빠른 독립형 실행 Application 개발이 가능한 오픈소스 프레임워크 Standalone Application : 내장서버 (Tomcat)을 포함하여, 별도의 서버 없이 독립형으로 실행 자동구성 (keyword : Auto Configuration) : 대..
-
JavaBackEnd/Java 2025. 2. 14. 17:43
Java 특징객체 지향 프로그래밍 (OOP) : Java는 클래스와 객체를 기반으로 하며, 상속, 다형성 같은 OOP 개념을 지원해 코드 재사용과 유지보수가 쉬움플랫폼 독립성 : Bytecode로 컴파일되어 JVM (Java Virtual Machine) 위에서 실행되기 때문에, 운영체제와 상관없이 동일한 코드를 실행Garbage Collection : 자동 메모리 관리 (개발자가 직접 메모리 관리할 필요 없이 Garbage Collector 가 필요 없는 객체를 자동으로 메모리에서 제거해줌)멀티스레드 지원 : 멀티스레드 프로그래밍 지원으로 동시에 여러 작업 수행예외처리 : 예외처리를 명시적으로 강제하여 안정적인 코드 작성을 유도 (try catch finally)보안성 : 강력한 보안 모델을 제공하여..
-
JWT (Json Web Token) & Spring SecurityBackEnd/Auth 2024. 7. 9. 16:39
JWT & Spring Security JWT (Json Web Token) : 클라이언트와 서버 간에 안전하게 정보를 전송하기 위해 사용되는 JSON 기반의 토큰 Spring Security : Java 애플리케이션에서 인증과 인가를 제공하는 강력하고 유연한 보안 프레임워크 1. 주요 개념인증 (Authentication): 사용자가 누구인지 확인하는 과정인가 (Authorization): 인증된 사용자가 어떤 자원에 접근할 권한이 있는지 결정하는 과정CORS 정책 : 웹 애플리케이션이 다른 도메인에서 리소스를 요청할 때 보안 상의 이유로 제한하는 메커니즘 * Token 탈취에 대비하여 Access Token/ Refresh Token 마련- Access Token : 간격을 짧게 (첫로그인시..
-
macOS 에서 Git 프로젝트 업로드DevOps/Git 2023. 3. 24. 01:55
Git 과 macOs 연동부분, 그 과정에서 발생했던 error들을 정리하고자 한다 😫 1. project upload ① git repository 에 commit 하고자 하는 프로젝트를 선택한다. "서비스" -> "폴더에서 새로운터미널 열기" 클릭 (code editor terminal 사용해도 상관없음) // git 초기화 (일반폴더 -> git repository 변환) $ git init ② git 상태 확인 붉은글씨로 commit 해야할 파일을 표시해줌 //git 상태확인 $ git status ③ commit 과정 //git add 파일/디렉토리 경로> : 해당경로에 commit 파일추가 $ git add . // commit 및 comment 추가 $ git commit -m "전달 메시지..
-
How to install GitDevOps/Git 2023. 3. 24. 00:00
Git 설치방법 ! macOS 유저로 Git 설치법 부터 알아보자. 1. Git ? 2005년 Linus Torvalds에 의해 개발된 분산 버전관리 시스템 (Distributed Version Control System, DVCS) 형상관리 Tools (Configuration Management Tools) : 여러 개발자가 하나의 프로젝트 참여, 소스코드 관리에 도움 인터넷 연결이 안된 상태에서도 개발 후 병렬 병합이 가능 분산저장으로 중앙 저장소가 삭제되어도 각 local repository를 통해 복구 가능 2. 용어 정의 • Repository : 저장소 역할로 branch에 따라 version을 저장 • Branch : 저장소 하위의 여러 가지, 개발과정에서 오류가 나지 않는 시점에 저장하기..