본문 바로가기

분류 전체보기126

[JPA, QueryDSL] 동적 정렬 OrderSpecifier 상황QueryDSL을 사용하여 목록을 조회하는 쿼리를 작성하던 중에 정렬 조건을 동적으로 처리해야 했다.QueryDSL로 정렬하는 정적, 동적 방법을 알아보고 정리해보겠다.  실행환경 및 버전QueryDSL: 5.0.0JDK : open JDK 11Spring Boot : 2.7.9 ✔️정적 정렬  // Sample.java의 Qclass가 생성되어 있다고 가정한다.public List findSampleList(String code) { return jpaQueryFactory.select( Projections.constructor(Sample.class, sample.no, .. 2024. 7. 31.
[Gitlab] Ubuntu 20.04에 Gitlab CE 설치하기 - 4 (트러블 슈팅) 도입2024.07.25 - [ETC/Git] - [Gitlab] Ubuntu 20.04에 Gitlab CE 설치하기 - 1 (설치 과정) [Gitlab] Ubuntu 20.04에 Gitlab CE 설치하기 - 1 (설치 과정)환경Ubuntu 20.04 Gitlab CE 16.3.0  *해당 게시글은 Gitlab EE 설치 가이드가 아니다. 자신의 서버 설치 환경과 프로젝트 목적에 맞는 Gitlab 배포판 (CE, EE)을 체크하여 진행하길 바란다.  Gitlab(깃랩) 은?Gizoetechlog.tistory.com  Gitlab CE 를 설치하는 과정에서 마주친 문제 해결방법을 정리해보려고 한다. 💫Trouble Shooting1. gitlab-ctl reconfigure 시 특정 구간 이후에 진행이.. 2024. 7. 25.
[Gitlab] Ubuntu 20.04에 Gitlab CE 설치하기 - 3 (프로젝트 올리기) 도입2024.07.25 - [ETC/Git] - [Gitlab] Ubuntu 20.04에 Gitlab CE 설치하기 - 2 (SSH 등록) [Gitlab] Ubuntu 20.04에 Gitlab CE 설치하기 - 2 (SSH 등록)도입2024.07.25 - [ETC/Git] - [Gitlab] Ubuntu 20.04에 Gitlab CE 설치하기 - 1 (설치 과정) 설치 과정에 이어서 SSH 등록하는 방법에 대해 정리해보았다. 과정1. SSH key 등록해야 하는 이유 ✏️ Gitlab은 SSH 키를zoetechlog.tistory.com  SSH 등록을 완료했으면 이제 Gitlab에 프로젝트를 올려보자. 과정 1. 프로젝트를 생성한다.   2. 업로드할 프로젝트 폴더 내에서 Git Bash를 연다. 3... 2024. 7. 25.
[Gitlab] Ubuntu 20.04에 Gitlab CE 설치하기 - 2 (SSH 등록) 도입2024.07.25 - [ETC/Git] - [Gitlab] Ubuntu 20.04에 Gitlab CE 설치하기 - 1 (설치 과정) [Gitlab] Ubuntu 20.04에 Gitlab CE 설치하기 - 1 (설치 과정)환경Ubuntu 20.04 Gitlab CE 16.3.0  *해당 게시글은 Gitlab EE 설치 가이드가 아니다. 자신의 서버 설치 환경과 프로젝트 목적에 맞는 Gitlab 배포판 (CE, EE)을 체크하여 진행하길 바란다.  Gitlab(깃랩) 은?Gizoetechlog.tistory.com  설치 과정에 이어서 SSH 등록하는 방법에 대해 정리해보았다. 과정1. SSH key 등록해야 하는 이유 ✏️ Gitlab은 SSH 키를 등록하지 않은 사용자에게 화면 상단에 경고 메시지를.. 2024. 7. 25.
[Gitlab] Ubuntu 20.04에 Gitlab CE 설치하기 - 1 (설치 과정) 환경Ubuntu 20.04 Gitlab CE 16.3.0  *해당 게시글은 Gitlab EE 설치 가이드가 아니다. 자신의 서버 설치 환경과 프로젝트 목적에 맞는 Gitlab 배포판 (CE, EE)을 체크하여 진행하길 바란다.  Gitlab(깃랩) 은?Gitlab은 Git의 원격 저장소 기능과 이슈 트래커 기능등을 제공하는 소프트웨어다. 설치형 Github라는 컨셉으로 시작된 프로젝트이기 때문에 Github와 비슷한 면이 많이 있다. 서비스 형 원격저장소를 운영하는 것에 대한 비용이 부담되거나, 소스코드의 보안이 중요한 프로젝트에게 적당하다.   설치 과정 1. 시스템 업데이트 및 의존성 설치$ sudo apt update$ sudo apt upgrade -y$ sudo apt install -y ca-.. 2024. 7. 25.
[JAVA] 파일 관련 Stream, I/O 성능 개선 (File 복사 기능) 상황통합테스트 시점에 파일을 copy하는 기능에서 오류가 나서 수정 요청이 들어왔다.단위테스트 당시에는 문제가 없었는데, 디버깅을 걸어보니 파일의 용량이 큰 경우에 생기는 이슈라는 것을 알게 되었다. InputStream, OutputStream을 사용하는 기존 코드에서 BufferedStream 사용으로 변경하여 해결하였다. 이 이슈를 해결하는 과정에서 알게된 것을 정리해보려고 한다. 본문JAVA에서 자료를 읽거나 쓰기 위해 Stream을 사용한다.  입출력과 관련된 것은 java.io 패키지에서 제공하고 있다.  ✔️1. Stream InputStream과 OutputStream에 대해 이해해보기 전 Stream의 개념에 대해 먼저 정리가 필요하다. 📌Stream이란?- 스트림이란 데이터, 패킷, .. 2024. 7. 24.