일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- nestjs공부
- 기술공부
- 자료구조공부
- 플러터 개발
- JPA공부
- K8S
- 알고리즘공부
- JPA스터디
- 카프카
- 코테공부
- Axon framework
- 스프링
- 코테준비
- JPA예제
- nestjs스터디
- Flutter
- 기술면접공부
- Kafka
- 스프링 공부
- 스프링부트공부
- nestjs
- 플러터 공부
- querydsl
- 스프링부트
- DDD
- 프로그래머스
- JPA 공부
- JPA
- 스프링공부
- 자바공부
- Today
- Total
목록querydsl (7)
DevBoi
상속 적으로 Response가 필요한 경우가 있다. 부모 DTO가 있고 해당 디티오는 하위의 디티오 리스트를 가지고 있다. 해당 케이스는 아래와 같이 처리한다. package com.boiler.core.backend.normaladmin.reservation.dto; import com.boiler.core.backend.entity.Gym; import com.boiler.core.backend.entity.Member; import com.boiler.core.backend.entity.Reservation; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Sett..
로깅에서 실제 동작하는 쿼리 로깅찍는 법 implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.9.0' logging: level: p6spy: info org: hibernate: type: descriptor: sql: trace package com.boiler.core.backend.config; import com.p6spy.engine.logging.Category; import com.p6spy.engine.spy.P6SpyOptions; import com.p6spy.engine.spy.appender.MessageFormattingStrategy; import jakarta.annotation.PostConstruct;..
1) BooleanBuilder, BolleanExpression 사용 비슷한 용도이지만 내 생각에 두개의 용도는 다르다. BooleanExpression은 null인 경우 null을 반환해주면서, 조건에서 제외가 된다. 즉 특정 조건에 따라서 다이나믹하게 조건절이 추가되어야 하는경우, 심하면 없어도되는경우 BooleanExpression을 사용한다. BooleanBuilder는 항상 객체가 생성이 되지만 복잡한 조건절의 쿼리를 생성해야할 때 이걸 사용하게 되면, 그나마 보기 쉽고 조합을 자유롭게 해줄수있다 다만 무조건 사용해야하고 복잡한 조건절의 조합 도구라고 보면된다. 물론 두개다 때에 따라서 용도와 장점과 어긋나게 사용은 가능하지만 장단이 있으니 그에 따라 맞게 사용하면 좋을 것 같다. Boolea..
친구데이터 관련 설계를 하고 있었다. 뭐가 좋을까. 고민 되었다. 특히 추천 친구라는 기능을 하나 만들고 싶었다. 우선 Entity간의 연관관계를 두기 싫었다. 그래서... 나는 이렇게 설계했다. 회원가입하면, Friends 테이블에 자기 자신도 넣어주는 것이다. 자세한건 아래 로직을 보자 1) 회원가입 로직 @PostMapping("/user") public User saveUser(@RequestBody UserDto userDto) { return userService.saveUser(userDto); } public User saveUser(UserDto userDto) { List result = userRepository.findByUserId(userDto.getUserId()); if(re..
buildscript { ext { queryDslVersion = "5.0.0" } } plugins { id 'java' id 'org.springframework.boot' version '3.2.0-SNAPSHOT' id 'io.spring.dependency-management' version '1.1.2' id "com.ewerk.gradle.plugins.querydsl" version "1.0.10" } group = 'com.boiler.flutterbackend' version = '0.0.1-SNAPSHOT' java { sourceCompatibility = '17' } configurations { compileOnly { extendsFrom annotationProcessor ..
사용을 위한 기본구성 1. JpaFactory package com.practice.demo.config; import com.querydsl.jpa.impl.JPAQueryFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import javax.persistence.EntityManager; @Configuration public class JpaFactory { @Autowired EntityManager em; @Bean ..
1. Build.gradle에 추가 // QueryDSL로 주석 처리한 부분만 신경쓰면된다. // QueryDSL buildscript { ext { queryDslVersion = "5.0.0" } } plugins { id 'java' id 'org.springframework.boot' version '2.7.12-SNAPSHOT' id 'io.spring.dependency-management' version '1.0.15.RELEASE' // QueryDSL id "com.ewerk.gradle.plugins.querydsl" version "1.0.10" } group = 'com.study' version = '0.0.1-SNAPSHOT' sourceCompatibility = '11' co..