아래와 같은 질문을 받았다. String msg = “Hello”; String msg = new String(“Hello”); 위 두 가지 코드 중 어떤 방식이 더 나은 방식일까? 같을까? 다를까? 몇 가지 케이스를 아래와 같이 테스트 해 보았다. public class StringTest { @Test public void String_Object_Test() { String msg1 = "Hello"; String msg2 = "Hello"; String msg3 = new String("Hello"); String msg4 = new String("Hello"); String msg5 = new String("Hello").intern(); System.out.println(msg1 == msg2..
개발을 진행하다가 문득 "Jackson으로 JSON을 읽거나 쓸 때, DateTime 형은 어떤 포멧을 가질까? 그리고 이를 원하는 포멧으로 지정할 수 있을까?” 라는 의문이 생겼다. 그냥 무작정 해보자. DateTime 형 속성을 하나 갖고 있는 모델이 있다고 가정하자. @Data @AllArgsConstructor public class DateTimeModel { DateTime ymdt; } public class TempTest { private ObjectMapper objectMapper = new ObjectMapper(); @Test public void deserialize() throws Exception { DateTimeModel model = new DateTimeModel(ne..
예를 들어보자 { “no”: 1234, “id”: “test”, “name”: “John”, “age”: 20 } @Data public class Member { private int no; private String id; private String name; //private int age; } 위 처럼 되어 있는 경우 Member 객체로 변환할 때 오류가 발생할 것이다. age 라는 속성을 알 수 없기 때문이다. 이를 해결하는 방법은 2가지가 있다.(아마 그 외에도 있으리라 생각되지만 잘 모르겠다.) 1. POJO 클래스에 @JsonIgnoreProperty(ignoreUnknown = true) 를 붙여주는 방법 @JsonIgnoreProperty(ignoreUnknown = true) @Dat..
아래 글은 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(..
- Total
- Today
- Yesterday
- 책요약
- Sqoop
- spark
- db
- jenkins
- mysql
- Apache Spark
- 태그를 입력해 주세요.
- bigdata
- Git
- Hdfs
- HADOOP
- exception
- 알고리즘
- Learning Spark
- 데이터 리터러시
- PYTHON
- Django
- 확률분포
- mongodb
- 데이터과학자
- jackson
- flume
- jenkins2.0
- Oracle
- json
- spring
- java
- mongo
- linux
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |