1. build.gradle에 추가해준다. (근데 직접 해보니 Querydsl 설정부 부터 맨 밑까지는 그냥 주석처리해도 Q클래스 생성가능)
//query_dsl
implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta'
annotationProcessor "com.querydsl:querydsl-apt:${dependencyManagement.importedProperties['querydsl.version']}:jakarta"
annotationProcessor "jakarta.annotation:jakarta.annotation-api"
annotationProcessor "jakarta.persistence:jakarta.persistence-api"
// Querydsl 설정부
def generated = 'src/main/generated'
// querydsl QClass 파일 생성 위치를 지정
tasks.withType(JavaCompile) {
options.getGeneratedSourceOutputDirectory().set(file(generated))
}
// java source set 에 querydsl QClass 위치 추가
sourceSets {
main.java.srcDirs += [ generated ]
}
// gradle clean 시에 QClass 디렉토리 삭제
clean {
delete file(generated)
}
2. gradle -> Tasks -> other -> compile.java 하면 Q클래스 생성
3. Querydsl할때 JPQL을 보고 싶으면 yml에 이렇게 추가해준다
4. Querydsl 모든 검색 조건 종류,결과 조회 종류
1. 롬복 이거를 체크해야 잘 적용된다.
2. yml에서 빨간줄친 부분은 쿼리문 ? 에 무슨 값이 들어가나 로그로 출력하는거고
빨간줄 위에 부분은 쿼리문을 로그로 출력해주는거다.
3. 빌드 그래들에 이거를 추가해주면 쿼리문 ? 에 무슨값이 들어가나 더 좋게 볼수 있다.
그러나 이건 실무에서 성능 따져보고 사용 결정해야한다. 공부할땐 그냥 맘대로 사용하고.
(현재 버전에서는 1.9.0 해야 작동하는데 나중가면 바뀔수도 있으니 그때 알아보기)
//쿼리문 ? 값 출력 p6spy 라이브러리
implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.9.0'
4. 커스텀 단축키 만들고 싶으면 설정에서 live Templates 검색하고 거기서 custom에 추가해주면 된다.
5. 애플리케이션 실행중 코드 변경하면 종료후 다시 실행 귀찮은점
implementation 'org.springframework.boot:spring-boot-devtools' 그레이들에 이 의존성 추가해주고 서버 실행중 코드 변경하면 Build -> Recomplie 변경코드 파일 부분을 클릭하거나 컨트롤+쉬프트+F9 하면 끝
6. 프로젝트 생성시 War,Jar 차이
war는 톰캣,서블릿컨테이너를 별도로 설치하고,거기에 빌드된 파일 넣을때,JSP사용할때 war를 사용한다.
Jar는 내장톰캣을 사용할때 한다. war도 내장톰캣 사용 할 수 있으나 최근엔 주로 Jar를 사용한다.
7. 검증 @Validated , @Valid
8. 맥북에서 H2 데이터베이스
h2->bin폴더 경로 이동후
./h2.sh
//퍼미션 에러 뜨면 밑에 코드 하고 ./h2.sh 한다
chmod 755 h2.sh
종료시에는 컨트롤+C
'seok' 카테고리의 다른 글
결합도와 응집도 (0) | 2024.06.25 |
---|---|
프로젝트 MyBatis (0) | 2024.06.03 |
테스트용-데이터베이스를 임베디드 모드 (0) | 2024.05.31 |