개발 기록
211126 TIL ( object list 중복제거 ) 본문
-챌린지 참여인원수를 가져 올 때 인증 목록에서 유저아이디 기준으로 중복제거해서 리스트 길이를 가져왔다
찾아보니 대부분 문자열을 요소로 갖는 리스트 중복제거가 많아서 복잡했지만 내가 찾던 블로그 발견 ㅎ
Util 클래스를 따로 만들어서 간단하게 처리 성공 ㅎㅎ
함수가 어려워서 하나하나가 뭔지는 자세히 모르지만 크게 보면 특정 키 값 넣어서 필터로 포함시킬지의 여부를 판단하고 중복제거해서 리스트로 반환..!
-중복이 있는 list , 중복 제거 기준 key를 인자로 받아서 중복을 제거한 후 리턴한다.
사용 예
DeduplicationUtils.deduplication(중복제거할 리스트 , Vo :: 중복 제거 기준 키의 get 메소드 )
List<CertificationResponseDto> distinct = DeduplicationUtils.deduplication(
this.certifications,
CertificationResponseDto::getUserId);
Vo란? value object. read only 속성을 갖는다. (dto랑 혼용해서 쓰기도 한다). 변하지 않는 데이터 객체.
**제네릭
---> 데이터의 타입을 일반화한다는 것을 의미.
--->제네릭은 클래스나 메소드에서 사용할 내부 데이터 타입을 컴파일시에 미리 지정하는 방법.
이렇게 봐서는 와닿지가 않았는데 예제를 보니 우리가 항상 쓰던 거였다.
MyArray<Integer> myArr = new MyArray<Integer>();
-바운드 와일드카드 타입
-<? super T>는 Lower bounded wildcard : 자기 자신과 부모 객체만 허용 (하위 타입 이상으로만 올 수 있다)
https://medium.com/@joongwon/java-java%EC%9D%98-generics-604b562530b3
*현재페이지에서 다른 페이지로 이동하기
-상세페이지로 이동하는걸 어떻게 하는 지 몰라서 계속 찾아봤었는데 띠용 엄청 간단한거 였다..바보다 바보
location.href="challenge-detail.html?challengeID={challnegID}"
a 태그안에 이렇게만 해주면 되는데 그 동안 왜 못했었냐면 서버에서 뭐 해줘야될 것같아서 필요없는 거 계속 찾아보고
location.href="" 안에가 아닌 href="" 여기 안에 url을 넣어줘서 안 됐던거였다. ㅠㅠ
***
자바에서 s3 파일 삭제하는 코드가... iam, s3 권한을 아무리 다 열어줘도
Access Denied (Service: Amazon S3; Status Code: 403; Error Code: AccessDenied; 가 계속 떴다..
그래서 비슷한 코드 계속 바꿔보고 정책 권한 보고 의존성 계속 봤는뎅 ㅠㅠ iam 이랑 s3 버킷 지웠다 다시 만드니까 바로 됐당 휴 소화가 안된다 그래도 자기 전에 해서 다행이다 iam 에 문제가 있었나? 알수가 없다.
'TIL' 카테고리의 다른 글
211129 TIL ( ajax 카테고리 ) (0) | 2021.11.30 |
---|---|
211128 WIL (3차 프로젝트 1주차) (2) | 2021.11.28 |
211124 TIL ( responesDto ) (0) | 2021.11.25 |
211124 TIL ( 스프링 S3 파일 업로드) (0) | 2021.11.25 |
211122 TIL (@Transactional,예약어) (0) | 2021.11.22 |