@Autowired는 field, setter, 생성자 주입 3가지 방식으로 주입이 가능한데,field나 setter 주입의 경우에는 DI되지 않은 채 빈이 생성되고, 필요할 때 의존관계가 있는 빈들이 DI된다. 따라서 의존관계가 다 맺어지지 않은 채 (DI가 다 되지
Q. interface default implementation 이란? abstract class 를 상속받는 것과 기본 구현을 들고 있는 interface 를 implement 하는것은 어떤 차이가 있나?interface default implementation :
낙관적 락이란 이름 그대로 트랜잭션 대부분은 충돌이 발생하지 않는다고 낙관적으로 가정하는 방법이다. 실제로 DB단에서 락을 거는 게 아니고, 버전 관리 기능을 통해 트랜잭션의 Isolation 격리성을 관리한다. JPA에서는 @Version을 통해 엔티티에 버전 관리
Java 의 equals 와 == 의 차이에 대해 설명해주세요.
hashCode / equals 메소드의 역할에 대해 아시는 내용을 최대한 설명해주세요.
java.lang.String 의 hashCode 구현에 대해 고찰해 봅시다. 왜 그런 구현일지, 문제점은 없을지 이야기해주세요.
synchronized 를 메소드에 선언하는 것과, 특정 객체에 선언하는 것은 어떤 차이가 있습니까?
Mutable, Immutable 이란 뭔가요? 각각은 어떤 특징이 있을까요?
class MySingleton { private static MySingleton instance; public static synchronized MySingleton getInstance() { if (instance == null) { in
ThreadPool 스레드 관리
volatile 키워드가 무엇을 해결하는데 사용하는 것인지 설명해주세요
스레드와 객체를 연결해 스레드 한정 기법을 적용할 수 있는 클래스이다.스레드 한정 기법이란, 특정 객체를 특정한 단일 스레드에서만 사용하게 하면 thread safe를 확보할 수 있다. 객체 인스턴스를 특정 스레드에 한정시켜주면 해당하는 객체가 자동으로 thread s
java.util.Property extends Hashtable, java.util.Stack extends Vector 같은 클래스는 상속으로 망한 대표 사례입니다. 이유를 설명해 주세요.
Call by value : 원본 값을 변경하지 않고, 값을 복사해서 새로운 함수로 넘기는 호출 방식.primitive type의 경우에는 값이 복사되어 매개변수로 전달되고, reference type( 객체 타입 )의 경우에는 객체의 heap reference 주소값
분산 컴퓨팅 시스템에서 보장해야하는 시스템어떤 분산 시스템이더라도 Consistency (일관성), Availability (가용성), Partition tolerance (분할 내성)를 모두 만족할 수 없다는 이론이다.Consistency(일관성) : 데이터가 일관성
설명 : 애플리케이션을 독립적으로 배포가능한 여러개의 작은 서비스로 나누어서 아키텍쳐를 구성하는 것을 얘기.이 때 서비스란, 독립적으로 배포가능한 컴포넌트를 얘기하며, 별도의 서버로 존재하고, 프로토콜로 통신하며 서비스를 사용가능.컴포넌트는 독립적으로 교체 및 업그
대량의 데이터를 처리하는 서비스DB의 데이터 규모 : 기가바이트 ~ 테라바이트보통 서버 대수로 개략적으로 파악하는 경우가 많다. 수백대 ~ 수천대의 서버책에서 본 대규모 서비스 회사인 하네타 예시에서는 월간 1500만명 이상이 이용→ 배민은 월 사용자수가 2천만명 이상
객체 지향 프로그래밍설명 : 하나의 시스템을 서로 상호작용하는 객체로 이루어져 있다고 보는 것이며, 객체들끼리는 메시지로 서로 협력한다.OOP에서 중요한 것은 메시징이다.이 메시징을 구현하기 위한 도구들이 캡상추다이며,메시징을 위해서는 다형성이 제일 중요하다.그 이유는
https://d2.naver.com/helloworld/831311
IT 엔지니어를 위한 네트워크 입문
Socket 으로 웹 페이지를 크롤링하는 HTTP 클라이언트를 직접 구현해야 한다면, 어떻게 하시겠습니까?
REST는 HTTP URI를 통해 자원을 명시하고, HTTP 메서드(Get, Post, Put, Delete)로 해당 자원에 대해 삽입, 조회, 갱신, 변경 명령을 적용할 수 있는 소프트웨어 아키텍처RESTful : REST 원리를 따르는 시스템REST API : RE
IoC 컨테이너설명 :오브젝트가 자신이 사용할 오브젝트를 스스로 선택하지 않는다. 제어 권한을 자신이 아닌 다른 대상에게 위임. 생성자 주입과 같은 DI를 통해 IoC가 가능해진다.장점관리를 안해도 된다단점객체를 동시에 2개 생성하는 싱글톤 문제 발생해결방법synch
http://www.daum.net 브라우저 동작원리 URL 입력 URL에 해당하는 IP 주소를 DNS에서 가져옴. 해당 IP 주소를 이용하여 웹 서버와 연결 http 프로토콜을 이용해 request , response로 데이터를 주고받음. html 과 같은
공유락과 배타락 트랜잭션 격리 레벨 Spring 은 @Transactional 어노테이션 붙인 메소드를 어떻게 찾고 트랜잭션을 처리하나요? 그 내부 구현을 상세하게 설명해 주세요. 메소드에 @Transactional 을 붙이는 것과, TransactionTemp
디스크 랜덤 I/O 횟수를 줄이는 것이 중요하다.보통 db는 디스크에 저장되는데, 이 DB에 데이터를 저장하거나 읽을 려면 디스크의 플래터원판의 헤더를 움직여서 데이터를 읽게된다.DB에서 데이터를 읽고 쓰는 작업은 보통 랜덤 I/O이다.순차 I/O는 한번에 많은 데이터
\-> 주문 결제 서비스 Scale out한 환경에서 결제 DB가 있을 때 문제점과 개선점\-> 트랜잭션 id가 존재\-> id는 모든 트랜잭션 로그를 구분할 수 있는 고유 id인가\-> 트랜잭션 로그는 중복이 발생할 수 있고, id가 랜덤정렬인가\-> 같은 트랜잭션이
\-> compile timeGetter,setter
Mybatis , Hibernate