이번 실기일까지 강의를 듣고 싶어요.
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
삭제된 글입니다
- python
- 머신러닝
- 빅데이터
- pandas
- 빅데이터분석기사
173만명의 커뮤니티!! 함께 토론해봐요.
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
삭제된 글입니다
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
삭제된 글입니다
실전! Querydsl
최근에 새로운 프로젝트 진행하면서 Spring Boot 3 버전을 사용하게 됐는데 해당 프로젝트의 Gradle 설정을 구성하면서 다른 분들의 예제를 보면서 작성한 내용을 공유 드립니다. 아래의 내용은 VSCode에서 진행했습니다. 다른 IDE에서는 테스트해보지 않아 다르게 동작할 수도 있는 점 양해 부탁드립니다. 먼저 Gradle 설정은 다음과 같습니다. plugins { id "java" id "org.springframework.boot" version "3.0.6" id "io.spring.dependency-management" version "1.1.0" //querydsl 플러그인 추가하지 않음 } ... configurations { ... querydsl.extendsFrom compileClasspath //해당 부분은 그대로 유지 ... } repositories { mavenCentral() } dependencies { ... implementation "com.querydsl:querydsl-jpa:5.0.0:jakarta" annotationProcessor "com.querydsl:querydsl-apt:5.0.0:jakarta" annotationProcessor "jakarta.annotation:jakarta.annotation-api" annotationProcessor "jakarta.persistence:jakarta.persistence-api" implementation "com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.9.0" ... } ... 현재 예제에서는 Querydsl의 Gradle 플러그인인 id "com.ewerk.gradle.plugins.querydsl" version "1.0.10" 를 사용하지 않습니다. 이전 버전에도 있었는지는 정확하게 모르겠지만 Spring Boot 3로 업데이트 되면서 jakarta 패키지를 사용하기 때문에 해당 패키지에 맞는 annotationProcessor를 추가하여 Gradle의 Querydsl 태스크를 대체합니다. (대표적으로 compileQuerydsl) 그리고 configurations 부분의 querydsl.extendsFrom compileClasspath 구문은 그대로 유지합니다. dependencies 부분에서는 Querydsl 관련 패키지 뒤에 :jakarta 를 추가로 입력하고 2 개의 annotationProcessor을 추가해줬습니다. Spring Boot 3 초기에 지원되지 않았던 P6Spy의 경우 2월 10일에 1.9.0 버전으로 업데이트 되어 정상적으로 지원합니다. 그리고 기존에 김영한 님이 가이드 하셨던 코드인 //querydsl 추가 시작 def querydslDir = "$buildDir/generated/querydsl" querydsl { jpa = true querydslSourcesDir = querydslDir } sourceSets { main.java.srcDir querydslDir } compileQuerydsl { options.annotationProcessorPath = configurations.querydsl } //querydsl 추가 끝 위 코드는 따로 작성하지 않습니다. Querydsl Gradle 플러그인을 통해 Qclass를 생성하는 compileQuerydsl 태스크를 별도로 실행할 필요 없이 프로젝트 빌드 진행 시 annotationProcessor에 의해 Qclass가 자동으로 생성됩니다. (여기서 프로젝트 빌드란 Gradle build 태스크가 아닌 Java workspace 빌드를 뜻함.) 아래의 이미지와 같이 @Entity 파일이 수정될 때 수정한 내용이 즉시 Qclass에 반영되는 것을 확인할 수 있습니다. (좌측 Entity class, 우측 Qclass) 위 설정을 통해 생성되는 Qclass의 위치는 /bin/generated-sources/annotations/{프로젝트 패키지}/{Entity 클래스 패키지}입니다. (예제 프로젝트에서 Qclass의 위치, gitignore 처리되어 있어 회색으로 표시 됨) 만약 annotationProcessor를 추가하고 Querydsl 설정을 같이 추가했다면 Qclass가 중복된다는 오류가 발생하여 프로젝트 빌드가 진행되지 않으니 주의 바랍니다. 해당 소스는 다음 링크에서 확인해보실 수 있습니다. 404-nut-pound/spring-jpa-querydsl-template ( github.com ) 그리고 별도로 MongoDB+Querydsl 설정도 공유해 드립니다. 404-nut-pound/spring-mongodb-querydsl-template ( github.com ) MongoDB는 Gradle 패키지 설정 시 약간 달라지고 @Entity 어노테이션은 동일하게 사용합니다. 그리고 Querydsl MongoDB 패키지는 JPAQueryFactory를 지원하지 않고 Morphia 패키지를 사용해서 MorphiaQuery라는 객체를 사용하는데 공식 가이드를 봐도 해당 객체를 초기화하는 방법을 알 수 없어서 Repository 인터페이스에 QuerydslPredicateExecutor를 상속하여 사용하는 식으로 구성했습니다.
실전! Querydsl
최근 스프링부트 3.0이 나옴에 따라 QueryDSL 설정 내용을 공유합니다. 아래 설정 내용중 Querydsl 추가 라고 나온 부분만 추가하시면 됩니다. 스프링 부트: 3.0.0, 자바: 17 기준입니다! plugins { id 'java' id 'org.springframework.boot' version '3.0.0' id 'io.spring.dependency-management' version '1.1.0' } group = 'study' version = '0.0.1-SNAPSHOT' sourceCompatibility = '17' configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-web' compileOnly 'org.projectlombok:lombok' runtimeOnly 'com.h2database:h2' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' // Querydsl 추가 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" } tasks.named('test') { useJUnitPlatform() }
파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
본 강의에서 알려주신 판다스 및 이미지 활용 예제를 알려주셔서 감사합니다. 강의 후반에 알려주신 것 처럼 활용 할 수 있는 부분이 굉장히 많아 보입니다. 판다스 예제를 views.py에 녹여 봤는데, 잘 출력됩니다 ㅎㅎ 이후 템플릿 폴더 내부 html 파일을 생성해서 디자인 좀 추가해 출력하면 분석 툴 제작도 충분히 가능할 듯 싶네요. 강의 중반까지 듣고 시도해 보겠습니다 :)