나를 기록하다
article thumbnail
[Interview] JPA, 알고 쓰고 있을까?
CS/Interview 2024. 6. 18. 23:13

지금 프로젝트에 JPA를 사용하면서 문득 나는 JPA를 정말 알고 사용하고 있을까라는 의문이 들었다. 기한에 쫓겨가며 코드를 작성하는데 내가 처음에 생각했던 내 코드에 대해 완벽히 이해하고 설명할 수 있는 코드를 쓰자는 생각과 거리가 멀어진 느낌을 받았다. 그렇기 때문에 다시 초심을 찾고 조금 더디더라도 이해하고 누군가 나에게 코드에 대해 질문하면 설명할 수 있는 내가 되기 위해 면접 답변 형식으로 개념을 정리하고자 한다. 시작하겠다. JPA란 무엇인가?답변Java Persistence API의 약자로 자바 진영의 ORM 기술 표준입니다.관계형 데이터베이스는 어떻게 데이터를 저장할지에 초점이 맞춰진 기술이고, 객체지향 프로그래밍 언어는 메시지를 기반으로 기능과 속성을 한 곳에서 관리하는 데 초점이 맞춰진..

article thumbnail
[Interview] Spring, DI, IoC, ORM, JPA, Hibernate
CS/Interview 2023. 9. 9. 10:00

Spring 객체를 관리할 수 있는 컨테이너를 제공하는 프레임워크 예시 공통적으로 사용하는 객체가 있다고 가정 A 클래스, B 클래스, C 클래스가 있을 때 D 클래스의 인스턴스인 d를 사용하려면 메모리에 d를 3개(A, B, C 각각 생성) 생성해야함. → 같은 기능을 하는 d가 메모리에 3개가 존재하므로 굉장히 비효율적 → 공통으로 사용하는 하나는 같이 쓸 수 있게 컨테이너를 제공하는 것이 Spring Core 과거에는 EJB가 존재했다. EJB는 상속, 구현 등 복잡했다. 이것에 대한 불만을 가지고 만든 것이 Spring Spring은 순수 Java로 구성되어 있고 객체를 관리하는 역할을 한다. 오픈소스란 소스를 오픈하는 것. 즉 모두가 기능을 추가할 수 있도록 개발한 소스를 오픈하는 것을 말한다...

profile on loading

Loading...