@Component, @Controller, @Service, @Repository의 차이점
2026. 1. 20. 15:41
Spring
- @Component가장 일반적인 형태특정 역할에 종속되지 않은 일반적인 Spring Bean을 나타냄.공통 기능을 제공하는 유틸리티 클래스나 특정 계층에 속하지 않은 일반적인 컴포넌트를 정의할 때 사용 - @Service비즈니스 로직을 수행하는 클래스에 사용서비스 레이어의 Bean을 나타냄 -@ControllerSpring MVC에서 웹 요청을 처리하는 컨트롤러 클래스에 사용프레젠테이션 레이어의 Bean을 나타냄 - @Repository데이터베이스와의 상호 작용을 나타내는 클래스에 사용데이터 액세스 레이어의 Bean을 나타냄 https://www.maeil-mail.kr/question/72 매일메일 - 기술 면접 질문 구독 서비스기술 면접 질문을 매일매일 메일로 보내드릴게요!www.maeil-ma..
로그와 매트릭
2026. 1. 20. 15:36
운영 & 보안
- 로그 (Log)시스템이나 애플리케이션에서 발생하는 사건이나 활동 기록을 텍스트 형식으로 저장한 데이터 - 특징텍스트 기반 (사람이 읽을 수 있는 형태)시간순서 (이벤트 발생 순서대로 기록)컨텍스트 제공 (타임스탬프, 이벤트 유형, 메시지 내용등의 정보 포함) - 활용 문제 해결, 보안, 운영 분석 - 매트릭 (Matric)시스템의 상태나 성능을 수치로 표현한 데이터 주기적으로 수집되며, 서버 자원의 사용 상태나 애플리케이션 성능을 실시간으로 분석하는데 유용함. - 특징수치기반 (CPU 사용량, 메모리 소비량 등 정량적 데이터 제공)시간 기반 (시간의 흐름에 따라 변화하는 성능 상태로 파악가능)자동화된 모니터링 (시스템에서 자동으로 수집되며, 모니터링 도구를 활용해 시각화 및 알림 설정 가능) - 활..
얕은 복사와 깊은 복사
2026. 1. 20. 15:31
JAVA
- 얕은 복사 (shallow copy)객체를 복사할 때, 해당 객체만 복사하여 새 객체를 생성복사된 객체의 인스턴스 변수는 원복 객체의 인스턴스 변수와 같은 메모리 주소를 참조함.해당 메모리 주소의 값이 변경되면 원본 객체 및 복사 객체의 인스턴스 변수의 값이 같이 변경됨.※ 주소 값을 복사한다는 의 - 깊은 복사 (deep copy)객체를 복사할 때, 해당 객체와 인스턴스 변수까지 복사하는 방식전부를 복사하여 새 주소에 담기 때문에 참조를 공유하지않음.※ 실제 값을 새로운 메모리 공간에 복사하는 것을 의미 https://www.maeil-mail.kr/question/62 매일메일 - 기술 면접 질문 구독 서비스기술 면접 질문을 매일매일 메일로 보내드릴게요!www.maeil-mail.kr
일급 컬렉션 (First Class Collection)
2026. 1. 20. 15:25
객체지향
컬렉션을 랩핑하면서, 해당 컬렉션 이외의 다른 멤버 변수를 가지지 않는 클래스를 의미.컬렉션을 단순 데이터로 보지않고 하나의 논리(도메인) 객체로 취급하여 데이터와 데이터를 조작하는 로직을 하나의 클래스로 캡슐화 하는 것. - 일반 컬렉션 List orders = new ArrayList(); - 일급 컬렉션class Order { private final List orders; Order() { orders = new ArrayList(); } 관련 로직과 함께 클래스로 묶어준다는 의미. - 사용하는 이유불필요한 컬렉션 API를 외부로 노출하지 않도록 할 수 있으며, 컬렌셕을 변경할 수 없도록 만든다면 예기치 못한 변경으로부터 데이터 보호가능 https://www.maei..
DAY 02 : Github
2022. 11. 20. 20:08
국비/Git
- git diff Working Directory와 Staging Area 사이의 차이를 확인하기 위한 명령어 - 깃 허브 (Git Hub) git으로 버전 관리한 코드를 업로드할 수 있는 클라우드 서비스이다. 단순히 저장만 하는 것이 아니라 유저들과 함께 코드를 공유하고 온라인으로 하나의 프로젝트를 개발할 수 있게 해준다. https://github.com/ GitHub: Let’s build from here GitHub is where over 94 million developers shape the future of software, together. Contribute to the open source community, manage your Git repositories, review cod..
DAY 04 : history 객체, navigator객체, DOM, 노드, 정규 표현식
2022. 11. 14. 23:20
국비/JavaScript
- history 객체 브라우저의 히스토리 정보를 문서와 문서 상태 목록으로 저장하는 객체이다. 사용자의 개인 정보를 보호하기 위해 이 객체의 대부분의 접근 방법을 제한한다. 함수 의미 back() 뒤로 이동 forward() 앞으로 이동 go(0) == location.reload() 새로고침 - navigator 객체 브라우저 공급자 및 버전 정보등을 포함한 브라우저에 대한 정보를 저장하는 객체이다. 모바일에서는 GPS 정보를 갖고올 수 있다. geolocation : GPS 정보를 수신하는 프로퍼티 navigator 객체 사용해보기! navigator 현재 사용하는 와이파이 기지국의 위도와 경도를 출력하는 것을 확인 할 수 있다. - 문서 객체 모델 (Document Object Model) HTM..
DAY 03 - 1 : 화살표 함수, 객체, 상속
2022. 11. 14. 17:34
국비/JavaScript
- 화살표 함수 ECMA Script에 추가된 문법 function 키워드를 사용하여 만드는 것보다 간단하게 표현 가능하다. 화살표 함수는 항상 익명이다. const 함수명 = () => { 함수 호출시 실행할 문장; ... } 1) 매개변수가 있는 경우 const sum = function(x,y) { console.log(`두 수의 합 : ${x+y}`); } const sum = (x,y) => console.log(`두 수의 합 : ${x+y}`); 2) 리턴 값이 있는 경우 const result = function(x,y) { let sum = 0; for(let i=x; i x * x; 화살표 함수 사용해보기! const func1 = (x,y) => { let sum = 0; for(let..
DAY 02 -2 : 배열, 향상된 for문, 호이스팅, 함수
2022. 11. 14. 17:34
국비/JavaScript
- 배열(Array) 이름과 인덱스로 참조되는 정렬된 값의 집합 (자료구조) 배열을 구성하는 각각의 값을 '배열 요소'라고 하며, 배열에서의 위치를 가리키는 숫자를 '인덱스'라고 한다. - 배열 선언 let 배열명; - 배열 초기화 배열명 = [요소1, 요소2, 요소3,...]; // 예시 let arr; arr = [100,200,300]; let arr = [100,200,300]; - 배열 객체로 생성 let 배열명 = new Array(요소1, 요소2, ...) - 자바 스크립트 배열의 특징 1) 배열 요소의 타입이 고정되어 있지 않다. let arr =[1, 1.4, '안녕', true]; 2) 배열 요소의 인덱스가 연속적이지 않아도 된다. let arr; arr [0] = 1; arr [1] ..