반응형

자바 API 4

[java] list의 null 체크(ObjectUtils.isEmpty())

목차 NPE 😂 NPE(NullPointerException)는 java 개발하다 보면 정말 많이 만나는 에러 중 하나이고 Null값인 대상을 가지고 뭔가 하려고 하면 발생하는 에러다. 방지법은 공통모듈을 만들어 항상 null 체크를 하게끔 개발하는게 삽질을 줄이는 길일 듯 싶다. 아래와 같은 상황에서 NPE가 발생한다. userList에 아무것도 할당되지 않은 상태인데 사이즈를 측정하려고 하다니?(미친건가?) List userList = null; log.info("userList => {}", userList.size()); 스프링으로 개발 시 보통 데이터를 list에 담아 화면에 뿌리거나 API 형식으로 클라이언트에 내리거나 할텐데 list가 null이거나 빈값이 담기거나 사이즈가 0인 경우 등등 ..

IT/development 2023.02.12

[java]생년월일로 만나이 계산 예제

목차 [java]생년월일로 만나이 계산 예제 생년월일로 만나이 구하는 예제 소스이다. public static int getAgeByBirthday(String birthDay) { // param값은 "2000-01-01" 타입의 데이터라는 가정 String birth = StrUtils.replace(birthDay, "-", ""); // 년,월,일 자르기 int birth_year = StrUtils.parseInt(StrUtils.substring(birth, 0, 4)); int birth_month = StrUtils.parseInt(StrUtils.substring(birth, 4, 6)); int birth_day = StrUtils.parseInt(StrUtils.substring(bi..

IT/development 2022.11.24

[Java] Java String convert to byte[], byte[] convert to String

목차 Java String convert to byte[], byte[] convert to String java에서 문자열을 byte[]로 변환하고 반대로 byte[]를 문자열로 변환해야 되는 경우가 종종 생긴다. 만일 DB 테이블이 한글을 지원하지 않는 charset인 경우 DB테이블의 charset에 맞게 인코딩하여 숫자로 저장 후 사용자에게 보여줄 때는 디코딩한다. 그리고 문자열 암호화 등에도 쓰이는데 그 방법을 기록한다. String convert to byte[]😄 .getBytes() 메서드 이용 .getBytes()에 매개변수를 아무것도 안 넣으면 기본값 charset이 사용됨 .getBytes("UTF-*8"); 이런식으로 매개변수에 charset 설정 시 해당 charset으로 인코딩되..

IT/development 2022.11.23

[Java] Java Stream 사용법 정리(jdk 1.8 부터 사용 가능)

목차 Java Stream 사용법 정리😃 Java 1.8부터 지원되기 시작한 stream사용법에 대해 기록한다. 그동안 stream에 대해 깊게 공부해본 적이 없어서 이 기회에 제대로 공부해 보도록 하겠다. 앞으로 jdk 1.8을 사용할 경우에는 배열, 컬렉션 다룰 때 for문 도배하기 보단 효율적으로 stream을 사용할 수 있도록 공부할 예정이다.🤗 예를 들어 int타입 배열의 값을 중복 제거 후 내림차순 정렬해서 list로 반환하려고 한다. 그러면 스트림을 사용하지 않는 경우는 아래처럼 긴 코드를 입력해야 한다. 이를 스트림을 이용하면 아래 한줄이면 된다. 이를 좀 더 풀이하면 아래와 같다. System.out.println(Arrays.stream(arr).boxed()// stream 생성 .d..

IT/development 2022.11.23
반응형