본문 바로가기

Java14

[TIL] 240102 RawJPA로 개발하기 2 (Cascade, OrphanRemoval, Fetch) Cascade (영속성 전이) Cascade와 OrphanRemoval의 One쪽에서 사용 OrphanRemoval (고아객체 제거) ✔️ 영속성 전이 최강조합 orphanRemoval = true + Cascade.ALL Fetch 연관 관계 매핑시 연관된 엔티티를 언제 가져오는지 지정 Many쪽에서 지정 - EAGER (즉시로딩) : 성능 문제 유발할 수 있음 - LAZY (지연로딩) : 부모 엔티티를 조회할때 자식 엔티티가 로드되지 않다가 자식 엔터티에 접근하는 시점에서 로드됨 @ManyToOne(fetch = FetchType.LAZY) // 또는 FetchType.EAGER @JoinColumn(name = "다른 엔터티의 컬럼") private OtherEntity otherEntity; 2024. 1. 4.
[TIL] 240101 RawJPA로 개발하기 Entity class 만들기 🔽 주로 아래 순서와 구성으로 만듦 -칼럼 -생성자 -연관관계 편의 메소드 - 서비스 메소드 (외부에서 entity수정할때 등/ boardUpdate같은거 ) @Entity에너테이션이 붙으면 @Column이 자동으로 들어간다 @Column에서 특정 부분을 수정할 때만 에너테이션 사용 @Enuminated: 매핑할 때 사용 @Embedable: 주소처럼 시군구 나눌때 사용 livetemplete 템플릿을 만들어 다른 클래스에서 사용할 수 있도록 하는 것 setting (command+S) > LiveTemplates 다대다 매핑 M:N 매핑 보통 중간 테이블을 만들어서 사용 @ManyToOne joinColumn은 many쪽에서 가짐 예시 board와 user를 다대다로 연결.. 2024. 1. 1.
[TIl] 231226 Java의 정석 문제풀이 9-10, 9-11 [9-10] 다음과 같이 정의된 메서드를 작성하고 테스트하시오. 메서드명 : format 기 능 : 주어진 문자열을 지정된 크기의 문자열로 변환한다. 나머지 공간은 공백으로 채운다. 반환타입 : String 매개변수 : String str - 변환할 문자열 int length - 변환된 문자열의 길이 int alignment - 변환된 문자열의 정렬조건 (0:왼쪽 정렬, 1: 가운데 정렬, 2:오른쪽 정렬) 문제 class Exercise 9-10 { /* (1) format메서드를 작성하시오. 1. length의 값이 str의 길이보다 작으면 length만큼만 잘라서 반환한다. 2. 1의 경우가 아니면, length크기의 char배열을 생성하고 공백으로 채운다. 3. 정렬조건(alignment)의 값에.. 2023. 12. 26.
[TIL] 231218 Java System.arraycopy 자바의 정석 연습문제 9-6 System.arraycopy System.arraycopy(src, srcPos, dest, destPos, length); src - 원본 배열 srcPos - 원본 배열의 복사 시작 위치 dest - 복사할 배열 destPost - 복사할 배열의 복사 시작 위치 length - 복사할 요소의 개수 public static void main(String[] args) { int[] a = new int[5]; int[] b = new int[5]; for(int i = 0; i 2023. 12. 18.
Java의 정석 문제풀이 (오답) [8-7][8,9] Java Exit, RuntimeException, 예외처리 [8-7] 아래의 코드가 수행되었을 때의 실행결과를 적으시오. 답: 1 해설: method (true) 실행하여 if(b) System.exit(0) 하면 즉시 프로그램 종료 [8-9] 다음과 같은 조건의 예외클래스를 작성하고 테스트하시오. 답: 해설: RuntimeException의 부모 Exception은 에러메세지 getMessage를 반환한다. 이를 오버라이딩 하여 실행결과와 같은 형태로 출력되도록 수정한다. final int ERROR_CODE는 생성자를 통해 초기값을 세팅한다. 2023. 12. 8.
[TIL] 231128 Java 예외처리 예외 try catch method(){ try{ 예외가 발생할 수 있는 로직 } catch (Exception e){ System.out.println(e.getMessage()); } 예외가 발생할 수 있는 로직을 try로 감싸고 catch로 감싼다 예외처리로 발생할 수 있는 예외에 대비하여, 프로그램의 비정상 종료를 막을 수 있다. catch를 통해 try가 실패하면 이어서 마저 코드를 실행하게 된다 상속에서의 예외 오버라이딩을 할 때, 조상 클래스의 메서드보다 많은 수의 예외를 선언할 수 없다. 조상 클래스의 예외의 개수와 같거나 적어야 한다. 2023. 11. 28.