본문 바로가기

Java56

자바 ExecutorService 결과값이 없는 비동기. C#으로 치면 Action인듯. package main.java.com; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; public class ExecutorServiceMain { public static void main(String[] args) { System.out.println("start"); ExecutorService executorService = Executors.newCachedThreadPool(); executorService.execute(() -> { try{ Thread.sleep(10); System.out.println("result2"); } .. 2020. 11. 3.
자바 쓰레드 Future 자바 JDK 1.5?에서 나왔다고 하는 쓰레드. 닷넷에 백그라운드 워커랑 비슷한 개념같다. 아마 비슷한 시기에 나와서 그런듯함. package main.java.com; import java.util.concurrent.*; public class FutureMain { public static void main(String[] args) throws InterruptedException, ExecutionException, TimeoutException { System.out.println("start"); ExecutorService executorService = Executors.newCachedThreadPool(); Future future = executorService.submit(new .. 2020. 11. 3.
스프링부트 JPA 사용기 특징. 1캐시, 2캐시가 존재. 1캐시는 로컬 영역. 2캐시는 글로벌 영역으로 처리. 데이터베이스에 직접 데이터를 넣기 전 메모리로 정보를 가지고 있는다. 때문에 가지고 있는 정보를 먼저 조회 후 데이터가 없으면 데이터베이스에 연결. 장점. 데이터베이스와 커넥션을 줄일 수 있다.(통신 비용 감소) 데이터베이스를 잘 몰라도 정보를 조회할 수 있다.(컬렉션을 사용하는 방법으로 운영하는 듯.) 단점. 어노테이션 고수가 되야 한다. 어렵거나 최적화 쿼리는 짜기 어렵다. 제공되는 기능이 많다보니 헬적화 인듯. 타인 혹은 타사에게 제공하는 라이브러리를 구현해본 사람은 알겠지만 결국 어노테이션(애트리뷰트) 혹은 원래 기능이 필요하다. 때문에 자체적 쿼리도 구현할 수 있도록 제공 하는 등 아무래도 최적화하기엔 프로시저.. 2020. 11. 1.
인텔리제이 클래스 다이어그램 프로젝트 구조에서 마우스 오른쪽을 누르면 뜨는 메뉴 하단에 다이어그램이 있다. 왼쪽 상단에 필드, 맴버, 인터페이스 정보별로 볼수있다. 유저 인증이 안되면 다음과 같은 에러를 처리하며 Json으로 자동으로 만들어 반환하는데, 위에 다이어그램을 보면 연동되어 있는게 확인 가능하다. 2020. 9. 17.