드디어 ACID의 마지막인 Durability, 지속성입니다.
그런데 지속성은 사실 별로 다룰 내용이 없습니다. 트랜잭션을 통해 DB에 반영된 내용은 유지되어야 한다는 이야기입니다.
그래도 유종의 미를 거두기 위해 짧은 코드를 살펴보겠습니다.
public class MilitaryEx1 {
public static void main(String[] args) throws InterruptedException {
MilitaryDB militaryDB = new MilitaryDB();
militaryDB.입대("Jake");
militaryDB.입대("Sam");
militaryDB.입대("Kim");
militaryDB.입대("Park");
militaryDB.입대("Lee");
militaryDB.훈련소로_입장();
}
}
class MilitaryDB{
int idx = 0;
HashMap<Integer, String> newSoldiers = new HashMap<>();
public void 입대(String name) {
newSoldiers.put(idx++, name);
}
public void 훈련소로_입장() {
System.out.println("훈련병들은 차례로 훈련소로 입장한다, 실시!");
for (String name : newSoldiers.values()) {
System.out.println(name + " 훈련병, 훈련소로 입장!");
}
}
}