아래 글은 Lombok 1.16.16 기반에서 작성되었다. Lombok에서 @Builder를 사용하다 보니 상속 구조에서 불필요한 코드를 작성해야 하는 경우가 있었다. 예를 들어 아래와 같이 두 모델 객체가 있다고 하자. @Data @AllArgsConstructor public class User { protected String id; protected String name; } @Data public class AdminUser extends User { private String roleId; private String roleName; @Builder public AdminUser(String id, String name, String roleId, String roleName) { super(..
Lombok이 무엇인지 간단히 살펴보고 넘어가자. 어떻게 프로젝트에 적용하는지는 언급하지 않는다. 검색을 통해서 알아보자. 가장 기본적인 기능으로 Lombok은 getter/setter method를 만들어 준다. 예를 들어 아래와 같이 User라는 모델 객체가 있다고 가정하자. public class User { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } } @..
이 글은 "자바 8 람다의 힘" 책을 정리한 글입니다. Chapter 4. 람다 표현식을 이용한 설계 앞에서 다른 내용들만 봐도 람다를 이용하여 코드를 좀 더 간결하고 읽기 쉽게 작성할 수 있다는 것을 알았다. 이 장에서는 람다 표현식을 사용하여 여러가지 패턴이나 설계들을 구현하는 방법에 대해서 알아보자. 1. 전략패턴(Strategy Pattern) 클래스를 생성하는 이유 중 하나는 코드를 재사용하기 위함이다. 좋은 의도이긴 하나 항상 그런 것은 아니다. 자산의 총합을 구하는 예제를 통해 클래스 내의 코드 재사용성을 향상시켜 보자. 먼저 Asset 클래스를 생성한다. public class Asset { public enum AssetType { BOND, STOCK }; private final As..
오라클 DB가 JDBC 버전을 11.2.0.3 으로 Upgrade 한 뒤, Connection을 release하지 못하고 lock이 걸리는 문제가 발생했다. 이로 인해 순간적으로 connection reset으로 DB connection 부족현상을 격으면서 CPU 등이 100%로 was서버가 hang이 걸렸다. 원인을 밝혀내지 못해 JDBC 버전을 10.X 버전으로 롤백해서 임시적으로 해결했었는데, 11.2.0.4 버전이 release되어 변경사항을 확인해보니, 버그였던 것 같다. Oracle JDBC Drivers 11.2.0.4 Readme =================================== Base Readme (11.2.0.1) @ http://download.oracle.com/ot..
- Total
- Today
- Yesterday
- Git
- HADOOP
- linux
- Django
- Hdfs
- jackson
- 책요약
- bigdata
- jenkins
- jenkins2.0
- Oracle
- 확률분포
- mongo
- spring
- json
- 데이터과학자
- 데이터 리터러시
- PYTHON
- db
- flume
- 알고리즘
- mysql
- mongodb
- java
- Learning Spark
- exception
- Apache Spark
- spark
- Sqoop
- 태그를 입력해 주세요.
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |