Builder 패턴이란, 객체를 생성할 때 사용하는 패턴을 의미한다. Person person = Person.build() .name("Jane") .age(30) .build(); 객체 생성 패턴 3가지 점층적 생성자 패턴 public class Person { private final String name; //필수 인자 private final String nation; //선택적 인자 private final String hobby; //선택적 인자 /** 필수 생성자 **/ public Person(String name) { this(name, "국가 비공개", "취미 비공개"); } /** 1개의 선택적 인자를 받는 생성자 **/ public Person(String name, String ..
외부에 있는 json 파일을 읽어서 특정 위치의 특정 값만 바꾸어 값을 넘겨주는 작업이 필요해짐에 따라 아래 내용을 수행했다. 먼저, FileUtils 자바 파일을 생성하여 파일을 읽어오거나 삭제할 수 있는 메소드를 작성한다. import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.Reader; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; i..
Iterator 는 자바의 컬렉션 프레임워크에서 컬렉션에 저장되어 있는 요소들을 읽어오는 방법의 표준으로 컬렉션 프레임워크는 다음과 같이 데이터를 저장하는 구조에 따라 3가지 인터페이스로 구성된다. Iterator 는 Set, List, Map 과 같은 데이터 집합체로부터 정보를 얻어낸다고 볼 수 있고, 집합체를 다룰 때는 개별적인 클래스에 대해 데이터를 읽는 방법을 알아야 하기 때문에 각 컬렉션에 접근이 힘들어진다. 하지만 Iterator 를 쓰게 되면 어떤 컬렉션이라도 동일한 방식으로 접근이 가능하여 그 안에 있는 항목들에 접근할 수 있는 방법을 제공한다. Iterator 메소드는 다음과 같다. hasNext() : 읽어올 요소가 남아있는지 확인하는 메소드로 요소가 있다면 true, 없다면 false..
정규표현식(Regular Expression)이란, 컴퓨터 과학의 정규언어로부터 유래한 것으로 특정한 규칙을 가진 문자열의 집합을 표현하기 위해 쓰이는 형식언어로, 개발을 하다보면 전화번호, 주민등록번호, 이메일 등과 같이 정해져있는 형식이 있고 사용자가 그 형식대로 제대로 입력했는지 검증을 해야하는 경우가 종종 있는데, 이런 입력값을 정해진 형식에 맞는지 검증해야 할 때 정규표현식을 사용하면 쉽게 구현이 가능하다. backoffice api 에서 AWS IoT 리소스 ARN 에서 리소스의 id 와 버전 id 를 꺼내서 사용해야하는 경우가 있는데 이 때 두 가지 방법을 사용할 수 있다. substring 사용 public class ArnUtils { private static final String S..