[JPA] 트랜잭션과 락
트랜잭션트랜잭션은 ACID를 보장해야 한다. 원자성(Atomicity) : 트랜잭션 내에서 실행한 작업들은 마치 하나의 작업인 것처럼 모두 성공하거나 실패해야 한다. 일관성(Consistency) : 모든 트랜잭션은 일관성 있는 데이터베이스 상태를 유지해야 한다.예를 들어 데이터베이스에서 정한 무결성 제약 조건을 항상 만족해야 한다. 격리성(Isolati
트랜잭션트랜잭션은 ACID를 보장해야 한다. 원자성(Atomicity) : 트랜잭션 내에서 실행한 작업들은 마치 하나의 작업인 것처럼 모두 성공하거나 실패해야 한다. 일관성(Consistency) : 모든 트랜잭션은 일관성 있는 데이터베이스 상태를 유지해야 한다.예를 들어 데이터베이스에서 정한 무결성 제약 조건을 항상 만족해야 한다. 격리성(Isolati
lombok 라이브러리를 사용하면 getter, setter 등을 어노테이션으로 편하게 사용할 수 있다. 그 중에 생성자를 자동으로 생성해주는 어노테이션에 소개하고자 한다. 123456789@NoArgsConstructor@RequiredArgsConstructor@AllArgsConstructorpublic class Student { @N
Java에서 equals()와 ==는 객체 혹은 내용을 비교할 때 사용하곤 한다.이 둘은 어떤 차이점이 있을까? == : 동일성 비교 Primitive Type(int, float, double, long 등)일 경우에는 값이 같은 지 확인 그 외에 객체나 Reference Type일 경우에는 주소가 같은지 확인 123456789//리터럴 생성String
1.개요자바 객체를 비교하기 위해서 Comparable 혹은 Comparator라는 인터페이스를 사용하게 된다. 두 인터페이스의 차이점을 예제로 살펴보도록 하자. 2.예제로 살펴보기Player 클래스 만들기 1234567public class Player { private int ranking; private String name;
IntelliJ에서는 import 구문이 5개 이상 추가 되면 *로 표시가 된다. 1import java.util.*; *로 표시되면, 어떤 패키지 경로를 참조하고 있는지 알기 어렵기 때문에, 현재 사용중인 모든 패키지 경로를 표시해주는 것이 좋다. 설정을 변경하기 위해서는 아래 메뉴로 들어가서 설정을 변경한다. Preferences > Editor
HashMap이란?Key, Value를 하나의 데이터(Entry)로 저장하는 Map의 구현제 중 하나이다. HashMap의 특징은 아래와 같다. null key와 null value를 모두 허용한다. 내부적으로 데이터에 접근할 때 동기화를 보장하지 않는다. 데이터의 순서를 보장하지 않는다. 중복된 key값을 허용하진 않지만, 중복된 값은 가질 수 있다.
ConcurrentModificationException 해결 하기List에서 특정 조건에 해당하는 원소만 삭제 해야 할 경우가 있다.특정 숫자를 지워야 해야 한다면 아래와 같은 코드를 떠올릴 수 있을 것이다. 123456789List<Integer> numbers = new ArrayList<>()
배열의 첫 번째 원소를 min과 max로 지정한다.배열의 크기 만큼 for loop를 돌면서 초기 min, max 값과 비교하면서현재 min보다 작은 값이면 min에 저장하고, 현재 max 값보다 크면 max 에 저장한다. 123456789101112131415161718192021public class Main { &n
Collections의 reverse함수를 사용하기 위하여 배열을 List로 변환하는 방법을 사용하였다. 12345678910111213141516171819import java.util.Arrays;import java.util.Collections;import java.util.List; public clas
StringBuffer의 reverse() 함수를 이용하면 쉽게 문자열을 순서를 뒤집어 출력할 수 있다. 1234567891011public class Main { public static void main(String[] args) {&nbs