enum - 열거타입으로 특정 기준으로 그룹화 한 상수라고 볼 수 있다. - primitive 타입처럼 "=="으로 동일성을 비교할 수 있다. - enum에서 지원하는 메소드 Static MethodsvalueOf(String arg) String 값을 enum에서 가져온다. 값이 없으면 Exception 발생valueOf(Class class, String arg)넘겨받은 class에서 String을 찾아, enum에서 가져온다. valueOf(String arg)는 내부적으로 자기 자신의 class를 가져오는 것이다.values()enum의 요소들을 순서대로 enum 타입의 배열로 리턴한다. ENUM$VALUES의 카피이므로, 너무 자주 호출하는 것은 좋지 않음.Static 아닌 Methods nam..
- java에서 정렬을 구현할때에는 Comparable, Comparator을 사용한다. 그밖에 Guava의 Ordering이 있다. - String, Integer는 기본적으로 compareTo메소드가 구현되어 있다. 1. 정렬의 기본 compareTo. -1 0 1 a, b를 비교하여 (기준은 왼쪽 파라미터) -1이 리턴되면 왼쪽이나 앞쪽 1이 리턴되면 오른쪽이나 뒤쪽 1. 오름차순 (a가 기준이되므로 a가 b보다 작을 경우 -1을 리턴하여 앞쪽으로 보낸다.) a b 1 2. 내림차순 (a가 기준이되므로 a가 b보다 클 경우 -1을 리턴하여 앞쪽으로 보낸다.) a > b -1 a == b 0 a < b 1 ** Example) String의 정렬 1. 입력받은 문자..
serializable serializable 인터페이스는 어떤 객체가 원하는 대상(파일이나 특정 서버)에 전송될 때 사용한다. 왜 이 때 serializable 인터페이스를 사용할까? public class UserDTO { private long id; private String name; } 어떤 사람은 객체의 정보를 id, name 순서로 저장할 수도 있고, 어떤 사람은 name, id 순서로 저장할 수 있다. 만일 어떤 파일에 UserDTO 타입 객체의 정보가 저장 되었다고 생각해 보면 저장하는 사람은 저장하는 방법을 반드시 알아야 하고, 사용하는 사람도 객체가 저장된 정보의 순서 같은 추가적인 정보를 알아야만 한다. 객체를 사용하는 정보도 상대방이 알아야 하기 때문에 우리가 해야 하는 작업이 ..
synchronized 여러 thread가 동시에 접근하는것을 막아주는 예약어이다. synchronized 예약어가 붙으면 thread에서 해당 예약어가 붙은 메소드나 필드에 접근할 때 lock이 잡히고, lock이 풀릴때 까지 다른 thread가 접근할 수 없다. synchronized는 성능을 저하시키므로 synchronized를 적용할때는 적용되는 부분을 최소화 해야 한다. EX :아래 예제는 synchronized가 어떻게 동작하는지 잘 보여주는 예제이다. doA는 synchronized가 없이 t0, t1 쓰레드가 경쟁적으로 doA() 메소드를 호출한다. doA를 주석처리하고 doB의 주석을 풀면 먼저 doB() 메소드를 점유한 쓰레드의 작업이 끝날때까지 다른 쓰레드가 doB() 메소드를 호출할..
1. Equlas java의 Data Type은 primitive type (int, long)과 reference type (Integer, Long)이 있다. primitive type은 int, char 등이 있는데 이런 형태의 Data Type은 "==" 연산자로 동일한 데이터인지 비교할 수 있다. 하지만 reference type은 java에서의 최상위인 java.lang.Object를 상속하는 모든 class로 primitive type처럼 "==" 연산자로 동일한 데이터인지 비교할 수 없다. reference type을 "=="로 비교하면 데이터를 비교하는게 아니라 해당 object의 reference가 동일한지를 비교하기 때문이다. 그런데 왜 "equals" 설명하는데 뜬금없이 primit..
- Total
- Today
- Yesterday
- Spring
- 복합키 Mapping
- docker
- scikit-learn
- Akka
- Sprint RetryTemplate
- Spring JDBC Template
- Query DSL
- java Equals
- @Primary
- Spring Registrar
- SmartLifecycle
- Mapping
- JPA Criteria
- Registrar
- JPA
- Discriminate Mapping
- RetryTemplate
- java EqualsAndHashCode
- Join Table
- Criteria
- Embeddable Mapping
- java generic
- DI
- Embedded Mapping
- spring spel
- Property
- guava
- Typesafe Config
- Charles proxy
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |