본문 바로가기
관리자

Programming-[Backend]/Java

(44)
[패턴][TIL] HashSet으로 자바 List String 중복검사, equals, hashCode Override List 내부 모든 항목 중복 검사를 위한 패턴과 비교 List의 원소 내부에 공통으로 중복되는 필드값이 있는 경우 에러를 반환해야되는 상황을 생각해보자. 아래 코드와 같이 SchoolDto가 level과 code가 모두 같은 경우 에러를 던져야한다. 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 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 public class SchoolService { public void checkOverrode()..
[TIL][링크] Predicate, BooleanExpression의 개념과 차이점 Predicate, BooleanExpression 개념 뭐냐 BooleanExpression 클래스는 자바8 문법이다. 조건문을 담을 수 있고, 담은 조건문을 다른 곳에서 활용할 수 있다. 왜쓰냐 조건문이 null일수도 있다. 단순 Builder를 쓰면 문법도 보기 좋지 않고 무슨 조건절인지 한눈에 파악이 어렵다. BooleanBuilder builder = new BooleanBuilder(); if(XxxRepository.getMemberId() != null) { builder.and(....) } 이런식으로 BooleanBuilder에 조건절을 if문을 통해서 하나하나 검사하고, and 메서드로 조건절들을 추가한다. 그리고 완성된 BooleanBuilder를 쿼리문의 조건절에 넣는데, 조건이 ..
[링크] 자바 final 요약 참조1. 링크 요약 -final은 클래스, 메서드, 변수에 붙일 수 있다. -final로 선언하면 해당 객체가 변하더라도 원래 선언 시에 할당되었던 값으로만 객체를 참조한다. -final이 붙은 클래스는 상속 불가 -final이 붙은 메서드는 오버라이드 불가 -final이 붙은 변수는 재할당 불가 참조 1. 개발왕 도던님의 블로그 https://makemethink.tistory.com/184
[TIL] ENUM 값 정의하고 불러오기 1. 정의 클래스를 정의하듯이, 'public enum 이름' 으로 정의한다. 상단부에 ENUM의 이름을 대문자로 적고, 속성값으로 필드값들을 정의한다. 생성자와 Getter를 작성한다. 2. 사용 ENUM으로 정의한 모든 value들을 return 하기 위해서 Arrays.stream(ENUM 이름.values()).map() 메서드를 활용한다.