본문 바로가기

분류 전체보기129

[JPA] @Transient 어노테이션에 관한 이해 JPA를 사용하면서 @Transient라는 어노테이션을 사용했었다. 하지만 그냥 단순하게 테이블의 맵핑을 제외하기 위해서 사용했다. 이렇게만 아주 단순하게 알고 있었는데 , 이번에 정리를 잘 해놓으신 분이 계셔서 그분이 정리해주신 부분을 읽어보고 @Transient라는 어노테이션에 대해서 다시 생각해보게 됐다. 여기서 @Transient 어노테이션이 선언된 위치를 보면 메서드 위에 어노테이션이 선언되어 있다. 만약에 @Transient 어노테이션이 선언되지 않았다면 현재 이 클래스는 Board 엔티티로 선언되어 있으므로 테이블에 해당 메서드로 컬럼이 생성되었을 것이다. 그런 일을 방지하기 위해서 Transient 어노테이션을 붙였다. 그렇다면 이 어노테이션을 붙인 메서드는 객체에 대한 조작을 담당하기 위.. 2022. 12. 16.
병행 제어란? 병행 제어란? 다수의 사용자 환경에서 여러 트랜잭션이 실행될 때 데이터베이스의 일관성 유지를 위해 상호 작용을 제어하는 기법이다. 병행 제어 미 보장시 문제점 1. 갱신 손실(Lost Update) : 먼저 실행된 트랜잭션의 결과를 나중에 실행된 트랜잭션이 덮어쓰게 된다. 2. 현황 파악오류(Dirty Read) : 트랜잭션의 중간 수행 결과를 다른 트랜잭션이 참조하여 발생하는 오류 3. 모순성(Inconsistency) : 두 트랜잭션이 동시에 실행되어 데이터베이스의 일관성이 결여되는 오류 4. 연쇄복귀(Cascading Rollback) : 복수의 트랜잭션이 데이터 공유 시 특정 트랜잭션이 처리를 취소할 경우 트랜잭션이 처리한 곳의 부분을 취소하지 못하는 오류 -> 한마디로 두 개의 트랜잭션이 하나의.. 2022. 12. 13.
[JPA] 임베디드 타입 클래스를 구성하고 있는 내용을 간단하게 표현할 수 있도록 하는 내용이다. 이해한 바로는 공통 부분을 구성한다고 해야하나? 시간날때 더 자세히 알아보고 적도록 하겠다. 2022. 12. 10.
[JAVA] JAVA의 인터페이스란? 인터페이스란 간단하게 말해서 서로 간에 지키는 약속이라고 말 할 수 있겠다. 두 사람이 대화를 나누는데 한명은 한국사람이고 다른 한명은 미국 사람이면 서로 언어가 달라서 이해하기 어렵다. 그렇기 때문에 우리가 어떤 규칙을 정해놓고 이야기를 하자는 것이 인터페이스라고 할 수 있겠다. 조금 더 구체적으로 설명하자면 인터페이스에 정해져있는 메소드를 통해서만 통신을 하겠다 라고 보면 되겠다. 그렇다면 인터페이스는 어떤 특징을 가지고 있을까? 1. 인터페이스는 추상 메서드와 상수만을 가질 수 있다. 다른 클래스에서 인터페이스를 통해 메서드를 구현하여 사용한다. (상속이 아닌 구현 Implements) 추상 클래스는 멤버 변수나 일반 메서드 , 추상 메서드 등을 가질 수 있지만 인터페이스는 오로지 추상 메서드와 상.. 2022. 12. 8.