목록2025/06 (4)
초오오오오오짜개발자의낙서장

스프링에서 사용하는 JPA는 JPA를 이용하는 spring data jpa 프레임워크지 JPA가 아니다! JPA?- Java Persistence API 의 약자- 자바 진영에서 ORM (Object-Relational Mapping) 기술 표준으로 사용되는 인터페이스의 모음 라이브러리가 아니다.- 실제적으로 구현된게 아닌 구현된 클래스와 매핑해주는 프레임 워크 ORM?- 어플리케이션의 Class와 RDB 의 테이블을 연결(맵핑) - 어플리케이션의 객체를 RDB 테이블에 자동으로 영속화 Hibernate?- JPA라는 명세의 구현체.- 인터페이스를 직접 구현한 라이브러리- JPA와 Hibernate는 자바의 interface와 해당 interface를 구현한 class와 같은 관계- JPA를 사용하기 위..
JAVA Interface- interface 키워드를 사용하여 정의- 상수와 추상 메소드로 구성- 모든 상수는 public static final 타입- 모든 추상 메소드는 abstract public 타입- 클래스에서 인터페이스 구현은 implements 키워드를 사용하여 구현할 인터페이스 지정 후 추상 메소드를 모두 오버라이드 하여 내용을 완성.//인터페이스interface JavaInterface { String call(); boolean test();}//인터페이스 상속 구현class InterfaceImpl implements JavaInterface { @Override public String call() { return "called"; } @Overr..

강의에서는 VS code 로 프로젝트를 제작하였으나 여기에서는 intelliJ 를 이용하여 프로젝트를 세팅 하고자 한다.intelliJ 에서는 Spring Boot 세팅을 하기 위해 Ultimate 버전이 필요하다.지원을 받아 Ultimate 버전 설치후 Spring Boot로 프로젝트를 생성한다.Ultimate 버전이 아니면 start spring.io를 이용하여 파일을 다운 받은후 열면 된다언어 - JAVA ,타입 - Gradle - Groovy,그룹 - com.example ( 프로젝트를 생성하는 조직의 이름) 아티팩트 - 프로젝트의 이름패키지 이름 - 그룹 + 아티팩트이름으로 생성JDK - 17 (spring 은 jdk 11부터 지원하기 떄문에 그 이상으로 설정한다.)패키지 생성 - Jar ( j..

monolithic architecture- 모든 업무 로직이 하나의 애플리케이션 형태로 패키징 되어 서비스- 대부분의 기본 프로젝트 형태- 서비스 초기에 빠른 개발이 가능 , 소규모에 적합- 개발, 빌드, 테스트, 배포등에 용이- 서비스가 거대해 질수록 코드 전체를 이해하는 사람이 적어짐.- 수정과 빌드 배포가 서비스가 커저감에 따라 어려워지고 일정도 길어짐. 위와 같은 문제를 해결하기위해 Devide and Conquer 처럼 하나의 큰 어플리케이션을 작은 어플리케이션으로 쪼개어 변경과 조합이 가능하도록 만든 개념이 MSA(micro service architecture)- 각각의 서비스는 독립적으로 배포- 각각의 서비스는 다른 서비스에 대한 의존성이 최소화- 각 서비스는 개별 프로세스로 구동, RE..