전체 글

deleteAll과 deleteAllInBatch()의 차이 OrderServiceTest를 작성하면서... @SpringBootTest class OrderServiceTest { @Autowired private ProductRepository productRepository; @Autowired private OrderRepository orderRepository; @Autowired private OrderProductRepository orderProductRepository; @Autowired private StockRepository stockRepository; @Autowired private OrderService orderService; @AfterEach void tearDown..
스트림 API는 내부적으로 다양한 최적화가 이루어져 내부 반복 뿐 아니라 코드를 병렬로 실행할지 여부도 결정할 수 있다. 순차적인 반복을 단일 스레드로 구현하는 외부 반복으로는 스트림 API만큼의 최적화를 달성할 수 없다. 필터링 Predicate를 이용해서 스트림의 요소를 선택하는 방법 Stream filter(Predicate
컬렌션 관련 연산을 SQL처럼 선언형으로 연산을 표현할 수 없을까? 이 장의 내용 스트림이란 무엇인가? 컬렉션과 스트림 내부반복과 외부 반복 중간연산과 최종 연산 4.1 스트림이란 무엇인가? 스트림(Stream)은 자바 8 API에서 새로 추가된 기능이다. 스트림을 이용하면 선언형(데이터를 처리하는 임시 구현 코드 대신 질의로 표현)으로 컬렉션 데이터를 처리할 수 있다. 스트림을 통해서 멀티스레드 코드를 구현하지 않아도 데이터를 투명하게 병렬로 처리할 수 있다. 기존 코드(자바7) List lowCaloricDishes = new ArrayList(); for(Dish dish : menu) { if(dish.getCalories() < 400) { lowCaloricDishes.add(dish); } ..
이 장의 내용 람다란 무엇인가? 어디에, 어떻게 람다를 사용하는가? 실행 어라운드 패턴 함수형 인터페이스, 형식 추론 메서드 참조 람다 만들기 람다란 무엇인가? 3.1 람다란 무엇인가? 람다 표현식은 메서드로 전달할 수 있는 익명 함수를 단순화한 것이라고 할 수 있다. 익명 public String ummm...() { return "메서드 이름을 뭐로 해야돼!!!"; } 보통의 메서드와 달리 이름이 없어 구현해야 할 코드에 대한 걱정거리가 줄어든다. 함수 @Service @RequiredArgsConstructor public class OrderService { private final ProductRepository productRepository; private final OrderReposito..
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ..하ㅏ핳 UnknownEntityException 이름만 봐도 알거 같았다. select 기능도 하나 넣어주고 싶어서 EntityManager를 통해서 select쿼리 날렸는데 해당 table이 JPA를 사용하지 않고 있었기 때문에 발생했다. 발생된 코드다... 부끄럽지만 ㅋㅋㅋㅋ,,, Exception이름만 봐도,, 아 이거구나 싶었다. 이래서 클래스,변수,메서드 이름 잘 짓는게 중요한거 같다 내가 고민을 하다가 statement방식은 sql Injection공격이 있을 수 있어서 prepared statement 방식으로 처리해야 되나 생각했다. prepared statement는 org/h2/jdbc/JdbcPreparedStatement.java 에서 setString 메서..
uhanuu
몸뚱아리부터 마음가짐까지