이 글을 읽고 나면 세가지를 알 수 있다.왜 벌크 연산 이후 조회 값이 바뀌지 않는지의 본질적인 이유flush와 clear의 역할 차이 (실무에서 자주 헷갈리는 핵심 개념)JPA가 단건에 강하고 벌크에 약한 구조적 이유에 대한 통찰단순히 "벌크 연산은 clear 해야한다"는 암기가 아닌, 왜 그런 설계가 되었는지까지 이해하는 것이 목표다.문제 : 변경 감지는 왜 위험한가?재고가 10개 미만인 모든 상품의 가격을 10% 올려야 한다. JPA 를 처음 배운 개발자라면 자연스럽게 이렇게 접근한다.// ① 조회List products = em.createQuery( "select p from Product p where p.stock jpa변경 감지 기능으로 실행하려면 너무 많은 sql 실행재고가 10..