일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- BFS
- ES
- 계산기 만들기
- til
- 코딩테스트
- 완전탐색
- File
- Generics
- querydsl
- 해시
- binary search
- 객체지향
- 이분탐색
- 구현
- 브루트포스
- 내일배움캠프
- SpringBoot
- programmers
- Spring
- 일정 관리
- Algorithm
- Elasticsearch
- 백준
- Java
- 프로그래머스
- parametric search
- 알고리즘
- 이분 탐색
- Baekjoon
- 누적합
- Today
- Total
목록2025/07 (5)
개발하는 햄팡이

문제 상황 우리 프로젝트는 파일을 하나하나 권한을 설정하는 ACL방식을 사용하여 객체를 관리하고 있다../** * 파일을 S3에 업로드합니다. 필요에 따라 공개 설정이 가능합니다. * * @param file 업로드할 파일 * @param hash 파일 해시 (경로 구성에 사용) * @param isPublic true일 경우 공개 접근(PublicRead) 설정 * @throws IOException 업로드 중 오류 발생 시 */private void uploadToS3(MultipartFile file, String hash, boolean isPublic) throws IOException { ObjectMetadata metadata = new ObjectMetadata(); ..
파일입출력 담당을 맡아 여기저기 찾아보며 이미지 업로드를 구현했는데 제목을 UUID로 설정하고 저장했더니 중복된 이름을 걸러주어 경로를 신경써야하는 문제는 없어졌지만같은 파일을 연달아 업로드 요청을 보냈을 경우 계속 저장되는 문제가 생겼다. 이렇게 되면 저장 공간이 낭비되겠지...같은 파일은 안저장하고 싶다는 생각이 들었다... 그래서 gpt한테 물어본 결과 파일 중복 업로드 방지를 위해선 파일의 내용(바이너리 데이터)을 InputStream으로 읽어서 그 데이터를 SHA-256으로 해싱하여 해시값을 사용하여 저장을 하면 된다고 한다. gpt가 말은 해줬는데 뭐라는건지 모르겠어서 인터넷 여기저기 찾아본 결과 1. 해시값은 파일의 내용을 가지고 만들기 때문에 파일이 같으면 해시값도 같기 때문에 중복 ..

https://github.com/final-gabom/gabom-project GitHub - final-gabom/gabom-projectContribute to final-gabom/gabom-project development by creating an account on GitHub.github.com 요즘 한달 좀 넘는 프로젝트를 진행하는 중인데회원가입 로그인 구현 파트를 맡게 되었다.JWT랑 SpringSecurity를 사용하는데 예외처리 이것저것 하면서 많은 문제를 겪고 있다.... 이전 프로젝트 할 때 회원가입 로그인은 많이 구현하니깐 이전 프로젝트에서 다른 사람이 구현한 코드 그대로 가져오면 되겠지 했는데 아무래도 내배캠에서 일주일동안 구현한 프로젝트다 보니 이런저런 세밀한 부분에서 ..

프로젝트를 하다가 팀원이 실수로 내 브랜치에 푸쉬를 했는데 그걸 나중에 pr을 올리고 알아버렸다...그래서 내 커밋 중간에 상대방의 커밋이 있는 상태..그래서 중간에 있는 커밋만 삭제를 해야하는 상황git log 내역을 확인한 후 내가 삭제하고 싶은 커밋이 최신 커밋으로 부터 몇번째에 있는지 확인해야한다.나는 10개 정도의 커밋 앞에 있었다.$ git rebase -i HEAD~15 그래서 대충 15로 잡아주고 위의 명령어를 git Bash에 입력하면 편집기가 뜬다.그러면 i를 눌러 INSERT 모드를 키고 원하는 커밋 라인을 지우고esc를 눌러 INSERT모드를 꺼준다음:wq 로 저장 성공 문구가 뜨고 커밋을 확인해 보면 사라져 있다.그 다음 강제 푸쉬 or 원격 브랜치 삭제하고 푸쉬하면 됨.git ..

문제 상황 저번주에 2주동안 진행하는 개인 프로젝트를 진행중에 테스트를 위해 h2 콘솔에 접근하려고 하는 상황이었다.원래 따로 설정을 하지 않으면 http://localhost:8080/h2-console 로 접근할 수 있다고 알고 있는데 해당 경로로 접근할 수 없었다.아얘 접속 화면 조차 뜨지 않는 상황.. 시작할때 로그도 해당 경로로 접근하면 된다는 로그를 봤는데... 해당 프로젝트는 내가 처음부터 만든 프로젝트가 아니라 이미 만들어진 프로젝트를 리팩토링 하고 개선하는 프로젝트라서구조를 잘 모르는 상태였다. 해결 과정인터넷에서 검색하여 h2 콘솔 접근 시 whitelabel error를 검색했더니 application.properties에 아래 설정을 입력해주면 된다고 하여 해당 코드도 넣어줬다..