본문 바로가기

전체 글85

[SPRING] Spring Boot 3.x queryDsl Gradle 설정 Spring boot 3.x 버전에서 querydsl 사용을 위한 의존성 및 gradle 설정에 대해 정리했습니다. gradle 환경에서 진행하여 build.gradle파일 입력 사항에 대해 작성합니다.설정 환경java 22spring boot 3.2.7gradle 8.81. querydsl와 JPA연동을 위한 라이브러리 의존성 추가 //== 기존(spring boot 2.x) Java EE 기반의 의존성 ==//implementation 'com.querydsl:querydsl-jpa:{version}'//== spring boot 3.x Jakarta EE 기반의 의존성 ==//implementation 'com.querydsl:querydsl-jpa:{version}:jakarta'//== 예시 =.. 2024. 9. 14.
[WEB] URL 인코딩 단순하게 정상적인 요청을 위해 URL 인코딩이 필요하다고 알고 있다가어떤 이유로 인코딩 과정을 거쳐야 문제없이 요청을 할 수 있을까?라는 궁금증에 이유를 알아보았습니다.URL 인코딩이 필요한 이유결론은 "웹에서 URL에 포함될 수 없는 문자나 특별한 의미를 가지는 문자를 안전하게 전송하기 위해서" 였다. 모든 문자가 그대로 사용될 수 있는 것은 아니며, URL에 특정 문자를 포함할 때 문제가 생길 수 있기 때문에 URL 인코딩을통해 이러한 문자를 안전하게 변환해야 한다고 합니다. "그러면 URL인코딩이 필요한 대상은?" URL의 예약어가 포함되는 경우?,  #,  /,  & 등은 URL 구조를 나타내거나 매개변수 구분에 사용 이 문자를 그대로 사용하면 URL이 변질될 수 있기때문에 인코딩을 거친다고 합니.. 2024. 8. 14.
[GIT] commit 내역 되돌리기 - reset, revert git을 사용할때 커밋 히스토리를 삭제하거나 커밋 내용을 되돌릴때 사용하는 reset, revert에 대한 정리글입니다. resetreset을 사용하면 커밋 히스토리를 아예 제거할 수 있다. 즉 커밋한 내용, 커밋 히스토리까지 모두 되돌릴수 있다. 위에서 commit1(d8f04a8)로 되돌린다고 하면git reset --옵션 HEAD~2(Head에서 두번째전)git reset --옵션 d8f04a8(커밋 해시)위 두개의 명령어를 입력하여 되돌릴수 있는데 "옵션"에 들어가는 옵션들은 다음과 같다. soft 새로운 HEAD(이동 대상)와 기존 HEAD간 변경사항을 staging area에 남겨둔다. mixed새로운 HEAD(이동 대상)와 기존 HEAD간 변경사항을 working directory(unSta.. 2024. 7. 11.
[JAVA] UTC, GMT 막연하게 "국제 표준 시간"으로 알고 있다가 막상 시간대를 고려해야 하는 상황에 와서 정리를 시작했습니다! UTC(Coordinated Universal Time)세계 표준 시간대로 영국을 기준으로 전 세계의 지역에 따라 시차(시간)을 규정한 표준 시로 GMT와 같은 시간대를 공유한다.GMT(Greenwich Mean Time)영국 그리니치 천문대를 기준으로 한 시간대로 UTC와 동일한 시간대를 나타대며, 표기방법도 동일하다. 결국 UTC, GMT는 측정 기준만 다른 동일한 시간대의 국제 표준시간이다. 그래서 각 나라 혹은 도시는 UTC, GMT를 기준으로 시간대가 결정된다. 우리나라의 경우 UTC에 9시간을 더한 시간대인 UTC+9을 표준시로 쓰며, 이 시간을 KST(한국 표준시)라고 합니다. 그렇다면.. 2024. 7. 7.
[JPA] batchsize JPA을 사용할때 n+1문제를 극복하고자 지연로딩(FetchType.LAZY)를 사용하는데 이 역시 프록시를 초기화 실제 엔티티로 초기화 해야 하는 상황이라면 n+1문제가 발생하는건 마찬가지이다. n+1문제 해결과 조회 성능 향상의 목적으로 사용하는 것이 BatchSize이다 일반적으로 어노테이션, 외부설정파일을 통해 설정하며 연관관계의 초기화 대상 엔티티의 개수만큼 조회 쿼리가 발생하는 상황에 설정한 일정량의 데이터를 한 번에 로딩한다.@Entity @Table("member")@Getter @Setter@NoArgsConstructor(access = AccessLevel.PROTECTED)public class Member { @Id @Column(name = "member_id".. 2024. 5. 1.
GCP 프리티어(무료) 사용 CI/CD, 서버공부, 사이드프로젝트 배포 등 여러 가지 이유로 서버가 필요했습니다. AWS에서 1년간 프리티어 서버를 제공한다고 해서 알아보다 보니 진정한 무료 서버라기 보단 무료로 사용하려면 많은 제약조건이 있어 구글 클라우드 플랫폼(GCP)에서 제공하는 프리티어 서버를 사용하기로 했습니다. GCP도 최초 가입 시에 300$의 크레딧을 제공하고 1년 이내에 해당 크레딧을 사용하여 자원들을 사용가능했습니다. 저는 이미 사용이력이 있어 바로 프리티어 서버를 제공받기로 했습니다. 무료서버 조건 구글 클라우드 문서를 보면 무료로 사용할 수 있는 조건을 확인할 수 있습니다. AWS / EC2 == GCP / Compute Engine 입니다. https://cloud.google.com/free/docs/fr.. 2023. 9. 4.