Java(3)
-
JPA vs JDBC, JPA vs Mybatis, JPA vs Spring Data JPA의 차이점과 Hibernate
Spring은 DB에 접근하기 위해 자바의 API를 사용한다. 웹 서비스에 필요한 기능들이 추상화돼서 Spring이 만들어졌듯이, DB에 접근하는 기술들도 일종의 추상화 과정을 거치며 진화해 나갔다. 이 부분을 처음 공부하는 사람 입장에서는, 비슷해 보이면서 다른 단어들 때문에 개념이 굉장히 헷갈린다. JPA를 검색했는데 뜬금없이 Hibernate에 관한 포스팅만 쏟아지기도 한다. 그런 사람들에게 도움이 되고자 간단하게 주요 단어들과 개념들을 포스팅해보려고 한다. (각 개념에 그림과 코드를 첨부했다. 그림에서 초록색 부분은 개발자가 코드 상에서 직접 다뤄야하는 부분이다) JDBC JDBC는 DB에 접근하고, SQL을 날릴 수 있게 해주는 자바의 표준 API다. 자바 진영에서 DB에 접근하는 기술들의 근간..
2020.04.25 -
자바의 Enum
처음 자바의 Enum을 알고 난 뒤, 여기저기 유용하게 사용했다. Enum은 기본적으로 상수의 그룹을 나타낼 때 사용하는데, 자바의 Enum은 다른 언어의 Enum보다 강력한 기능을 여럿 제공한다. 이번 포스팅에서는 Enum을 활용하는 여러 방법에 대해 알아보려고 한다. 선언과 사용 public enum Rank { FIRST_PLACE(6), SECOND_PLACE(5), NONE(-1); private int matchingCount; Rank(int matchingCount) { this.matchingCount = matchingCount; } }이 때, Rank는 Enum 타입이 되고 FIRST_PLACE, NONE 등은 Enum 상수가 된다. 각 상수들은 일반 클래스와 동일하게 필드를 가질 수..
2020.04.18 -
자바의 예외처리
에러(Error) vs 예외(Exception) 자바에서 에러는 정상적인 프로그램이 잡아낼 수 없는 치명적인 문제를 뜻한다. 즉, 에러가 발생하면 복구가 불가능하고 프로그램은 비정상적으로 종료된다. 대부분 runtime 중에 일어난다. 흔히 볼 수 있는 에러로 StackOverFlowError가 있다. 반면 예외는 정상적인 프로그램이 잡아내길 원하는 조건을 뜻한다. 예외가 발생하면 프로그램이 종료될 수 있으나, 이는 try, catch, throw 등의 키워드로 복구가 가능하다. 모든 예외는 runtime 중에 일어난다. 에러와 예외는 모두 java.lang.Throwable 클래스의 자식 클래스이다. 예외 종류 - Checked vs Unchecked Unchecked Checked 예외처리 여부 명시..
2020.04.18