개발공부(173)
-
(1) Exception Handling
예외 처리(Exception Handling)은 Controller에서 바로 처리(handling)하지 않는 것이 좋습니다. 중복이 발생해 클린하지 않은 코드가 되기 때문입니다. 횡단 관심사(Aspect)로 두어 한 곳에서 처리하는 것이 바람직합니다. 처리할 수 있는 방법은 3가지가 있습니다. - Http Status Return 방법 : 예외 클래스를 만들어 @ResponseStatus 어노테이션을 클래스에 부여합니다. Controller 클래스에서 예외가 발생할 것 같은 지점에 해당 클래스 객체를 사용합니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 //Exception @ResponseStatus(value=HttpStatus.NOT_FOUND, reason="No..
2021.03.22 -
(2) #!/bin/bash
#!/bin/bash 정의 : 스크립트문을 어떻게 해석할 지 커맨드를 지정해주는 코멘트 라인입니다. 스크립트 파일 첫줄에 쓰입니다. (In simple words, the she-bang at the head of the script tells the system that this file is a set of commands to be fed to the command interpreter indicated) 예시 : 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 32 33 34 35 36 37 38 39 #!/bin/bash REPOSITORY=/home/ubuntu/salle/salle cd $R..
2021.03.22 -
(22) defaultIfNull
defaultIfNull 정의 : Object에 사용할 수 있는 메서드로 null값이 들어와도 Exception을 던지지 않고 default값으로 대체합니다. defaultIfNull은 org.apache.commons.lang 패키지 ObjectUtils의 메서드인데, java.lang 클래스에 재사용 가능한 정적 유틸리티 메서드를 제공하는 패키지 입니다. 예시 : defaultIfNull(T Object, T defaultvalue) 참고자료 : commons.apache - ObjectUtils
2021.03.19 -
(21) checkArgument
checkArgument 정의 : checkArgument는 메서드의 생성자나 파라미터가 올바로 호출되었는지 검증하는 Preconditions 클래스의 메서드입니다. 파라미터에는 if문처럼 참/거짓 조건(boolean expression)이 들어가며 원하는 errorMessage를 추가해줄수도 있습니다. 예시 : 1 2 3 4 5 6 7 public static double sqrt(double value) { Preconditions.checkArgument(value >= 0.0, "negative value: %s", value); } void exampleBadCaller() { double d = sqrt(-1.0); } Colored by Color Scripter cs 참고자료 : Java ..
2021.03.19 -
(20) ObjectMapper
ObjectMapper 정의 : Java 객체들을 JSON 형식으로 파싱, 반대로 객체화(deserialize) 기능을 제공하는 mapper입니다. Jackson 라이브러리를 사용하기 때문에 외부 jar을 추가하셔야 될 수도 있습니다. 설명 : writeValue API를 사용해 Java 객체를 JSON 형식으로 파싱해줄 수 있습니다. 예시 : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 public class ObjectMapperPrac { public static void main(String[] args) throws IOException, JsonMappingException { ObjectMapper objectMapper = new Obje..
2021.03.18 -
(19) Optional
Optional 정의 : Object가 null이거나 non-null이라도 저장할 수 있는 컨테이너 입니다. value-based 클래스라서 reference equals(==)를 쓰지 못하고 equals to를 사용해야 합니다. 설명 : 메서드 isPresent()로 null 유무에 따라 boolean을 반환해줄 수도 있지만 orElseThrow(() -> new Exception...) 을 사용하는 것이 더 좋다고 합니다. 참고자료 : Java API Note HomoEfficios님 블로그 - Java Optional 바르게 쓰기
2021.03.18