[JAVA] Stream - Collector(콜렉터), Stream을 List,Set으로 반환
·
Language/Java
java8 Stream - Collector(콜렉터) 💡 Collectors란? Stream을 일반적인 List, Set등으로 변경시켜주는 Stream의 최종처리 메서드 1. Stream.collect() 데이터의 중간처리후, 마지막에 List,Set 등의 형태로 변환해주는 역할을 한다. 필요한 요소만 컬렉션으로 담을 수 있고, 요소들을 그룹핑한 후, 집계(Reduction)할 수 있다. 2. Stream.collect() 의 사용 collect(Collector collector) T : 파라미터 값, Stream의 요소 A : 누적기, 누적연산을 실행할 함수 R : 리턴값, 누적연산의 결과가 저장되는 객체 3. Collector의 메서드 toList, toSet Stream의 모든 elements들을..
Optional : null값에 대한 처리
·
Language/Java
💡 Optional 를 사용하는 이유? 데이터의 null값을 처리해줘야 할 때 NullPointerException(NPE)가 발생하지 않도록 해주기 위해 사용 Optional 생성 Optional 객체를 생성하기 위한 메소드 of() : 변수value의 값이 null인 경우 NPE 발생함 → 반드시 값이 있어야 하는 경우에 of()를 사용 Optional optional = Optional.of(value); ofNullable() : 변수value의 값이 null 일수 있게 설정 → 변수가 null인 경우 Optional.empty()가 리턴됨 Optional optional = Optional.ofNullable(value); empty() : 빈 Optional 객체를 생성 → Optional 객..
JSP 1차 프로젝트(4) - decorator.jsp에서 계정의 접근 권한에 따라서 링크를 판단하는 과정(작성중)
·
프로젝트
보호되어 있는 글입니다.
빌드 관리 도구 - 메이븐(Maven)과 그래들(Gradle)
·
Back-End/Spring Boot
빌드 관리 도구란? 빌드 : 소스코드 파일을 컴파일에서 실행할 수 있게 변환하는 과정 또는 결과물 빌드 관리 도구 : 컴파일 과정에서 필요한 라이브러리들을 자동으로 관리해주는 도구 최근에는 Maven과 Gradle이 많이 사용된다. 빌드 관리 도구가 수행 하는 작업 종속성 다운로드 소스코드를 바이너리코드로 컴파일 바이너리 코드를 패키징 테스트 실행 프로덕션 시스템에 배포 메이븐(Maven) 메이븐(Maven)이란? 자바용 프로젝트 Lifecycle 관리 목적 빌드 도구 아파치 Ant의 대안으로 만들어졌다. → 스크립트 작성이 많고, 라이브러리 의존관리가 어려움 아파치 라이센스로 배포되는 오픈 소스 소프트웨어 메이븐의 특징 LifeCycle : 정해진 Lifecycle에 의하여 작업을 수행, 전반적인 프로..
JSP 1차 프로젝트(0) - 톰캣실행, 초기화 과정
·
프로젝트
보호되어 있는 글입니다.
JSP 1차 프로젝트(3) - slipform.html에서의 분석(작성중)
·
프로젝트
보호되어 있는 글입니다.
Spring MVC - 로깅, 로그 사용
·
Back-End/Spring MVC
Spring MVC - 로깅, 로그 사용 로그란? 프로그램 개발이나 운영시에 발생하는 문제점 파악 및 모니터링을 위해서 기록을 남기는 것 기록 데이터를 분석하여 통계에 사용할 수 있음 운영 시스템에서는 System.out.println() 같은 시스템 콘솔을 사용해서 정보를 출력하지 않고, 별도의 로깅 라이브러리를 사용 스프링 부트 라이브러리에는 스프링 부트 로깅 라이브러리가 포함됨 로깅 라이브러리 Sl4J : Logback, Log4j, Log4J2 등 많은 로그 라이브러리를 통합해서 인터페이스로 제공해주는 라이브러리 Logback : 실제 로그 라이브러리의 구현체 특징 로그 레벨 ERROR : 요청을 처리하는 중 오류가 발생한 경우 WARN : 처리 가능한 문제이지만, 향후 에러의 원인이 될 수 있는..
JSP 1차 프로젝트(2) /posting/slipForm.html 요청
·
프로젝트
보호되어 있는 글입니다.
JSP 1차 프로젝트(1) hello.html 요청의 흐름
·
프로젝트
보호되어 있는 글입니다.
스프링 MVC의 구조 이해(2) - 실무에서 사용하는 방식 @RequestMapping, 스프링 MVC 컨트롤러
·
Back-End/Spring MVC
@RequestMapping 어노테이션 기반의 컨트롤러를 지원하는 핸들러 매핑과 어탭터 → 핸들러 매핑 / 핸들러 어댑터를 통해 실제 핸들러가 호출 실무에서는 99.9% 이 방식의 컨트롤러를 사용 RequestMapping의 인터페이스 RequestMappingHandlerMapping : RequestMapping의 핸들러 매핑 RequestMappingHandlerAdapter : RequestMapping의 핸들러 어댑터 동작 방식 HTTP Request를 통해 요청 핸들러 매핑 탐색 : HandlerMapping을 순회하며 해당하는 RequestMappingHandlerMapping 반환 핸들러 어댑터 조회 : HandlerAdapter.supports()를 순서대로 호출하며 처리할 수 있는 핸들..