본문 바로가기

java3

백준 12873번 - 기념품 (자바/JAVA) 문제백준이는 BOJ 알고리즘 캠프 참가자 중 한 명에게 기념품을 주려고 한다. 하지만, 많은 참가자 중에서 어떤 사람을 뽑아서 기념품을 줘야하는지 고민이 되기 시작했다. 따라서, 백준이는 게임을 통해서 기념품을 받을 사람을 정하기로 결정했다.게임이 시작하기 전에 모든 참가자 N명은 원을 이루어서 앉아있다. 다음, 1부터 N까지 번호가 적혀있는 티셔츠를 시계방향으로 입는다. 이 티셔츠는 게임에 사용되지 않으며, 게임을 쉽게 하기 위해서 입는 티셔츠이다.게임은 단계로 이루어져 있으며, 첫 단계는 1단계이다. 각 단계가 시작될 때, 백준이는 어떤 참가자의 앞에 서있다. 그 다음, "하나"를 외친다. 그 다음, 시계 방향으로 다음 사람에게 이동하며 "둘"을 외친다. 이 과정은 t단계인 경우에 t3을 외칠 때 까.. 2024. 12. 7.
JPA 기본 - 프록시와 연관관계 관리 프록시em.findDB를 통해서 실제 엔티티 객체 조회em.getReferenceDB 조회를 미루는 가짜 객체(프록시) 엔티티 객체 조회특징실제 클래스를 상속받아서 만들어진다.실제 클래스와 겉모양이 같다.사용하는 입장에서 이론상으로 진짜 객체인지 프록시 객체인지 구분하지 않고 사용하면 된다.프록시 객체는 실제 객체의 참조(target)를 보관프록시 객체를 호출하면 프록시 객체는 실제 객체의 메서드를 호출한다. 프록시 객체는 처음 사용할 때 한번만 초기화프록시 객체를 초기화 할 때, 프록시 객체가 실제 엔티티로 변하는게 아님초기화 시, 프록시 객체를 통해서 실제 엔티티로 접근이 가능한 것프록시 객체는 원본 엔티티를 상속받음, 따라서 타입을 체크해야한다.(== 비교가 아닌 instance of를 사용할 것).. 2024. 6. 9.
JPA 기본 - 연관관계 매핑 연관관계 매핑 시 고려해야 할 사항1. 다중성2. 단방향, 양방향3. 연관관계의 주인 다중성1. @OneToOne2. @OneToMany3. @ManyToOne4. @ManyToMany (사용하지 않는 것을 권장) 단방향, 양방향DB, 객체 기준으로 나뉘어진다.DB외래 키 하나로 양쪽 조인 가능방향 개념이 아님객체참조용 필드가 있는 쪽으로만 참조 가능한쪽만 참조하면 단방향양쪽이 서로 참조하면 양방향연관관계의 주인테이블은 외래 키 하나로 두 테이블이 연관관계를 맺음객체 양방향 관계는 A -> B, B -> A 처럼 참조가 2군데연관관계의 주인 : 외래 키를 관리하는 참조주인의 반대편 : 외래 키에 영향을 주지 않음, 단순 조회만 가능다대일 단방향가장 많이 사용하는 연관관계다대일의 반대는 일대다 관계이다.다.. 2024. 6. 8.