이번장에는 JAVA 8 부터 제공해주는 스트림과 함수형 인터페이스에 대해 알아보자. 스트림 JAVA 8부터 추가되었으며 Collection의 저장요소를 순회하면서 각 요소들에 대한 필터, 연산, 그룹핑 등의 작업을 해주는 기능이며 람다표현식으로도 처리를 할 수 있다. 스트림이 나오기 전에는 Collection객체를 처리할때 코드가 많아지고 가독성이 좋지않았다. 아래 예제코드를 한번보자 스트림 이전코드 스트림 없이 List를 순회하면서 문자열 'A'가 존재하는 요소들만 따로 List로 얻고싶다면 직접 for문을 돌려서 요소들 하나씩 체크하여 또다른 List에 담아주었다. 가독성도 별로이고 코드길이만 괜히 길어질 뿐이다. 이제 이 방식을 스트림의 기능중 '필터'를 이용해서 처리해보도록 하자. 스트림 이후코드..
웹개발을 해본 개발자라면 게시판을 한번이상은 개발해보았을 것이다. 게시판을 개발하면서 각 게시글의 기본적인 데이터 및 게시글의 순번을 화면에 보여주게 되는데 이때 게시글의 순번은 각 게시글을 대표하는 번호인 DB 테이블에 INT타입의 PK값(sequence, auto_increment로 처리된 값) 을 주로 보여주게된다. 하지만 PK값이 숫자가 아닌 다른값이라던가 혹은 고객사의 요청으로 No값을 DB에있는 값이 아닌 순수 게시글의 순번을 보여달라는 요구사항이 들어올 수 있다. 실제로 필자는 이러한 요구사항을 받은적이 있다. 긴 말보단 바로 예제코드와 함께 살펴보도록 하자. 개발환경 Java 11 Spring Boot 2.3.5 Mybatis Thymeleaf 데이터 준비 게시판 테이블을 만들어서 페이징을..