묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
struct OverlappedEx질문
안녕하세요 루키스 강사님 저가 C++ 기본강의 중 타입변환 부분도 같이 들으면서 보고있었는데 갑자기 여기서 깨달음을 얻어서 제가 이해한게 맞는지 여쭤봅니다 13:20 여기서 OverlappedEx구조체를 만들면서 WSAOVERLAPPED를 넘겨주기 전에, 이걸 구조체 하나를 생성해서 맨 앞으로 옮긴 이유가 OverlappedEx의 맨 처음 주소가 WSAOVERLAPPED로 오게 해서 나중에 구조체 형변환을 통해 접근 가능하도록 어찌보면 편법을 쓴거같은데 저가 이해한게 맞나요? 그리고 위 사실이 맞다면 IOCP로 보낼수 있는 데이터는 총 두가지 1. 소켓을 IOCP에 등록할 때 넣는 Key값(Session....) 2. OverlappedEx에 있는 event외 각종 정보들(WSAOVERLAPPED, type ....) 여 여기서 2가 가능한 이유는 구조체 첫 주소가 결국 첫번째 변수를 가리키는 것이고, 다음 변수들은 첫주소를 구조체로 변환만 하면 접근 가능하므로 약간의 편법을 쓴 것이다?
-
해결됨PowerApps, 우리회사에 필요한 모바일 앱 만들기
앱 공유시..
안녕하세요. 앱 제작 후 배포하고하 할때 문의사항입니다. 공유할때 공유 대상을 그룹메일 형태로 지정할 수 있을까요? 전직원한테 공유하고자 할때 일일이 직원 개인 이름을 넣어야 하는거 같은데 전체 직원 포함된 그룹메일 형태로 설정할 수 있는지 궁금합니다. 지금은 그룹메일 반영하려고 하면 찾을 수 없다고 메일 주소가 올바른 경우 관리자에게 문의하라고 나옵니다. 감사합니다.
-
미해결스프링 핵심 원리 - 기본편
setUrl 이 null인 이유
안녕하세요 이 코드에서 networkClient url이 null인 이유가 @Configurationstatic class LifeCycleConfig{ @Bean public NetworkClient networkClient(){ NetworkClient networkClient = new NetworkClient(); networkClient.setUrl("http://hello-spring.dev"); return networkClient; }} 빈 라이프 사이클에 의해 스프링 빈을 등록하는 과정에서 1. 객체를 생성 2. 의존관계 주입 1번과 2번 과정 중간에 setUrl이 호출되는 바람에 setUrl 코드가 누락(?) 됐다고 보는게 맞는건가요?
-
미해결자바스크립트 : 기초부터 실전까지 올인원
shell command 설치
shell 코맨드 설치가 안되어서요. ctrl+shift+p 한후에 Shell입력해도 아무것도 안뜹니다...
-
미해결리눅스 입문 - 개념으로 탄탄히!!
질문이 있습니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 친절하고 전문성 있는 강의에 감사를 표합니다( 학습중에 질문이 있는데요 만약 A라는 계정을 만들어서, 빈 디렉토리를 하나 만들었고, (기본 권한 drwxr-xr-x으로 설정되어있음) 계정을 B라는 계정으로 계정 전환을 하고, 그 빈 디렉토리를 rm명령어로 삭제할때, 디렉토리가 삭제가 되더라고요? B라는 계정은 w권한이 없는데, 어떤 이유로 A계정이 만든 디렉토리를 삭제할 수가 있을까요?
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
맥용에서 채점
안녕하세요? 맥에서 채점하기 위해서 입력으로 주어진 파일들에 대한 결과값이 다 정답하고 맞으면 문제를 맞게 푼걸로 봐도 되는건가요?
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
범위 전송과 이어받기에 대해 궁금한 점이 있습니다.
범위 전송을 이용하여 게임 다운로드와 같은 상황에서 일시 중지/이어 받기가 가능하다고 말씀하셨는데 그렇다면 클라이언트에서 요청을 보낼 때 어느 시점부터 데이터를 이어받아야 하는지 어떻게 알 수 있는지 궁금합니다. 예를 들어 총 길이가 10000bytes인 데이터를 4000bytes까지 받고 일시 정지되었다고 했을 때, 다시 다운로드를 시작하면 4001bytes부터 데이터를 다운받아야 할텐데.. 이 "4001bytes 부터 데이터를 받아야 해!"라는 정보를 어떻게 클라이언트가 알아내서 서버에게 이어받기를 요청할 수 있는지 궁금합니다.
-
미해결mongoDB 기초부터 실무까지(feat. Node.js)
app.post에서 오류가 발생합니다
안녕하세요. 좋은 강의 감사합니다. 오류가 발생하여 질문합니다. postman 코드는 다음과 같습니다. 어느 부분이 잘못되었는지 알고 싶습니다ㅠㅠ 감사합니다.
-
미해결따라하며 배우는 NestJS
nest new 프로젝트명 이렇게 만들고 나서 git에 올리기
nest 명령어로 server라는 프로젝트를 만들었는데 git에 올리려고 하니까 이미 git init로 프로젝트가 생성 되었더라고요 이런경우엔 어떻게 올리나요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
@ModelAttribute의 프로퍼티 접근법 관련 질문 드립니다.
addForm.html의 th:field=*{price}, th:field= *{quantity} 등의 필드들이 결국 @PostMapping("/add")public String addItem( @Validated @ModelAttribute("item") ItemSaveForm form 여기에서 이제 Item 객체가 아닌 ItemSaveForm으로부터 @ModelAttribute의 프로퍼티 접근법으로 form.setPrice(" *{price}"), form.setQuantity("*{quantity}")이렇게 되는 것인가요? 또한 @ModelAttribute의 또 한 가지의 기능인 model.addAttribute 기능이 model.addAttribute("item", form)으로 되어서 만약 검증에 실패해 다시 addForm.html로 돌아가면 addForm.html에서는 form의 데이터들을 받는 형식인가요?
-
미해결인터랙티브 웹 개발 제대로 시작하기
앞벽이랑 사이드벽이 떨어져요 ㅠㅠ
어떨때 보면 붙어있는데 또 새로고침하면 어떨때는 떨어져 있네요.. mac에서 크롬으로 봤는데 저래요 ㅠ
-
미해결코딩으로 학습하는 GoF의 디자인 패턴
TerminalExpression 과 NonterminalExpression이 이해가 잘 안됍니다.
강사님 강의를 보며 구조를 GoF를 참조하면서 공부를 진행중입니다. 그런데... TerminalExpression 과 NonterminalExpression이 이해가 잘 안됍니다. TerminalExpression 과 NonterminalExpression 둘 다 구조상으로는 Expression을 구현하는데 다만 NonterminalExpression은 Express를 구현하면서 집합관계라고 표시되어 있습니다. 디자인 패턴을 의도에 따라서 생각하는게 중요하지만 공개해주신 코드에서 이걸 굳이 분류를 하자면 어떻게 분류를 해야 하는지 그게 궁급합니다.
-
미해결Slack 클론 코딩[실시간 채팅 with React]
백엔드 socket.io 버전 업그레이드
안녕하세요 프론트 socket.io를 v4 공지사항 올려주신거 보고 최신버전으로 적용해봤는데 백엔드에 설치된 socket.io는 2.0~ 버전으로 설치되어있더라구요/ 그래서 그런지 socket 연결에 실패하네요.. 백엔드쪽 socket 최신버전으로 재설치 해도 되나요? 업그레이드 시 기존 코드랑 충돌이 생기진 않을까요?
-
미해결배달앱 클론코딩 [with React Native]
iOS에서 react-native-vector-icons 설정과정 오류/누락 부분
선생님 강의대로 iOS에 Fonts 그룹을 만들고 node_modules에서 불러오면 아래와 같은 오류를 만나게 됩니다. 폰트를 찾을 수 없다는 것인데 info.plist에 아래 내용을 추가하면 해결됩니다. <key>UIAppFonts</key> <array> <string>AntDesign.ttf</string> <string>Entypo.ttf</string> <string>EvilIcons.ttf</string> <string>Feather.ttf</string> <string>FontAwesome.ttf</string> <string>FontAwesome5_Brands.ttf</string> <string>FontAwesome5_Regular.ttf</string> <string>FontAwesome5_Solid.ttf</string> <string>Fontisto.ttf</string> <string>Foundation.ttf</string> <string>Ionicons.ttf</string> <string>MaterialIcons.ttf</string> <string>MaterialCommunityIcons.ttf</string> <string>SimpleLineIcons.ttf</string> <string>Octicons.ttf</string> <string>Zocial.ttf</string> </array> 아울러, pod install 과정에서 node_modules의 폰트를 불러오는 것 같습니다.(확인은 안 했습니다) 그 결과 Fonts폴더를 만들고 수동으로 폰트를 복사하지 않아도 위와 같은 오류 메시지가 없어짐은 물론, 벡터 아이콘도 정상 출력됩니다.
-
미해결1. 웹개발 기초 [HTML, CSS]
html 구조 설계 진행 방식
border를 이용해서 테두리를 그려가면서 구조 틀을 설계를 진행해주시는데 보통 개발 할 때도 이런 방식으로 진행을 하게되나요? 아니면 이해를 돕기 위해 하는 방식인지 궁금합니다!
-
미해결Svelte.js SPA 영화 검색 프로젝트
scss는 prependdata로 미리 불러와야되나요?
혹시 왜그래야되는지 알 수 있을까요? 제가 또 궁금한건 설정파일에서 prependdata로 꼭 불러와야되나요? 그냥 index.html 로딩할 때 scss파일을 임포트하는형식은 왜 안될까요 궁금하네요 ㅜ
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
nodebird ppt 파일을 혹시 어디서 받아 볼 수 있을까요?
안녕하세요 제가 강의를 중간에 멈추고 다시 중반부 부터 강의를 듣고 있습니다. nodebird 강의를 듣고 있는데 혹시 강의중에 제공되는 ppt 파일을 어디서 다운 받을 수 있을까요?
-
미해결실전! 스프링 데이터 JPA
벌크연산 실행시 영상과 같은 원하는 값이 나오지 않습니다...
12:19초 부분 영상에서 MemberRepositoryTest를 실행시 영상에서는member5 = Member(id=5, username=member5, age=41)이라고 build창에서 나오지만 저는 아예 나오지 않아서 질문드립니다.. build 내용은 에러없이 이렇게 나옵니다. "/Applications/IntelliJ IDEA CE.app/Contents/jbr/Contents/Home/bin/java" -ea -Didea.test.cyclic.buffer.size=1048576 -javaagent:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar=62958:/Applications/IntelliJ IDEA CE.app/Contents/bin -Dfile.encoding=UTF-8 -classpath /Users/milaju/.m2/repository/org/junit/platform/junit-platform-launcher/1.8.2/junit-platform-launcher-1.8.2.jar:/Users/milaju/.m2/repository/org/junit/platform/junit-platform-engine/1.8.2/junit-platform-engine-1.8.2.jar:/Users/milaju/.m2/repository/org/opentest4j/opentest4j/1.2.0/opentest4j-1.2.0.jar:/Users/milaju/.m2/repository/org/junit/platform/junit-platform-commons/1.8.2/junit-platform-commons-1.8.2.jar:/Users/milaju/.m2/repository/org/apiguardian/apiguardian-api/1.1.2/apiguardian-api-1.1.2.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/junit/lib/junit5-rt.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/junit/lib/junit-rt.jar:/Users/milaju/Desktop/SpringDataJPA/data-jpa/out/test/classes:/Users/milaju/Desktop/SpringDataJPA/data-jpa/out/production/classes:/Users/milaju/Desktop/SpringDataJPA/data-jpa/out/production/resources:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-data-jpa/2.6.6/30942753cd29132913a5b642dc5b045c1cb18fd9/spring-boot-starter-data-jpa-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-web/2.6.6/7aa73898044e9fb7dc71dbf4d4e0f2fbcc7ce25f/spring-boot-starter-web-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.github.gavlyukovskiy/p6spy-spring-boot-starter/1.5.7/1c1cc817d2ee7cfe8a511bb1b429254d05f7ad03/p6spy-spring-boot-starter-1.5.7.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-test/2.6.6/b6b577cad64544e47dc9f523d7091c2cbb85bd52/spring-boot-starter-test-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-aop/2.6.6/d08c239992526803aa4f7fc4e74f243ccc337ebb/spring-boot-starter-aop-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-jdbc/2.6.6/c0ee383ed4482fddc74ad645c0d77c98ec767140/spring-boot-starter-jdbc-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/jakarta.transaction/jakarta.transaction-api/1.3.3/c4179d48720a1e87202115fbed6089bdc4195405/jakarta.transaction-api-1.3.3.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/jakarta.persistence/jakarta.persistence-api/2.2.3/8f6ea5daedc614f07a3654a455660145286f024e/jakarta.persistence-api-2.2.3.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.hibernate/hibernate-core/5.6.7.Final/c62626c463b75530acb4f2fb2ae3ca85d80cfa06/hibernate-core-5.6.7.Final.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.data/spring-data-jpa/2.6.3/7fbfafa3b27c8f2e315fe489c2f0699a24f32082/spring-data-jpa-2.6.3.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-aspects/5.3.18/78e473c68f3f579f6dff4810530260bcfe97ca8f/spring-aspects-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-json/2.6.6/6f405fb0ebe73841e4494aa65cf2f91d7dc2ae7f/spring-boot-starter-json-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter/2.6.6/b34b4f0c1e99edc181ea40a6b1b79fa72658ee04/spring-boot-starter-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-tomcat/2.6.6/2076a0fd75e63b57dd149a0ccf7a1545e3f1aec3/spring-boot-starter-tomcat-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-webmvc/5.3.18/806b4ac997761daa32cba3f766d8ac09c132fe81/spring-webmvc-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-web/5.3.18/8db103c4109e925ec6f5fbfe577d447d3e95ded5/spring-web-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.github.gavlyukovskiy/datasource-decorator-spring-boot-autoconfigure/1.5.7/83c5a0750a42d36ffbcb988f82af0debd43ebd8b/datasource-decorator-spring-boot-autoconfigure-1.5.7.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/p6spy/p6spy/3.8.2/52299d9a1ec2bc2fb8b1a21cc12dfc1a7c033caf/p6spy-3.8.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-test-autoconfigure/2.6.6/c2571e2dd0a9543525b9bd6253942a89195d9b4d/spring-boot-test-autoconfigure-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-test/2.6.6/97626f535c1625e0ca3ede4351e4d55e4cd80ae1/spring-boot-test-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.jayway.jsonpath/json-path/2.6.0/67f565b424f7903a12d4f5b9361b11462ecacdac/json-path-2.6.0.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/jakarta.xml.bind/jakarta.xml.bind-api/2.3.3/48e3b9cfc10752fba3521d6511f4165bea951801/jakarta.xml.bind-api-2.3.3.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.assertj/assertj-core/3.21.0/27a14d6d22c4e3d58f799fb2a5ca8eaf53e6942a/assertj-core-3.21.0.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest/2.2/1820c0968dba3a11a1b30669bb1f01978a91dedc/hamcrest-2.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.junit.jupiter/junit-jupiter/5.8.2/5a817b1e63f1217e5c586090c45e681281f097ad/junit-jupiter-5.8.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.mockito/mockito-junit-jupiter/4.0.0/b76de25bd6e5d8f7924d0536729c0076e37e9396/mockito-junit-jupiter-4.0.0.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.mockito/mockito-core/4.0.0/f5195e0c4a45716bbd2d1d29173adbd148acce3a/mockito-core-4.0.0.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.skyscreamer/jsonassert/1.5.0/6c9d5fe2f59da598d9aefc1cfc6528ff3cf32df3/jsonassert-1.5.0.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-test/5.3.18/9d6a388deed7abd60e2bddde44d927f9d009d3be/spring-test-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-core/5.3.18/7ff3000f3342989cb011b6095a0e86f2e5176cef/spring-core-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.xmlunit/xmlunit-core/2.8.4/35be57989ca80eefa03161b211630e319a8f36c6/xmlunit-core-2.8.4.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-aop/5.3.18/8e9cce60c60257ae1d5b3cd675ec3a8286ed1955/spring-aop-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.aspectj/aspectjweaver/1.9.7/158f5c255cd3e4408e795b79f7c3fbae9b53b7ca/aspectjweaver-1.9.7.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-jdbc/5.3.18/b168d4c024cb002377bca91f2b804297d8b74003/spring-jdbc-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.zaxxer/HikariCP/4.0.3/107cbdf0db6780a065f895ae9d8fbf3bb0e1c21f/HikariCP-4.0.3.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.glassfish.jaxb/jaxb-runtime/2.3.6/1e6cd0e5d9f9919c8c8824fb4d310b09a978a60e/jaxb-runtime-2.3.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.hibernate.common/hibernate-commons-annotations/5.1.2.Final/e59ffdbc6ad09eeb33507b39ffcf287679a498c8/hibernate-commons-annotations-5.1.2.Final.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.jboss.logging/jboss-logging/3.4.3.Final/c4bd7e12a745c0e7f6cf98c45cdcdf482fd827ea/jboss-logging-3.4.3.Final.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/net.bytebuddy/byte-buddy/1.11.22/8b4c7fa5562a09da1c2a9ab0873cb51f5034d83f/byte-buddy-1.11.22.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/antlr/antlr/2.7.7/83cd2cd674a217ade95a4bb83a8a14f351f48bd0/antlr-2.7.7.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.jboss/jandex/2.4.2.Final/1e1c385990b258ff1a24c801e84aebbacf70eb39/jandex-2.4.2.Final.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.fasterxml/classmate/1.5.1/3fe0bed568c62df5e89f4f174c101eab25345b6c/classmate-1.5.1.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-context/5.3.18/34f6683d9dbe6edb02ad9393df3d3211b5484622/spring-context-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-orm/5.3.18/ec32d5f4c718cc63e7c44adf5c4e7c49cdffa147/spring-orm-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.data/spring-data-commons/2.6.3/767ebf330da425ac4ab4b14391a60d9ed3ba18b7/spring-data-commons-2.6.3.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-tx/5.3.18/a93f91200e40b22ac0fda1308ecac081b820b099/spring-tx-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-beans/5.3.18/3f0ea6598a5a1eae0a672f025a33a0b7e0d6dfd3/spring-beans-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.slf4j/slf4j-api/1.7.36/6c62681a2f655b49963a5983b8b0950a6120ae14/slf4j-api-1.7.36.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.datatype/jackson-datatype-jsr310/2.13.2/cddd9380efd4b81ea01e98be8fbdc9765a81793b/jackson-datatype-jsr310-2.13.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.module/jackson-module-parameter-names/2.13.2/c406ec37f89125d1003093d5b96d216dc967153c/jackson-module-parameter-names-2.13.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.datatype/jackson-datatype-jdk8/2.13.2/95f59cf63c3aadc1549578254af839a9c42ae84f/jackson-datatype-jdk8-2.13.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-databind/2.13.2.2/ffeb635597d093509f33e1e94274d14be610f933/jackson-databind-2.13.2.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-autoconfigure/2.6.6/e5b575d304ec5c6746fef3cc594bbe89721d64c2/spring-boot-autoconfigure-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot/2.6.6/286137a0c57d159f845faa1c2e8d0b7548391085/spring-boot-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-logging/2.6.6/e37b388e2407a1b03f920a7fd0722e41745c92c6/spring-boot-starter-logging-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/jakarta.annotation/jakarta.annotation-api/1.3.5/59eb84ee0d616332ff44aba065f3888cf002cd2d/jakarta.annotation-api-1.3.5.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.yaml/snakeyaml/1.29/6d0cdafb2010f1297e574656551d7145240f6e25/snakeyaml-1.29.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.apache.tomcat.embed/tomcat-embed-websocket/9.0.60/a88262a55ae2c4b5404149a48122523688be341a/tomcat-embed-websocket-9.0.60.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.apache.tomcat.embed/tomcat-embed-core/9.0.60/e14045220243804544ddb168cb532f4640a220c/tomcat-embed-core-9.0.60.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.apache.tomcat.embed/tomcat-embed-el/9.0.60/46dad1a278f348ca73466e0b73132bf4c4892c06/tomcat-embed-el-9.0.60.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-expression/5.3.18/61c51831e49a85fc5bf925253ca63f46fec6f013/spring-expression-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/net.minidev/json-smart/2.4.8/7c62f5f72ab05eb54d40e2abf0360a2fe9ea477f/json-smart-2.4.8.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/jakarta.activation/jakarta.activation-api/1.2.2/99f53adba383cb1bf7c3862844488574b559621f/jakarta.activation-api-1.2.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.junit.jupiter/junit-jupiter-params/5.8.2/ddeafe92fc263f895bfb73ffeca7fd56e23c2cce/junit-jupiter-params-5.8.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.junit.jupiter/junit-jupiter-api/5.8.2/4c21029217adf07e4c0d0c5e192b6bf610c94bdc/junit-jupiter-api-5.8.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/net.bytebuddy/byte-buddy-agent/1.11.22/2fbcf3210dfc09b42242e3b66a5281cc5b9adb80/byte-buddy-agent-1.11.22.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.vaadin.external.google/android-json/0.0.20131108.vaadin1/fa26d351fe62a6a17f5cda1287c1c6110dec413f/android-json-0.0.20131108.vaadin1.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-jcl/5.3.18/7e5d8cd447981bc20d4c397a2ba0a1c65ff2267a/spring-jcl-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.glassfish.jaxb/txw2/2.3.6/45db7b69a8f1ec2c21eb7d4fc0ee729f53c1addc/txw2-2.3.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.sun.istack/istack-commons-runtime/3.0.12/cbbe1a62b0cc6c85972e99d52aaee350153dc530/istack-commons-runtime-3.0.12.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-annotations/2.13.2/ec18851f1976d5b810ae1a5fcc32520d2d38f77a/jackson-annotations-2.13.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-core/2.13.2/a6a0e0620d51833feffc67bccb51937b2345763/jackson-core-2.13.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-classic/1.2.11/4741689214e9d1e8408b206506cbe76d1c6a7d60/logback-classic-1.2.11.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-to-slf4j/2.17.2/17dd0fae2747d9a28c67bc9534108823d2376b46/log4j-to-slf4j-2.17.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.slf4j/jul-to-slf4j/1.7.36/ed46d81cef9c412a88caef405b58f93a678ff2ca/jul-to-slf4j-1.7.36.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/net.minidev/accessors-smart/2.4.8/6e1bee5a530caba91893604d6ab41d0edcecca9a/accessors-smart-2.4.8.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.apiguardian/apiguardian-api/1.1.2/a231e0d844d2721b0fa1b238006d15c6ded6842a/apiguardian-api-1.1.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.junit.platform/junit-platform-commons/1.8.2/32c8b8617c1342376fd5af2053da6410d8866861/junit-platform-commons-1.8.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.opentest4j/opentest4j/1.2.0/28c11eb91f9b6d8e200631d46e20a7f407f2a046/opentest4j-1.2.0.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-core/1.2.11/a01230df5ca5c34540cdaa3ad5efb012f1f1f792/logback-core-1.2.11.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-api/2.17.2/f42d6afa111b4dec5d2aea0fe2197240749a4ea6/log4j-api-2.17.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm/9.1/a99500cf6eea30535eeac6be73899d048f8d12a8/asm-9.1.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.h2database/h2/1.4.200/f7533fe7cb8e99c87a43d325a77b4b678ad9031a/h2-1.4.200.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.junit.jupiter/junit-jupiter-engine/5.8.2/c598b4328d2f397194d11df3b1648d68d7d990e3/junit-jupiter-engine-5.8.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.objenesis/objenesis/3.2/7fadf57620c8b8abdf7519533e5527367cb51f09/objenesis-3.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.sun.activation/jakarta.activation/1.2.2/74548703f9851017ce2f556066659438019e7eb5/jakarta.activation-1.2.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.junit.platform/junit-platform-engine/1.8.2/b737de09f19864bd136805c84df7999a142fec29/junit-platform-engine-1.8.2.jar com.intellij.rt.junit.JUnitStarter -ideVersion5 -junit5 study.datajpa.repository.MemberJpaRepositoryTest,bulkUpdate 20:56:06.803 [main] DEBUG org.springframework.test.context.BootstrapUtils - Instantiating CacheAwareContextLoaderDelegate from class [org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate] 20:56:06.814 [main] DEBUG org.springframework.test.context.BootstrapUtils - Instantiating BootstrapContext using constructor [public org.springframework.test.context.support.DefaultBootstrapContext(java.lang.Class,org.springframework.test.context.CacheAwareContextLoaderDelegate)] 20:56:06.880 [main] DEBUG org.springframework.test.context.BootstrapUtils - Instantiating TestContextBootstrapper for test class [study.datajpa.repository.MemberJpaRepositoryTest] from class [org.springframework.boot.test.context.SpringBootTestContextBootstrapper] 20:56:06.897 [main] INFO org.springframework.boot.test.context.SpringBootTestContextBootstrapper - Neither @ContextConfiguration nor @ContextHierarchy found for test class [study.datajpa.repository.MemberJpaRepositoryTest], using SpringBootContextLoader 20:56:06.902 [main] DEBUG org.springframework.test.context.support.AbstractContextLoader - Did not detect default resource location for test class [study.datajpa.repository.MemberJpaRepositoryTest]: class path resource [study/datajpa/repository/MemberJpaRepositoryTest-context.xml] does not exist 20:56:06.902 [main] DEBUG org.springframework.test.context.support.AbstractContextLoader - Did not detect default resource location for test class [study.datajpa.repository.MemberJpaRepositoryTest]: class path resource [study/datajpa/repository/MemberJpaRepositoryTestContext.groovy] does not exist 20:56:06.902 [main] INFO org.springframework.test.context.support.AbstractContextLoader - Could not detect default resource locations for test class [study.datajpa.repository.MemberJpaRepositoryTest]: no resource found for suffixes {-context.xml, Context.groovy}. 20:56:06.903 [main] INFO org.springframework.test.context.support.AnnotationConfigContextLoaderUtils - Could not detect default configuration classes for test class [study.datajpa.repository.MemberJpaRepositoryTest]: MemberJpaRepositoryTest does not declare any static, non-private, non-final, nested classes annotated with @Configuration. 20:56:06.973 [main] DEBUG org.springframework.test.context.support.ActiveProfilesUtils - Could not find an 'annotation declaring class' for annotation type [org.springframework.test.context.ActiveProfiles] and class [study.datajpa.repository.MemberJpaRepositoryTest] 20:56:07.075 [main] DEBUG org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider - Identified candidate component class: file [/Users/milaju/Desktop/SpringDataJPA/data-jpa/out/production/classes/study/datajpa/DataJpaApplication.class] 20:56:07.076 [main] INFO org.springframework.boot.test.context.SpringBootTestContextBootstrapper - Found @SpringBootConfiguration study.datajpa.DataJpaApplication for test class study.datajpa.repository.MemberJpaRepositoryTest 20:56:07.258 [main] DEBUG org.springframework.boot.test.context.SpringBootTestContextBootstrapper - @TestExecutionListeners is not present for class [study.datajpa.repository.MemberJpaRepositoryTest]: using defaults. 20:56:07.259 [main] INFO org.springframework.boot.test.context.SpringBootTestContextBootstrapper - Loaded default TestExecutionListener class names from location [META-INF/spring.factories]: [org.springframework.boot.test.autoconfigure.restdocs.RestDocsTestExecutionListener, org.springframework.boot.test.autoconfigure.web.client.MockRestServiceServerResetTestExecutionListener, org.springframework.boot.test.autoconfigure.web.servlet.MockMvcPrintOnlyOnFailureTestExecutionListener, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverTestExecutionListener, org.springframework.boot.test.autoconfigure.webservices.client.MockWebServiceServerTestExecutionListener, org.springframework.boot.test.mock.mockito.MockitoTestExecutionListener, org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener, org.springframework.test.context.web.ServletTestExecutionListener, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener, org.springframework.test.context.event.ApplicationEventsTestExecutionListener, org.springframework.test.context.support.DependencyInjectionTestExecutionListener, org.springframework.test.context.support.DirtiesContextTestExecutionListener, org.springframework.test.context.transaction.TransactionalTestExecutionListener, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener, org.springframework.test.context.event.EventPublishingTestExecutionListener] 20:56:07.278 [main] INFO org.springframework.boot.test.context.SpringBootTestContextBootstrapper - Using TestExecutionListeners: [org.springframework.test.context.web.ServletTestExecutionListener@5066d65f, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener@4233e892, org.springframework.test.context.event.ApplicationEventsTestExecutionListener@77d2e85, org.springframework.boot.test.mock.mockito.MockitoTestExecutionListener@3ecd267f, org.springframework.boot.test.autoconfigure.SpringBootDependencyInjectionTestExecutionListener@58ffcbd7, org.springframework.test.context.support.DirtiesContextTestExecutionListener@555cf22, org.springframework.test.context.transaction.TransactionalTestExecutionListener@6bb2d00b, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener@3c9bfddc, org.springframework.test.context.event.EventPublishingTestExecutionListener@1a9c38eb, org.springframework.boot.test.autoconfigure.restdocs.RestDocsTestExecutionListener@319bc845, org.springframework.boot.test.autoconfigure.web.client.MockRestServiceServerResetTestExecutionListener@4c5474f5, org.springframework.boot.test.autoconfigure.web.servlet.MockMvcPrintOnlyOnFailureTestExecutionListener@2f4205be, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverTestExecutionListener@54e22bdd, org.springframework.boot.test.autoconfigure.webservices.client.MockWebServiceServerTestExecutionListener@3bd418e4, org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener@544820b7] 20:56:07.281 [main] DEBUG org.springframework.test.context.support.AbstractDirtiesContextTestExecutionListener - Before test class: context [DefaultTestContext@6955cb39 testClass = MemberJpaRepositoryTest, testInstance = [null], testMethod = [null], testException = [null], mergedContextConfiguration = [WebMergedContextConfiguration@235a0c16 testClass = MemberJpaRepositoryTest, locations = '{}', classes = '{class study.datajpa.DataJpaApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.autoconfigure.actuate.metrics.MetricsExportContextCustomizerFactory$DisableMetricExportContextCustomizer@7d61eb55, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@163370c2, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@13d9cbf5, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@c667f46, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@3b5fad2d, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@4e41089d], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]], attributes = map['org.springframework.test.context.web.ServletTestExecutionListener.activateListener' -> true]], class annotated with @DirtiesContext [false] with mode [null]. . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v2.6.6) 2022-04-17 20:56:08.246 INFO 39496 --- [ main] s.d.repository.MemberJpaRepositoryTest : Starting MemberJpaRepositoryTest using Java 11.0.14.1 on MacBook-Pro.local with PID 39496 (started by milaju in /Users/milaju/Desktop/SpringDataJPA/data-jpa) 2022-04-17 20:56:08.248 INFO 39496 --- [ main] s.d.repository.MemberJpaRepositoryTest : No active profile set, falling back to 1 default profile: "default" 2022-04-17 20:56:09.521 INFO 39496 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode. 2022-04-17 20:56:09.588 INFO 39496 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 58 ms. Found 2 JPA repository interfaces. 2022-04-17 20:56:11.058 INFO 39496 --- [ main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default] 2022-04-17 20:56:11.115 INFO 39496 --- [ main] org.hibernate.Version : HHH000412: Hibernate ORM core version 5.6.7.Final 2022-04-17 20:56:11.280 INFO 39496 --- [ main] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {5.1.2.Final} 2022-04-17 20:56:11.392 INFO 39496 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... 2022-04-17 20:56:11.480 INFO 39496 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed. 2022-04-17 20:56:11.513 INFO 39496 --- [ main] org.hibernate.dialect.Dialect : HHH000400: Using dialect: org.hibernate.dialect.H2Dialect 2022-04-17 20:56:12.208 DEBUG 39496 --- [ main] org.hibernate.SQL : drop table if exists member CASCADE 2022-04-17 20:56:12.216 INFO 39496 --- [ main] p6spy : #1650196572215 | took 1ms | statement | connection 1| url jdbc:h2:tcp://localhost/~/datajpa drop table if exists member CASCADE drop table if exists member CASCADE ; 2022-04-17 20:56:12.216 DEBUG 39496 --- [ main] org.hibernate.SQL : drop table if exists team CASCADE 2022-04-17 20:56:12.216 INFO 39496 --- [ main] p6spy : #1650196572216 | took 0ms | statement | connection 1| url jdbc:h2:tcp://localhost/~/datajpa drop table if exists team CASCADE drop table if exists team CASCADE ; 2022-04-17 20:56:12.216 DEBUG 39496 --- [ main] org.hibernate.SQL : drop sequence if exists hibernate_sequence 2022-04-17 20:56:12.216 INFO 39496 --- [ main] p6spy : #1650196572216 | took 0ms | statement | connection 1| url jdbc:h2:tcp://localhost/~/datajpa drop sequence if exists hibernate_sequence drop sequence if exists hibernate_sequence; 2022-04-17 20:56:12.218 DEBUG 39496 --- [ main] org.hibernate.SQL : create sequence hibernate_sequence start with 1 increment by 1 2022-04-17 20:56:12.219 INFO 39496 --- [ main] p6spy : #1650196572219 | took 0ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/datajpa create sequence hibernate_sequence start with 1 increment by 1 create sequence hibernate_sequence start with 1 increment by 1; 2022-04-17 20:56:12.220 DEBUG 39496 --- [ main] org.hibernate.SQL : create table member ( member_id bigint not null, age integer not null, username varchar(255), tema_id bigint, primary key (member_id) ) 2022-04-17 20:56:12.222 INFO 39496 --- [ main] p6spy : #1650196572222 | took 1ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/datajpa create table member ( member_id bigint not null, age integer not null, username varchar(255), tema_id bigint, primary key (member_id) ) create table member ( member_id bigint not null, age integer not null, username varchar(255), tema_id bigint, primary key (member_id) ); 2022-04-17 20:56:12.224 DEBUG 39496 --- [ main] org.hibernate.SQL : create table team ( team_id bigint not null, name varchar(255), primary key (team_id) ) 2022-04-17 20:56:12.225 INFO 39496 --- [ main] p6spy : #1650196572225 | took 0ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/datajpa create table team ( team_id bigint not null, name varchar(255), primary key (team_id) ) create table team ( team_id bigint not null, name varchar(255), primary key (team_id) ); 2022-04-17 20:56:12.226 DEBUG 39496 --- [ main] org.hibernate.SQL : alter table member add constraint FK8g17q6hc0aeo27fqj0vlxsa38 foreign key (tema_id) references team 2022-04-17 20:56:12.229 INFO 39496 --- [ main] p6spy : #1650196572229 | took 3ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/datajpa alter table member add constraint FK8g17q6hc0aeo27fqj0vlxsa38 foreign key (tema_id) references team alter table member add constraint FK8g17q6hc0aeo27fqj0vlxsa38 foreign key (tema_id) references team; 2022-04-17 20:56:12.232 INFO 39496 --- [ main] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] 2022-04-17 20:56:12.340 INFO 39496 --- [ main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default' 2022-04-17 20:56:12.964 WARN 39496 --- [ main] JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning 2022-04-17 20:56:14.549 INFO 39496 --- [ main] s.d.repository.MemberJpaRepositoryTest : Started MemberJpaRepositoryTest in 7.204 seconds (JVM running for 8.983) 2022-04-17 20:56:14.614 INFO 39496 --- [ main] o.s.t.c.transaction.TransactionContext : Began transaction (1) for test context [DefaultTestContext@6955cb39 testClass = MemberJpaRepositoryTest, testInstance = study.datajpa.repository.MemberJpaRepositoryTest@16f62062, testMethod = bulkUpdate@MemberJpaRepositoryTest, testException = [null], mergedContextConfiguration = [WebMergedContextConfiguration@235a0c16 testClass = MemberJpaRepositoryTest, locations = '{}', classes = '{class study.datajpa.DataJpaApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.autoconfigure.actuate.metrics.MetricsExportContextCustomizerFactory$DisableMetricExportContextCustomizer@7d61eb55, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@163370c2, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@13d9cbf5, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@c667f46, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@3b5fad2d, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@4e41089d], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]], attributes = map['org.springframework.test.context.web.ServletTestExecutionListener.activateListener' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.populatedRequestContextHolder' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.resetRequestContextHolder' -> true, 'org.springframework.test.context.event.ApplicationEventsTestExecutionListener.recordApplicationEvents' -> false]]; transaction manager [org.springframework.orm.jpa.JpaTransactionManager@74cff17c]; rollback [false] 2022-04-17 20:56:14.823 DEBUG 39496 --- [ main] org.hibernate.SQL : call next value for hibernate_sequence 2022-04-17 20:56:14.831 INFO 39496 --- [ main] p6spy : #1650196574831 | took 4ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa call next value for hibernate_sequence call next value for hibernate_sequence; 2022-04-17 20:56:14.844 DEBUG 39496 --- [ main] org.hibernate.SQL : call next value for hibernate_sequence 2022-04-17 20:56:14.845 INFO 39496 --- [ main] p6spy : #1650196574845 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa call next value for hibernate_sequence call next value for hibernate_sequence; 2022-04-17 20:56:14.845 DEBUG 39496 --- [ main] org.hibernate.SQL : call next value for hibernate_sequence 2022-04-17 20:56:14.846 INFO 39496 --- [ main] p6spy : #1650196574846 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa call next value for hibernate_sequence call next value for hibernate_sequence; 2022-04-17 20:56:14.846 DEBUG 39496 --- [ main] org.hibernate.SQL : call next value for hibernate_sequence 2022-04-17 20:56:14.847 INFO 39496 --- [ main] p6spy : #1650196574847 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa call next value for hibernate_sequence call next value for hibernate_sequence; 2022-04-17 20:56:14.847 DEBUG 39496 --- [ main] org.hibernate.SQL : call next value for hibernate_sequence 2022-04-17 20:56:14.847 INFO 39496 --- [ main] p6spy : #1650196574847 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa call next value for hibernate_sequence call next value for hibernate_sequence; 2022-04-17 20:56:14.861 DEBUG 39496 --- [ main] org.hibernate.SQL : insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) 2022-04-17 20:56:14.865 INFO 39496 --- [ main] p6spy : #1650196574865 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) insert into member (age, tema_id, username, member_id) values (10, NULL, 'member1', 1); 2022-04-17 20:56:14.866 DEBUG 39496 --- [ main] org.hibernate.SQL : insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) 2022-04-17 20:56:14.867 INFO 39496 --- [ main] p6spy : #1650196574867 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) insert into member (age, tema_id, username, member_id) values (19, NULL, 'member1', 2); 2022-04-17 20:56:14.867 DEBUG 39496 --- [ main] org.hibernate.SQL : insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) 2022-04-17 20:56:14.868 INFO 39496 --- [ main] p6spy : #1650196574868 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) insert into member (age, tema_id, username, member_id) values (20, NULL, 'member1', 3); 2022-04-17 20:56:14.868 DEBUG 39496 --- [ main] org.hibernate.SQL : insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) 2022-04-17 20:56:14.868 INFO 39496 --- [ main] p6spy : #1650196574868 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) insert into member (age, tema_id, username, member_id) values (21, NULL, 'member1', 4); 2022-04-17 20:56:14.869 DEBUG 39496 --- [ main] org.hibernate.SQL : insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) 2022-04-17 20:56:14.869 INFO 39496 --- [ main] p6spy : #1650196574869 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) insert into member (age, tema_id, username, member_id) values (40, NULL, 'member1', 5); 2022-04-17 20:56:14.872 DEBUG 39496 --- [ main] org.hibernate.SQL : update member set age=age+1 where age>=? 2022-04-17 20:56:14.874 INFO 39496 --- [ main] p6spy : #1650196574874 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa update member set age=age+1 where age>=? update member set age=age+1 where age>=20; 2022-04-17 20:56:14.939 INFO 39496 --- [ main] p6spy : #1650196574939 | took 0ms | commit | connection 3| url jdbc:h2:tcp://localhost/~/datajpa ; 2022-04-17 20:56:14.941 INFO 39496 --- [ main] o.s.t.c.transaction.TransactionContext : Committed transaction for test: [DefaultTestContext@6955cb39 testClass = MemberJpaRepositoryTest, testInstance = study.datajpa.repository.MemberJpaRepositoryTest@16f62062, testMethod = bulkUpdate@MemberJpaRepositoryTest, testException = [null], mergedContextConfiguration = [WebMergedContextConfiguration@235a0c16 testClass = MemberJpaRepositoryTest, locations = '{}', classes = '{class study.datajpa.DataJpaApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.autoconfigure.actuate.metrics.MetricsExportContextCustomizerFactory$DisableMetricExportContextCustomizer@7d61eb55, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@163370c2, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@13d9cbf5, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@c667f46, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@3b5fad2d, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@4e41089d], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]], attributes = map['org.springframework.test.context.web.ServletTestExecutionListener.activateListener' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.populatedRequestContextHolder' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.resetRequestContextHolder' -> true, 'org.springframework.test.context.event.ApplicationEventsTestExecutionListener.recordApplicationEvents' -> false]] 2022-04-17 20:56:14.958 INFO 39496 --- [ionShutdownHook] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default' 2022-04-17 20:56:14.963 INFO 39496 --- [ionShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated... 2022-04-17 20:56:14.987 INFO 39496 --- [ionShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed. Process finished with exit code 0 MemberRepository입니다. package study.datajpa.repository;import org.springframework.data.domain.Page;import org.springframework.data.domain.PageRequest;import org.springframework.data.domain.Pageable;import org.springframework.data.domain.Slice;import org.springframework.data.jpa.repository.JpaRepository;import org.springframework.data.jpa.repository.Modifying;import org.springframework.data.jpa.repository.Query;import org.springframework.data.repository.query.Param;import study.datajpa.dto.MemberDto;import study.datajpa.entity.Member;import java.util.Collection;import java.util.List;import java.util.Optional;public interface MemberRepository extends JpaRepository<Member, Long> { List<Member> findByUsernameAndAgeGreaterThan(String username, int age); List<Member> findTop3HelloBy(); List<Member> findByUsername(@Param("username") String username); @Query("select m from Member m where m.username = :username and m.age = :age") List<Member> findUser(@Param("username") String username, @Param("age") int age); @Query("select m.username from Member m") List<String> findUsernameList(); @Query("select new study.datajpa.dto.MemberDto(m.id, m.username, t.name) from Member m join m.team t") List<MemberDto> findMemberDto(); @Query("select m from Member m where m.username in :names") List<Member> findByNames(@Param("names") Collection<String> names); List<Member> findListByUsername(String username); // 컬렉션 Member findMemberByUsername(String username); // 단건 Optional<Member> findOptionalByUsername(String username); // 단건 Optional Page<Member> findByAge(int age, Pageable pageable); @Modifying @Query("update Member m set m.age = m.age + 1 where m.age >= :age") int bulkAgePlus(@Param("age") int age);} MemberRepositoryTest 입니다. package study.datajpa.repository;import org.assertj.core.api.Assertions;import org.junit.jupiter.api.Test;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBootTest;import org.springframework.data.domain.Page;import org.springframework.data.domain.PageRequest;import org.springframework.data.domain.Slice;import org.springframework.data.domain.Sort;import org.springframework.test.annotation.Rollback;import org.springframework.transaction.annotation.Transactional;import study.datajpa.dto.MemberDto;import study.datajpa.entity.Member;import study.datajpa.entity.Team;import javax.persistence.EntityManager;import javax.persistence.PersistenceContext;import java.util.Arrays;import java.util.List;import java.util.Optional;import static org.assertj.core.api.Assertions.*;import static org.junit.jupiter.api.Assertions.*;@SpringBootTest@Transactional@Rollback(false)class MemberRepositoryTest { @Autowired MemberRepository memberRepository; @Autowired TeamRepository teamRepository; @PersistenceContext EntityManager em; @Test public void testMember() { System.out.println("memberRepository = " + memberRepository.getClass()); Member member = new Member("memberA"); Member savedMember = memberRepository.save(member); Member findMember = memberRepository.findById(savedMember.getId()).get(); assertThat(findMember.getId()).isEqualTo(member.getId()); assertThat(findMember.getUsername()).isEqualTo(member.getUsername()); assertThat(findMember).isEqualTo(member); } @Test public void basicCRUD() { Member member1 = new Member("member1"); Member member2 = new Member("member2"); memberRepository.save(member1); memberRepository.save(member2); // 단건 조회 검증 Member findMember1 = memberRepository.findById(member1.getId()).get(); Member findMember2 = memberRepository.findById(member2.getId()).get(); assertThat(findMember1).isEqualTo(member1); assertThat(findMember2).isEqualTo(member2); findMember1.setUsername("member!!!!!!!"); // 리스트 조회 검증 List<Member> all = memberRepository.findAll(); assertThat(all.size()).isEqualTo(2); // 카운트 검증 long count = memberRepository.count(); assertThat(count).isEqualTo(2); // 삭제 검증 memberRepository.delete(member1); memberRepository.delete(member2); long deleteCount = memberRepository.count(); assertThat(deleteCount).isEqualTo(0); } @Test public void findByUsernameAndAgeGreaterThen() { Member m1 = new Member("AAA", 10); Member m2 = new Member("AAA", 20); memberRepository.save(m1); memberRepository.save(m2); List<Member> result = memberRepository.findByUsernameAndAgeGreaterThan("AAA", 15); assertThat(result.get(0).getUsername()).isEqualTo("AAA"); assertThat(result.get(0).getAge()).isEqualTo(20); assertThat(result.size()).isEqualTo(1); } @Test public void findHelloBy() { List<Member> helloBy = memberRepository.findTop3HelloBy(); } @Test public void testNamedQuery() { Member m1 = new Member("AAA", 10); Member m2 = new Member("BBB", 20); memberRepository.save(m1); memberRepository.save(m2); List<Member> result = memberRepository.findByUsername("AAA"); Member findMember = result.get(0); assertThat(findMember).isEqualTo(m1); } @Test public void testQuery() { Member m1 = new Member("AAA", 10); Member m2 = new Member("BBB", 20); memberRepository.save(m1); memberRepository.save(m2); List<Member> result = memberRepository.findUser("AAA", 10); Member findMember = result.get(0); assertThat(findMember).isEqualTo(m1); } @Test public void findUsernameList() { Member m1 = new Member("AAA", 10); Member m2 = new Member("BBB", 20); memberRepository.save(m1); memberRepository.save(m2); List<String> usernameList = memberRepository.findUsernameList(); for (String s : usernameList) { System.out.println("s = " + s); } } @Test public void findMemberDto() { Team team = new Team("teamA"); teamRepository.save(team); Member m1 = new Member("AAA", 10); m1.setTeam(team); memberRepository.save(m1); List<MemberDto> memberDto = memberRepository.findMemberDto(); for (MemberDto dto : memberDto) { System.out.println("dto = " + dto); } } @Test public void findByNames() { Member m1 = new Member("AAA", 10); Member m2 = new Member("BBB", 20); memberRepository.save(m1); memberRepository.save(m2); List<Member> result = memberRepository.findByNames(Arrays.asList("AAA", "BBB")); for (Member member : result) { System.out.println("member = " + member); } } @Test public void returnType() { Member m1 = new Member("AAA", 10); Member m2 = new Member("BBB", 20); memberRepository.save(m1); memberRepository.save(m2); Optional<Member> findMember = memberRepository.findOptionalByUsername("asdasfasDFADSF"); System.out.println("findMember = " + findMember); } @Test public void paging() { memberRepository.save(new Member("member1", 10)); memberRepository.save(new Member("member2", 10)); memberRepository.save(new Member("member3", 10)); memberRepository.save(new Member("member4", 10)); memberRepository.save(new Member("member5", 10)); int age = 10; PageRequest pageRequest = PageRequest.of(0, 3, Sort.by(Sort.Direction.DESC, "username")); // when Page<Member> page = memberRepository.findByAge(age, pageRequest); Page<MemberDto> toMap = page.map(m -> new MemberDto(m.getId(), m.getUsername(), null)); // then List<Member> content = page.getContent(); assertThat(content.size()).isEqualTo(3); assertThat(page.getTotalElements()).isEqualTo(5); assertThat(page.getNumber()).isEqualTo(0); assertThat(page.getTotalPages()).isEqualTo(2); assertThat(page.isFirst()).isTrue(); assertThat(page.hasNext()).isTrue(); } @Test public void bulkUpdate() { //given memberRepository.save(new Member("member1", 10)); memberRepository.save(new Member("member2", 19)); memberRepository.save(new Member("member3", 20)); memberRepository.save(new Member("member4", 21)); memberRepository.save(new Member("member5", 40)); // when int resultCount = memberRepository.bulkAgePlus(20); em.flush(); em.clear(); List<Member> result = memberRepository.findByUsername("member5"); Member member5 = result.get(0); System.out.println("member5 = " + member5); // then assertThat(resultCount).isEqualTo(3); }} 그리고 MemberRepository Interface에서 @Modifying을 주석처리하면 에러가 나야하지만 주석처리하고 돌려도 정상적으로 아래와 같이 실행이 됩니다. "/Applications/IntelliJ IDEA CE.app/Contents/jbr/Contents/Home/bin/java" -ea -Didea.test.cyclic.buffer.size=1048576 -javaagent:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar=63008:/Applications/IntelliJ IDEA CE.app/Contents/bin -Dfile.encoding=UTF-8 -classpath /Users/milaju/.m2/repository/org/junit/platform/junit-platform-launcher/1.8.2/junit-platform-launcher-1.8.2.jar:/Users/milaju/.m2/repository/org/junit/platform/junit-platform-engine/1.8.2/junit-platform-engine-1.8.2.jar:/Users/milaju/.m2/repository/org/opentest4j/opentest4j/1.2.0/opentest4j-1.2.0.jar:/Users/milaju/.m2/repository/org/junit/platform/junit-platform-commons/1.8.2/junit-platform-commons-1.8.2.jar:/Users/milaju/.m2/repository/org/apiguardian/apiguardian-api/1.1.2/apiguardian-api-1.1.2.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/junit/lib/junit5-rt.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/junit/lib/junit-rt.jar:/Users/milaju/Desktop/SpringDataJPA/data-jpa/out/test/classes:/Users/milaju/Desktop/SpringDataJPA/data-jpa/out/production/classes:/Users/milaju/Desktop/SpringDataJPA/data-jpa/out/production/resources:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-data-jpa/2.6.6/30942753cd29132913a5b642dc5b045c1cb18fd9/spring-boot-starter-data-jpa-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-web/2.6.6/7aa73898044e9fb7dc71dbf4d4e0f2fbcc7ce25f/spring-boot-starter-web-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.github.gavlyukovskiy/p6spy-spring-boot-starter/1.5.7/1c1cc817d2ee7cfe8a511bb1b429254d05f7ad03/p6spy-spring-boot-starter-1.5.7.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-test/2.6.6/b6b577cad64544e47dc9f523d7091c2cbb85bd52/spring-boot-starter-test-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-aop/2.6.6/d08c239992526803aa4f7fc4e74f243ccc337ebb/spring-boot-starter-aop-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-jdbc/2.6.6/c0ee383ed4482fddc74ad645c0d77c98ec767140/spring-boot-starter-jdbc-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/jakarta.transaction/jakarta.transaction-api/1.3.3/c4179d48720a1e87202115fbed6089bdc4195405/jakarta.transaction-api-1.3.3.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/jakarta.persistence/jakarta.persistence-api/2.2.3/8f6ea5daedc614f07a3654a455660145286f024e/jakarta.persistence-api-2.2.3.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.hibernate/hibernate-core/5.6.7.Final/c62626c463b75530acb4f2fb2ae3ca85d80cfa06/hibernate-core-5.6.7.Final.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.data/spring-data-jpa/2.6.3/7fbfafa3b27c8f2e315fe489c2f0699a24f32082/spring-data-jpa-2.6.3.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-aspects/5.3.18/78e473c68f3f579f6dff4810530260bcfe97ca8f/spring-aspects-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-json/2.6.6/6f405fb0ebe73841e4494aa65cf2f91d7dc2ae7f/spring-boot-starter-json-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter/2.6.6/b34b4f0c1e99edc181ea40a6b1b79fa72658ee04/spring-boot-starter-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-tomcat/2.6.6/2076a0fd75e63b57dd149a0ccf7a1545e3f1aec3/spring-boot-starter-tomcat-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-webmvc/5.3.18/806b4ac997761daa32cba3f766d8ac09c132fe81/spring-webmvc-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-web/5.3.18/8db103c4109e925ec6f5fbfe577d447d3e95ded5/spring-web-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.github.gavlyukovskiy/datasource-decorator-spring-boot-autoconfigure/1.5.7/83c5a0750a42d36ffbcb988f82af0debd43ebd8b/datasource-decorator-spring-boot-autoconfigure-1.5.7.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/p6spy/p6spy/3.8.2/52299d9a1ec2bc2fb8b1a21cc12dfc1a7c033caf/p6spy-3.8.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-test-autoconfigure/2.6.6/c2571e2dd0a9543525b9bd6253942a89195d9b4d/spring-boot-test-autoconfigure-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-test/2.6.6/97626f535c1625e0ca3ede4351e4d55e4cd80ae1/spring-boot-test-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.jayway.jsonpath/json-path/2.6.0/67f565b424f7903a12d4f5b9361b11462ecacdac/json-path-2.6.0.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/jakarta.xml.bind/jakarta.xml.bind-api/2.3.3/48e3b9cfc10752fba3521d6511f4165bea951801/jakarta.xml.bind-api-2.3.3.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.assertj/assertj-core/3.21.0/27a14d6d22c4e3d58f799fb2a5ca8eaf53e6942a/assertj-core-3.21.0.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest/2.2/1820c0968dba3a11a1b30669bb1f01978a91dedc/hamcrest-2.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.junit.jupiter/junit-jupiter/5.8.2/5a817b1e63f1217e5c586090c45e681281f097ad/junit-jupiter-5.8.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.mockito/mockito-junit-jupiter/4.0.0/b76de25bd6e5d8f7924d0536729c0076e37e9396/mockito-junit-jupiter-4.0.0.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.mockito/mockito-core/4.0.0/f5195e0c4a45716bbd2d1d29173adbd148acce3a/mockito-core-4.0.0.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.skyscreamer/jsonassert/1.5.0/6c9d5fe2f59da598d9aefc1cfc6528ff3cf32df3/jsonassert-1.5.0.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-test/5.3.18/9d6a388deed7abd60e2bddde44d927f9d009d3be/spring-test-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-core/5.3.18/7ff3000f3342989cb011b6095a0e86f2e5176cef/spring-core-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.xmlunit/xmlunit-core/2.8.4/35be57989ca80eefa03161b211630e319a8f36c6/xmlunit-core-2.8.4.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-aop/5.3.18/8e9cce60c60257ae1d5b3cd675ec3a8286ed1955/spring-aop-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.aspectj/aspectjweaver/1.9.7/158f5c255cd3e4408e795b79f7c3fbae9b53b7ca/aspectjweaver-1.9.7.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-jdbc/5.3.18/b168d4c024cb002377bca91f2b804297d8b74003/spring-jdbc-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.zaxxer/HikariCP/4.0.3/107cbdf0db6780a065f895ae9d8fbf3bb0e1c21f/HikariCP-4.0.3.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.glassfish.jaxb/jaxb-runtime/2.3.6/1e6cd0e5d9f9919c8c8824fb4d310b09a978a60e/jaxb-runtime-2.3.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.hibernate.common/hibernate-commons-annotations/5.1.2.Final/e59ffdbc6ad09eeb33507b39ffcf287679a498c8/hibernate-commons-annotations-5.1.2.Final.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.jboss.logging/jboss-logging/3.4.3.Final/c4bd7e12a745c0e7f6cf98c45cdcdf482fd827ea/jboss-logging-3.4.3.Final.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/net.bytebuddy/byte-buddy/1.11.22/8b4c7fa5562a09da1c2a9ab0873cb51f5034d83f/byte-buddy-1.11.22.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/antlr/antlr/2.7.7/83cd2cd674a217ade95a4bb83a8a14f351f48bd0/antlr-2.7.7.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.jboss/jandex/2.4.2.Final/1e1c385990b258ff1a24c801e84aebbacf70eb39/jandex-2.4.2.Final.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.fasterxml/classmate/1.5.1/3fe0bed568c62df5e89f4f174c101eab25345b6c/classmate-1.5.1.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-context/5.3.18/34f6683d9dbe6edb02ad9393df3d3211b5484622/spring-context-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-orm/5.3.18/ec32d5f4c718cc63e7c44adf5c4e7c49cdffa147/spring-orm-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.data/spring-data-commons/2.6.3/767ebf330da425ac4ab4b14391a60d9ed3ba18b7/spring-data-commons-2.6.3.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-tx/5.3.18/a93f91200e40b22ac0fda1308ecac081b820b099/spring-tx-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-beans/5.3.18/3f0ea6598a5a1eae0a672f025a33a0b7e0d6dfd3/spring-beans-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.slf4j/slf4j-api/1.7.36/6c62681a2f655b49963a5983b8b0950a6120ae14/slf4j-api-1.7.36.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.datatype/jackson-datatype-jsr310/2.13.2/cddd9380efd4b81ea01e98be8fbdc9765a81793b/jackson-datatype-jsr310-2.13.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.module/jackson-module-parameter-names/2.13.2/c406ec37f89125d1003093d5b96d216dc967153c/jackson-module-parameter-names-2.13.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.datatype/jackson-datatype-jdk8/2.13.2/95f59cf63c3aadc1549578254af839a9c42ae84f/jackson-datatype-jdk8-2.13.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-databind/2.13.2.2/ffeb635597d093509f33e1e94274d14be610f933/jackson-databind-2.13.2.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-autoconfigure/2.6.6/e5b575d304ec5c6746fef3cc594bbe89721d64c2/spring-boot-autoconfigure-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot/2.6.6/286137a0c57d159f845faa1c2e8d0b7548391085/spring-boot-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-logging/2.6.6/e37b388e2407a1b03f920a7fd0722e41745c92c6/spring-boot-starter-logging-2.6.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/jakarta.annotation/jakarta.annotation-api/1.3.5/59eb84ee0d616332ff44aba065f3888cf002cd2d/jakarta.annotation-api-1.3.5.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.yaml/snakeyaml/1.29/6d0cdafb2010f1297e574656551d7145240f6e25/snakeyaml-1.29.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.apache.tomcat.embed/tomcat-embed-websocket/9.0.60/a88262a55ae2c4b5404149a48122523688be341a/tomcat-embed-websocket-9.0.60.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.apache.tomcat.embed/tomcat-embed-core/9.0.60/e14045220243804544ddb168cb532f4640a220c/tomcat-embed-core-9.0.60.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.apache.tomcat.embed/tomcat-embed-el/9.0.60/46dad1a278f348ca73466e0b73132bf4c4892c06/tomcat-embed-el-9.0.60.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-expression/5.3.18/61c51831e49a85fc5bf925253ca63f46fec6f013/spring-expression-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/net.minidev/json-smart/2.4.8/7c62f5f72ab05eb54d40e2abf0360a2fe9ea477f/json-smart-2.4.8.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/jakarta.activation/jakarta.activation-api/1.2.2/99f53adba383cb1bf7c3862844488574b559621f/jakarta.activation-api-1.2.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.junit.jupiter/junit-jupiter-params/5.8.2/ddeafe92fc263f895bfb73ffeca7fd56e23c2cce/junit-jupiter-params-5.8.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.junit.jupiter/junit-jupiter-api/5.8.2/4c21029217adf07e4c0d0c5e192b6bf610c94bdc/junit-jupiter-api-5.8.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/net.bytebuddy/byte-buddy-agent/1.11.22/2fbcf3210dfc09b42242e3b66a5281cc5b9adb80/byte-buddy-agent-1.11.22.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.vaadin.external.google/android-json/0.0.20131108.vaadin1/fa26d351fe62a6a17f5cda1287c1c6110dec413f/android-json-0.0.20131108.vaadin1.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.springframework/spring-jcl/5.3.18/7e5d8cd447981bc20d4c397a2ba0a1c65ff2267a/spring-jcl-5.3.18.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.glassfish.jaxb/txw2/2.3.6/45db7b69a8f1ec2c21eb7d4fc0ee729f53c1addc/txw2-2.3.6.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.sun.istack/istack-commons-runtime/3.0.12/cbbe1a62b0cc6c85972e99d52aaee350153dc530/istack-commons-runtime-3.0.12.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-annotations/2.13.2/ec18851f1976d5b810ae1a5fcc32520d2d38f77a/jackson-annotations-2.13.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-core/2.13.2/a6a0e0620d51833feffc67bccb51937b2345763/jackson-core-2.13.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-classic/1.2.11/4741689214e9d1e8408b206506cbe76d1c6a7d60/logback-classic-1.2.11.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-to-slf4j/2.17.2/17dd0fae2747d9a28c67bc9534108823d2376b46/log4j-to-slf4j-2.17.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.slf4j/jul-to-slf4j/1.7.36/ed46d81cef9c412a88caef405b58f93a678ff2ca/jul-to-slf4j-1.7.36.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/net.minidev/accessors-smart/2.4.8/6e1bee5a530caba91893604d6ab41d0edcecca9a/accessors-smart-2.4.8.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.apiguardian/apiguardian-api/1.1.2/a231e0d844d2721b0fa1b238006d15c6ded6842a/apiguardian-api-1.1.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.junit.platform/junit-platform-commons/1.8.2/32c8b8617c1342376fd5af2053da6410d8866861/junit-platform-commons-1.8.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.opentest4j/opentest4j/1.2.0/28c11eb91f9b6d8e200631d46e20a7f407f2a046/opentest4j-1.2.0.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-core/1.2.11/a01230df5ca5c34540cdaa3ad5efb012f1f1f792/logback-core-1.2.11.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-api/2.17.2/f42d6afa111b4dec5d2aea0fe2197240749a4ea6/log4j-api-2.17.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm/9.1/a99500cf6eea30535eeac6be73899d048f8d12a8/asm-9.1.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.h2database/h2/1.4.200/f7533fe7cb8e99c87a43d325a77b4b678ad9031a/h2-1.4.200.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.junit.jupiter/junit-jupiter-engine/5.8.2/c598b4328d2f397194d11df3b1648d68d7d990e3/junit-jupiter-engine-5.8.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.objenesis/objenesis/3.2/7fadf57620c8b8abdf7519533e5527367cb51f09/objenesis-3.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/com.sun.activation/jakarta.activation/1.2.2/74548703f9851017ce2f556066659438019e7eb5/jakarta.activation-1.2.2.jar:/Users/milaju/.gradle/caches/modules-2/files-2.1/org.junit.platform/junit-platform-engine/1.8.2/b737de09f19864bd136805c84df7999a142fec29/junit-platform-engine-1.8.2.jar com.intellij.rt.junit.JUnitStarter -ideVersion5 -junit5 study.datajpa.repository.MemberJpaRepositoryTest,bulkUpdate 21:04:41.706 [main] DEBUG org.springframework.test.context.BootstrapUtils - Instantiating CacheAwareContextLoaderDelegate from class [org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate] 21:04:41.716 [main] DEBUG org.springframework.test.context.BootstrapUtils - Instantiating BootstrapContext using constructor [public org.springframework.test.context.support.DefaultBootstrapContext(java.lang.Class,org.springframework.test.context.CacheAwareContextLoaderDelegate)] 21:04:41.785 [main] DEBUG org.springframework.test.context.BootstrapUtils - Instantiating TestContextBootstrapper for test class [study.datajpa.repository.MemberJpaRepositoryTest] from class [org.springframework.boot.test.context.SpringBootTestContextBootstrapper] 21:04:41.799 [main] INFO org.springframework.boot.test.context.SpringBootTestContextBootstrapper - Neither @ContextConfiguration nor @ContextHierarchy found for test class [study.datajpa.repository.MemberJpaRepositoryTest], using SpringBootContextLoader 21:04:41.804 [main] DEBUG org.springframework.test.context.support.AbstractContextLoader - Did not detect default resource location for test class [study.datajpa.repository.MemberJpaRepositoryTest]: class path resource [study/datajpa/repository/MemberJpaRepositoryTest-context.xml] does not exist 21:04:41.804 [main] DEBUG org.springframework.test.context.support.AbstractContextLoader - Did not detect default resource location for test class [study.datajpa.repository.MemberJpaRepositoryTest]: class path resource [study/datajpa/repository/MemberJpaRepositoryTestContext.groovy] does not exist 21:04:41.804 [main] INFO org.springframework.test.context.support.AbstractContextLoader - Could not detect default resource locations for test class [study.datajpa.repository.MemberJpaRepositoryTest]: no resource found for suffixes {-context.xml, Context.groovy}. 21:04:41.805 [main] INFO org.springframework.test.context.support.AnnotationConfigContextLoaderUtils - Could not detect default configuration classes for test class [study.datajpa.repository.MemberJpaRepositoryTest]: MemberJpaRepositoryTest does not declare any static, non-private, non-final, nested classes annotated with @Configuration. 21:04:41.875 [main] DEBUG org.springframework.test.context.support.ActiveProfilesUtils - Could not find an 'annotation declaring class' for annotation type [org.springframework.test.context.ActiveProfiles] and class [study.datajpa.repository.MemberJpaRepositoryTest] 21:04:41.973 [main] DEBUG org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider - Identified candidate component class: file [/Users/milaju/Desktop/SpringDataJPA/data-jpa/out/production/classes/study/datajpa/DataJpaApplication.class] 21:04:41.975 [main] INFO org.springframework.boot.test.context.SpringBootTestContextBootstrapper - Found @SpringBootConfiguration study.datajpa.DataJpaApplication for test class study.datajpa.repository.MemberJpaRepositoryTest 21:04:42.145 [main] DEBUG org.springframework.boot.test.context.SpringBootTestContextBootstrapper - @TestExecutionListeners is not present for class [study.datajpa.repository.MemberJpaRepositoryTest]: using defaults. 21:04:42.145 [main] INFO org.springframework.boot.test.context.SpringBootTestContextBootstrapper - Loaded default TestExecutionListener class names from location [META-INF/spring.factories]: [org.springframework.boot.test.autoconfigure.restdocs.RestDocsTestExecutionListener, org.springframework.boot.test.autoconfigure.web.client.MockRestServiceServerResetTestExecutionListener, org.springframework.boot.test.autoconfigure.web.servlet.MockMvcPrintOnlyOnFailureTestExecutionListener, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverTestExecutionListener, org.springframework.boot.test.autoconfigure.webservices.client.MockWebServiceServerTestExecutionListener, org.springframework.boot.test.mock.mockito.MockitoTestExecutionListener, org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener, org.springframework.test.context.web.ServletTestExecutionListener, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener, org.springframework.test.context.event.ApplicationEventsTestExecutionListener, org.springframework.test.context.support.DependencyInjectionTestExecutionListener, org.springframework.test.context.support.DirtiesContextTestExecutionListener, org.springframework.test.context.transaction.TransactionalTestExecutionListener, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener, org.springframework.test.context.event.EventPublishingTestExecutionListener] 21:04:42.161 [main] INFO org.springframework.boot.test.context.SpringBootTestContextBootstrapper - Using TestExecutionListeners: [org.springframework.test.context.web.ServletTestExecutionListener@655ef322, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener@7e276594, org.springframework.test.context.event.ApplicationEventsTestExecutionListener@3401a114, org.springframework.boot.test.mock.mockito.MockitoTestExecutionListener@5066d65f, org.springframework.boot.test.autoconfigure.SpringBootDependencyInjectionTestExecutionListener@4233e892, org.springframework.test.context.support.DirtiesContextTestExecutionListener@77d2e85, org.springframework.test.context.transaction.TransactionalTestExecutionListener@3ecd267f, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener@58ffcbd7, org.springframework.test.context.event.EventPublishingTestExecutionListener@555cf22, org.springframework.boot.test.autoconfigure.restdocs.RestDocsTestExecutionListener@6bb2d00b, org.springframework.boot.test.autoconfigure.web.client.MockRestServiceServerResetTestExecutionListener@3c9bfddc, org.springframework.boot.test.autoconfigure.web.servlet.MockMvcPrintOnlyOnFailureTestExecutionListener@1a9c38eb, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverTestExecutionListener@319bc845, org.springframework.boot.test.autoconfigure.webservices.client.MockWebServiceServerTestExecutionListener@4c5474f5, org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener@2f4205be] 21:04:42.164 [main] DEBUG org.springframework.test.context.support.AbstractDirtiesContextTestExecutionListener - Before test class: context [DefaultTestContext@4b9df8a testClass = MemberJpaRepositoryTest, testInstance = [null], testMethod = [null], testException = [null], mergedContextConfiguration = [WebMergedContextConfiguration@5e8ac0e1 testClass = MemberJpaRepositoryTest, locations = '{}', classes = '{class study.datajpa.DataJpaApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.autoconfigure.actuate.metrics.MetricsExportContextCustomizerFactory$DisableMetricExportContextCustomizer@7d61eb55, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@163370c2, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@13d9cbf5, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@c667f46, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@3b5fad2d, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@4e41089d], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]], attributes = map['org.springframework.test.context.web.ServletTestExecutionListener.activateListener' -> true]], class annotated with @DirtiesContext [false] with mode [null]. . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v2.6.6) 2022-04-17 21:04:42.963 INFO 39593 --- [ main] s.d.repository.MemberJpaRepositoryTest : Starting MemberJpaRepositoryTest using Java 11.0.14.1 on MacBook-Pro.local with PID 39593 (started by milaju in /Users/milaju/Desktop/SpringDataJPA/data-jpa) 2022-04-17 21:04:42.965 INFO 39593 --- [ main] s.d.repository.MemberJpaRepositoryTest : No active profile set, falling back to 1 default profile: "default" 2022-04-17 21:04:44.194 INFO 39593 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode. 2022-04-17 21:04:44.262 INFO 39593 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 58 ms. Found 2 JPA repository interfaces. 2022-04-17 21:04:45.656 INFO 39593 --- [ main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default] 2022-04-17 21:04:45.707 INFO 39593 --- [ main] org.hibernate.Version : HHH000412: Hibernate ORM core version 5.6.7.Final 2022-04-17 21:04:45.864 INFO 39593 --- [ main] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {5.1.2.Final} 2022-04-17 21:04:45.973 INFO 39593 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... 2022-04-17 21:04:46.059 INFO 39593 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed. 2022-04-17 21:04:46.091 INFO 39593 --- [ main] org.hibernate.dialect.Dialect : HHH000400: Using dialect: org.hibernate.dialect.H2Dialect 2022-04-17 21:04:46.746 DEBUG 39593 --- [ main] org.hibernate.SQL : drop table if exists member CASCADE 2022-04-17 21:04:46.751 INFO 39593 --- [ main] p6spy : #1650197086751 | took 1ms | statement | connection 1| url jdbc:h2:tcp://localhost/~/datajpa drop table if exists member CASCADE drop table if exists member CASCADE ; 2022-04-17 21:04:46.751 DEBUG 39593 --- [ main] org.hibernate.SQL : drop table if exists team CASCADE 2022-04-17 21:04:46.751 INFO 39593 --- [ main] p6spy : #1650197086751 | took 0ms | statement | connection 1| url jdbc:h2:tcp://localhost/~/datajpa drop table if exists team CASCADE drop table if exists team CASCADE ; 2022-04-17 21:04:46.752 DEBUG 39593 --- [ main] org.hibernate.SQL : drop sequence if exists hibernate_sequence 2022-04-17 21:04:46.752 INFO 39593 --- [ main] p6spy : #1650197086752 | took 0ms | statement | connection 1| url jdbc:h2:tcp://localhost/~/datajpa drop sequence if exists hibernate_sequence drop sequence if exists hibernate_sequence; 2022-04-17 21:04:46.754 DEBUG 39593 --- [ main] org.hibernate.SQL : create sequence hibernate_sequence start with 1 increment by 1 2022-04-17 21:04:46.755 INFO 39593 --- [ main] p6spy : #1650197086755 | took 0ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/datajpa create sequence hibernate_sequence start with 1 increment by 1 create sequence hibernate_sequence start with 1 increment by 1; 2022-04-17 21:04:46.756 DEBUG 39593 --- [ main] org.hibernate.SQL : create table member ( member_id bigint not null, age integer not null, username varchar(255), tema_id bigint, primary key (member_id) ) 2022-04-17 21:04:46.757 INFO 39593 --- [ main] p6spy : #1650197086757 | took 1ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/datajpa create table member ( member_id bigint not null, age integer not null, username varchar(255), tema_id bigint, primary key (member_id) ) create table member ( member_id bigint not null, age integer not null, username varchar(255), tema_id bigint, primary key (member_id) ); 2022-04-17 21:04:46.760 DEBUG 39593 --- [ main] org.hibernate.SQL : create table team ( team_id bigint not null, name varchar(255), primary key (team_id) ) 2022-04-17 21:04:46.761 INFO 39593 --- [ main] p6spy : #1650197086761 | took 0ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/datajpa create table team ( team_id bigint not null, name varchar(255), primary key (team_id) ) create table team ( team_id bigint not null, name varchar(255), primary key (team_id) ); 2022-04-17 21:04:46.761 DEBUG 39593 --- [ main] org.hibernate.SQL : alter table member add constraint FK8g17q6hc0aeo27fqj0vlxsa38 foreign key (tema_id) references team 2022-04-17 21:04:46.764 INFO 39593 --- [ main] p6spy : #1650197086764 | took 2ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/datajpa alter table member add constraint FK8g17q6hc0aeo27fqj0vlxsa38 foreign key (tema_id) references team alter table member add constraint FK8g17q6hc0aeo27fqj0vlxsa38 foreign key (tema_id) references team; 2022-04-17 21:04:46.767 INFO 39593 --- [ main] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] 2022-04-17 21:04:46.910 INFO 39593 --- [ main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default' 2022-04-17 21:04:47.555 WARN 39593 --- [ main] JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning 2022-04-17 21:04:48.952 INFO 39593 --- [ main] s.d.repository.MemberJpaRepositoryTest : Started MemberJpaRepositoryTest in 6.73 seconds (JVM running for 8.42) 2022-04-17 21:04:49.001 INFO 39593 --- [ main] o.s.t.c.transaction.TransactionContext : Began transaction (1) for test context [DefaultTestContext@4b9df8a testClass = MemberJpaRepositoryTest, testInstance = study.datajpa.repository.MemberJpaRepositoryTest@42db3ff, testMethod = bulkUpdate@MemberJpaRepositoryTest, testException = [null], mergedContextConfiguration = [WebMergedContextConfiguration@5e8ac0e1 testClass = MemberJpaRepositoryTest, locations = '{}', classes = '{class study.datajpa.DataJpaApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.autoconfigure.actuate.metrics.MetricsExportContextCustomizerFactory$DisableMetricExportContextCustomizer@7d61eb55, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@163370c2, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@13d9cbf5, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@c667f46, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@3b5fad2d, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@4e41089d], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]], attributes = map['org.springframework.test.context.web.ServletTestExecutionListener.activateListener' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.populatedRequestContextHolder' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.resetRequestContextHolder' -> true, 'org.springframework.test.context.event.ApplicationEventsTestExecutionListener.recordApplicationEvents' -> false]]; transaction manager [org.springframework.orm.jpa.JpaTransactionManager@2f4fc18]; rollback [false] 2022-04-17 21:04:49.176 DEBUG 39593 --- [ main] org.hibernate.SQL : call next value for hibernate_sequence 2022-04-17 21:04:49.185 INFO 39593 --- [ main] p6spy : #1650197089185 | took 4ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa call next value for hibernate_sequence call next value for hibernate_sequence; 2022-04-17 21:04:49.222 DEBUG 39593 --- [ main] org.hibernate.SQL : call next value for hibernate_sequence 2022-04-17 21:04:49.223 INFO 39593 --- [ main] p6spy : #1650197089223 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa call next value for hibernate_sequence call next value for hibernate_sequence; 2022-04-17 21:04:49.223 DEBUG 39593 --- [ main] org.hibernate.SQL : call next value for hibernate_sequence 2022-04-17 21:04:49.224 INFO 39593 --- [ main] p6spy : #1650197089224 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa call next value for hibernate_sequence call next value for hibernate_sequence; 2022-04-17 21:04:49.224 DEBUG 39593 --- [ main] org.hibernate.SQL : call next value for hibernate_sequence 2022-04-17 21:04:49.225 INFO 39593 --- [ main] p6spy : #1650197089225 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa call next value for hibernate_sequence call next value for hibernate_sequence; 2022-04-17 21:04:49.225 DEBUG 39593 --- [ main] org.hibernate.SQL : call next value for hibernate_sequence 2022-04-17 21:04:49.226 INFO 39593 --- [ main] p6spy : #1650197089226 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa call next value for hibernate_sequence call next value for hibernate_sequence; 2022-04-17 21:04:49.239 DEBUG 39593 --- [ main] org.hibernate.SQL : insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) 2022-04-17 21:04:49.243 INFO 39593 --- [ main] p6spy : #1650197089243 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) insert into member (age, tema_id, username, member_id) values (10, NULL, 'member1', 1); 2022-04-17 21:04:49.244 DEBUG 39593 --- [ main] org.hibernate.SQL : insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) 2022-04-17 21:04:49.245 INFO 39593 --- [ main] p6spy : #1650197089245 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) insert into member (age, tema_id, username, member_id) values (19, NULL, 'member1', 2); 2022-04-17 21:04:49.245 DEBUG 39593 --- [ main] org.hibernate.SQL : insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) 2022-04-17 21:04:49.246 INFO 39593 --- [ main] p6spy : #1650197089246 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) insert into member (age, tema_id, username, member_id) values (20, NULL, 'member1', 3); 2022-04-17 21:04:49.246 DEBUG 39593 --- [ main] org.hibernate.SQL : insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) 2022-04-17 21:04:49.247 INFO 39593 --- [ main] p6spy : #1650197089247 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) insert into member (age, tema_id, username, member_id) values (21, NULL, 'member1', 4); 2022-04-17 21:04:49.247 DEBUG 39593 --- [ main] org.hibernate.SQL : insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) 2022-04-17 21:04:49.247 INFO 39593 --- [ main] p6spy : #1650197089247 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa insert into member (age, tema_id, username, member_id) values (?, ?, ?, ?) insert into member (age, tema_id, username, member_id) values (40, NULL, 'member1', 5); 2022-04-17 21:04:49.251 DEBUG 39593 --- [ main] org.hibernate.SQL : update member set age=age+1 where age>=? 2022-04-17 21:04:49.252 INFO 39593 --- [ main] p6spy : #1650197089252 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/datajpa update member set age=age+1 where age>=? update member set age=age+1 where age>=20; 2022-04-17 21:04:49.312 INFO 39593 --- [ main] p6spy : #1650197089312 | took 0ms | commit | connection 3| url jdbc:h2:tcp://localhost/~/datajpa ; 2022-04-17 21:04:49.313 INFO 39593 --- [ main] o.s.t.c.transaction.TransactionContext : Committed transaction for test: [DefaultTestContext@4b9df8a testClass = MemberJpaRepositoryTest, testInstance = study.datajpa.repository.MemberJpaRepositoryTest@42db3ff, testMethod = bulkUpdate@MemberJpaRepositoryTest, testException = [null], mergedContextConfiguration = [WebMergedContextConfiguration@5e8ac0e1 testClass = MemberJpaRepositoryTest, locations = '{}', classes = '{class study.datajpa.DataJpaApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.autoconfigure.actuate.metrics.MetricsExportContextCustomizerFactory$DisableMetricExportContextCustomizer@7d61eb55, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@163370c2, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@13d9cbf5, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@c667f46, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@3b5fad2d, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@4e41089d], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]], attributes = map['org.springframework.test.context.web.ServletTestExecutionListener.activateListener' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.populatedRequestContextHolder' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.resetRequestContextHolder' -> true, 'org.springframework.test.context.event.ApplicationEventsTestExecutionListener.recordApplicationEvents' -> false]] 2022-04-17 21:04:49.330 INFO 39593 --- [ionShutdownHook] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default' 2022-04-17 21:04:49.335 INFO 39593 --- [ionShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated... 2022-04-17 21:04:49.351 INFO 39593 --- [ionShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed. Process finished with exit code 0
-
미해결더 자바, 코드를 조작하는 다양한 방법
JVM 메모리 구조에 대해 공부하다가 질문 드립니다.
안녕하세요! JVM의 메모리 영역 중 메소드 영역에 관해 질문 드립니다. .class 파일들이 JVM으로 로드 되면 메소드 영역에 Class에 대한 정보들을 담는 Class type객체나 static 변수들이 그 쪽에 할당된다고 하셨는데, 이게 어플리케이션이 컨테이너에서 구동될 때 이루어지는 작업이니까 혹시 그러면 어플리케이션이 완전이 시작한 이후에 application scope 내장 객체에서 getAttribute를 통해서도 접근이 가능 할까요..?? 또한 다른 변수들은 아닌 static 변수들만 method 영역에 생성되는 건지도 궁금합니다... static 변수, static 메소드, static 클래스 등등 static과 관련된 모든 object들이 저 영역에 생성이 되는 것인가요..? 강의를 통해 궁금한 점이 생겨 질문 드립니다! 감사합니다!
-
미해결초보를 위한 도커 안내서
wordpress에서 db 연결 문제
docker compose 기본 강의 질문있습니다. 첨부해주신 강의 자료중 docker-compose 그대로 첨부해서 올리니 wordpress에서 db 연결을 못합니다. 로그를 확인해보니 이렇게 권한 문제가 나오는데 .. 강의와 다르게 추가적으로 권한 작업을 해야하는건가요 ??