본문 바로가기

공부방

(97)
[오류] FK가 PK가 아닌 다른 컬럼과 연관관계가 있을 때 결론: FK가 바라보고 있는 엔티티에 implements Serializable을 추가해주면 된다. 연관 관계 매핑 fetch join에서 FK가 PK가 아닌 다른 컬럼과 연관관계가 있을 때, referencedColumnName 사용. (default는 연관테이블의 @Id를 보고 쿼리생성) @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "REGIST_ID", referencedColumnName = "SSO_KEY") private User user; --> Exception 발생 java.lang.ClassCastException: com.humuson.tasbatch.domain.postman.TasUser cannot be cast to java...
[JPA] PK가 아닌 필드를 참조하는 FK를 만들 때 결론: @JoinColumn(referencedColumnName = [참조하는 필드 이름]) 오류 상황 공부 겸 진행중인 스프링 부트 프로젝트에서 생긴 문제이다. Solved라는 table에서 School의 필드를 참조하는 FK를 가져야 하는 상황이다. 각 Entity 코드는 다음과 같다. School @Entity public class School implements Serializable { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Column(name="school_id", nullable = false, unique = true) private Long schoolId; // 학교 번호 @OneToMan..
elastic search manual elastic search setting 이 후, kibana setting 이 후 manual에서 제공하고 있는 데이터를 다운 받아서 실습해 보도록 하겠습니다. https://github.com/elastic/elasticsearch/blob/7.5/docs/src/test/resources/accounts.json [저장] 파일을 다운받고, bank index에 저장해 보겠습니다. curl -H "Content-Type: application/json" -XPOST "localhost:9200/bank/_bulk?pretty&refresh" --data-binary "@accounts.json" [인덱스 확인] bank라는 index가 생성이 되었는지 확인해 봅시다. curl "localhost:92..
rmate, rsub sublimetext 설치방법 (OS X, Sublime Text 2 기준) 패키지 메니저 설치가 되어 있지 않으면 설치방법을 참조하여 설치한다. Cmd+Shift+P 키를 누르고, "pa in"를 입력해서 “Install Package”을 선택한다. “rsub”를 입력하고, rsub를 선택한다. 설치가 되면 터미널 프로그램을 실행하여 아래 명령어를 입력하여 실행한다. vi ~/.ssh/config 아래 텍스트를 복사&붙여넣기 한다. ( *자신에 맞게 편집한다.) Host startup HostName *****.compute.amazonaws.com RemoteForward 52698 127.0.0.1:52698 User ubuntu IdentityFile "~/.ssh/skey.pem" 출처: https://www.app..
Database 조회 최적화 https://crystalcube.co.kr/163 https://www.burndogfather.com/238
Decorator pattern
Consumer Consumer는 1개의 Type T 인자를 받고 리턴 값이 없는 함수형 인터페이스입니다. @FunctionalInterface public interface Consumer { /** * Performs this operation on the given argument. * * @param t the input argument */ void accept(T t); } Example 1 : Consumer Consumer는 Lambda 표현식으로 구현할 수 있습니다. accept() 호출과 함께 인자를 전달하면 구현된 내용이 수행됩니다. import java.util.function.Consumer; public class ConsumerExample1 { public static void main(St..
디자인 패턴 - 옵저버 패턴 0. 옵저버 패턴? 옵저버 패턴은 한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체에게 연락이 가고 자동으로 내용이 갱신되는 방식으로 일대다 의존성을 정의합니다. 1. 용어 정리 옵저버 패턴에서는 크게 두가지 용어를 먼저 알고 가면 될 것 같습니다. 주제 (subject): 데이터와 옵저버를 관리하는 객체 옵저버 (observer): 데이터가 변경될 경우, 주제로 부터 변경사항을 전달받는 객체 2. 예시로 확인하는 옵저버 패턴 1. 예시에서 Subject는 Observer 3개를 관리하는 형태입니다. 2. Subject는 관리하고 있는 data가 존재하고 있습니다. (data1, data2, data3) 3. Observer도 관리하고 있는 data가 존재합니다. (예시에서는 observer마다 관..