본문 바로가기

Java8

java8 stream List를 Map으로 변환 java8 stream List를 Map으로 변환 자바 Stream이란? 자바 스트림 이란 자바8에 추가된 기능으로 컬렉션과배열 등 데이터를 처리하는데 아주 유용한 기능이다. 비유를 하자면 물이 스트림을 타고 흐르는것 처럼 데이터가 스트림을 타고 흐르는것이라고 생각하면 편하다. 스트림을 사용하면 데이터를 여러단계로 나누어 처리할수 있는데, 스트림을 이용해서 데이터를 필터링하고 정렬 그룹핑하는 등 여러가지 작업을 다양하고 간편하게 처리할수 있다. 스트림은 처리과정의 중간 결과를 저장하지 않기 떄문에 메모리 사용량도 적어서 데이터 처리할때는 매우 유용하다고 할수 있다. 병렬 처리도 지원하기 때문에 빠른 처리도 가능하다. 자바8 스트림을 요약하면, 자바 8 부터 추가된 데이터 기능 컬렉션 배열 데이터 처리하는.. 2023. 2. 14.
JSP에서 DB 쿼리 실행기 작성 초간단 샘플 JSP에서 DB 쿼리 실행기 작성 초간단 샘플 프로젝트 수행시 급하게 쿼리를 수행할 일이 생겨서 정리한다. 운영서버의 DB 경우 현업담당자는 권한이없고, DB 관리자 또한 어플리케이션 코드를 통해 처리하라고 가이드했다. 현업과 DB 관리자에게 의견을 구하고 아래와 같이 쿼리 작성 페이지를 만들어서 쿼리를 수행하기로했다. 1. query.JSP 파일 작성 DB excute -1) { query = query.replaceAll("EXEC", "call"); query = query.replaceAll("exec", "call"); query = "{? = " + query + "}"; out.println(query); CallableStatement cs = con.prepareCall(query); c.. 2022. 12. 22.
자바 문자열을 날짜로 변환하기 자바 문자열을 날짜로 변환하기 String -> Date 객체로 변환 import java.text.SimpleDateFormat; import java.util.Date; import java.util.TimeZone; public class Test { public static void main(String[] args) { Date date = null; try { date = getDateFromString("20220531111430", "yyyyMMddHHmmss"); } catch (Exception e) { e.printStackTrace(); } System.out.println(date); } public static Date getDateFromString(String dt, Stri.. 2022. 5. 31.
리눅스 - 쓰레드 덤프, 힙 덤프( thread dump, heap dump ) 시스템의 장애나 무제 발생시 원인파악이 쉽게 되지 않고 심도있는 디버깅 하려면, 쓰레드 덤프, 힙덤프를 떠서 확인해봐야할때가 있다. 내가보려고 명령어만 정리 해놓는다. 쓰레드 덤프 명령어 ( PID 확인 - EX : PID가 17141 일 경우 ) jstack -l 17141 > 20210713124600.threaddump 20210713124600.threaddump 부분은 파일명 힙 덤프 ( PID 확인 - EX : PID가 17141 일 경우 ) jmap -dump:format=b,file=heapdump.log.20210713124800 17141 heapdump.log.20210713124800 부분이 파일명 이렇게 떨어진 덤프파일을 사실 맨눈으로 보는것은 상당히 어렵다. 분석 도구들을 이용 .. 2021. 7. 13.
자바 String 원하는 문자열 추출 (indexOf, subString, chatAt, token, parseInt ) 자바 String 원하는 문자열 추출 정리 자바 String 관련해서 자르고 추출하고, 있는지 검사에 대한 자주쓰는 기본 메서드에 대해 정리한다. indexOf(String a) = a의 문자의 위치 값을 숫자를 얻는다. lastindexOf(String a) = a 문자를 뒤에서부터 찾아 위치 값 숫자를 얻는다. subString(a, b) = a부터 b전까지의 위치의 문자열을 가져온다. String substring(int index) = 문자열 index위치부터 끝까지 문자열. EX ) "자바 코딩 배우자". substring(4) => 배우자 String substrnig(int a, int b) = 현재 문자열 객체에서 a부터 b 직전까지 문자열 Char charAt(int index) = St.. 2021. 7. 6.
디자인 패턴 Builder Pattern 디자인 패턴 Builder Pattern 개념이 어렵기는 하는데, 전체를 구성하고 있는 각 부분을 만들고 단계를 밟아 만들어 나가는 패턴을 Builder Pattern이라고 해요. Builder Pattern 다이어그램은 다음과 같아요. 예제를 보도록 하자. 예제는 Builder Pattern을 사용해서 '일반 텍스트 문서'와 'HTML 형태의 문서'를 만드는 프로그램이다. Builder 클래스에서는 문서를 구성하기 위한 메소드를 결정하고, Director 클래스는 그 메소드를 사용해서 구체적인 하나의 문서를 만든다. Builder 클래스는 추상 클래스로서 실제의 처리는 기술되어 있지 않고, 추상 메소드만 선언되어 있다. 문서 작성을 위한 구체적인 처리를 결정하는 것은 Builder 클래스의 하위 클래스.. 2021. 2. 24.