Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

데이터로 검색조건을 축소하였으며  이후에 sorted , map 은 map식을 사용하여

랭킹을 부여한후 우리가 원하는 데이터 List로 랭킹 데이터로 변환하게 됩니다. 람다식을 사용한 이유는, SQL문은 절차식 코드가 아니며

어플리케이션에서도 절차식이 아닌 선언형을 사용함으로 SQL 사고방식과 유사하게 할수있고

람다식을 활용하였습니다실제 절차식 코드보다 커스텀한 데이터 변환처리를 훨씬 깔끔하게 할수가 있습니다.

Code Block
languagejava
themeEmacs
titleRank수행하기
	public void RankTest() {		
	     int[] score = {Integer.MIN_VALUE};
	     int[] no = {0};
	     int[] rank = {0};	
	     List<AddressAgeRank> ageRankList =  
				addressRepo.findByAgeBetween(10, 90).stream()
				.sorted((a,b) -> b.getAge() - a.getAge() )
				.map(p -> {
		             ++no[0];
		             if (score[0] != p.getAge()) rank[0] = no[0];
		             return new AddressAgeRank(p.getName(),score[0] = p.getAge(),  rank[0] );					
				})
				.collect(Collectors.toList());
	     
	     ageRankList.forEach(item ->{
	    	 System.out.println(item.toString());	    	 
	     });	    
	}

...