Java
-
[Java] Zookeeper Java 예제Java 2019. 6. 5. 10:05
A Simple Watch Client Zookeeper 자바 API를 소개하기 위해서 간단한 와치 클라이언트를 살펴본다. Zookeeper 클라이언트는 Zookeeper 노드의 변경 사항을 와치하면서 프로그램을 시작하거나 멈춘다. Requirements 클라이언트는 4가지 요구사항을 가진다. 다음을 파라미터로 받는다. Zookeeper 서비스 주소 와치할 znode의 이름 an executable with arguments. znode에 관련 내용이 패치되면 executable을 시작 znode가 변경되면 클라이언트는 내용을 다시 패치받고 executable을 다시 시작 만약 znode가 사라지면 클라이언트는 executable을 kill Program Design zookeeper 애플리케이션은 보통..
-
[Java] 문자열 입력Java 2019. 6. 1. 00:22
Java에서 문자열을 입력 받는 방법 중 Scanner클래스를 통한 방법을 살펴본다 import java.util.Scanner; public class Test { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("이름을 입력하세요:"); String name = scanner.nextLine(); System.out.printf("안녕하세요, %s님!\n", name); } } 간단한게 입력받은 문자열을 출력한다 System.in을 통해서 숫자를 입력 받는 경우 Scanner sc = new Scanner(System.in); int i = sc.nextInt(); Sca..
-
[Java] Lombok @Data 어노테이션Java 2019. 5. 7. 12:45
@Data 에 포함되어 있는 lombok은 다음과 같다. @ToString @EqualsAndHashCode @Getter : 모든 필드 @Setter : 정적 필드가 아닌 모든 필드 @RequiredArgsConstructor @Data와 함께 포함되어 있는 lombok의 설정 예를 들어, callSuper, includeFieldNames 그리고 exclude 등을 지정할 수는 없다. 따라서 개별 어노테이션의 설정 값을 기본값이 아닌 값을 사용할 때에는 @Data 대신 개별 어노테이션을 사용하도록 한다. 출처: https://projectlombok.org/features/Data
-
[Java] 정규표현식 기본 문법Java 2019. 4. 23. 16:45
소스 코드 내에서 정규표현식을 사용해서 문자열을 확인하는 경우가 많다. 정규표현식에 대한 간단한 테스트는 다음과 같이 작성한다. public static void main(String[] args) { System.out.println(Pattern.compile("\\d").matcher("3").matches()); // true } 정규 표현식의 간단한 문법을 살펴보자. 메타문자 기능 설명 . 문자 1개의 문자와 일치 [] 문자 클래스 "["와 "]" 사이의 문자중 하나 선택 예를 들어, [abc]d는 ad, bd, cd를 의미하며 "-"와 함께 범위 지정 가능 [^] 부정 문자 클래스 안의 문자를 제외한 나머지를 선택 ^ 시작 문자열의 시작 $ 끝 문자열의 끝 () 하위식 여러 식을 하나로 표현 ..
-
[Java] 부정을 나타내는 변수명 붙이는 방법Java 2019. 4. 21. 00:27
부정을 나타내는 접두어 즉, prefix 를 붙여 변수명을 짓고 싶은 경우가 종종있다. 물론 변수명은 되도록 부정보다는 뜻 그대로 사용하는 경우가 좀 더 권장되는 방법이긴 하지만, 필요한 경우가 분명히 존재한다. 부정을 나타내는 접두어인 "un-" 과 "non-"은 각각 어떤 경우에 붙이는지 알아본다. un- 은 보통 뒤에 오는 명사나 형용사에 반대의 경우 붙여준다. 예를 들어, unProfessional 은 professional이 아닌에 해당한다. non- 은 보통 뒤에 오는 케이스가 아닌 not의 의미로 사용한다. 예를 들어, nonPC는 PC가 아닌 의미로 사용된다.
-
[Java] 읽기 쉬운 테스트를 위한 Hamcrest 사용하기Java 2019. 4. 15. 00:46
Hamcrest는 자바 유닛 테스트 작성 시 자주 사용되는 프레임워크다. JUnit에 포함되어 있어 쉽게 사용 가능하며 matcher 라이브러리를 호출하여 좀 더 읽기 쉬운 테스트 코드 작성에 도움을 준다. 간단한 테스트 import org.junit.jupiter.api.Test; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.*; public class BiscuitTest { @Test public void testEquals() { Biscuit theBiscuit = new Biscuit("Ginger"); Biscuit myBiscuit = new Biscuit("Ginger"); ..