inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

jwt 토큰방식에서의 세션 미사용 질문

미해결

스프링 시큐리티

강의에서 jwt방식을 예로 드셨던 세션정책Stateless에서 세션을 사용하지 않는다고 말씀하셨습니다. 궁금한 점은 jwt토큰방식을 사용하더라도 세션은 사용하는 것이 아닐까라는 의문입니다. 이유는 jwt방식으로 인증에 성공하면 Authentication객체를 securityContext에 저장하고 세션에 캐싱을 하며 controller에서 principle이나 @preauthorize 등과같은 기능을 사용할 수 있기 때문입니다.

  • Spring Security
  • java
  • spring-boot
창신동 장첸 댓글 1 좋아요 0 조회수 1220

assertThrows 오류

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 59줄에 assertThrows에 오류가 나는거 일까요?ㅜㅜ

  • MVC
  • spring
  • spring-boot
  • java
댓글 1 좋아요 0 조회수 399

테스트 코드 작성시 JPA사용안하는 이유가 따로 있나요?

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

첫번째 질문- 연관관계 주인쪽만 sett해주면, 1. 커밋전 주인아닌쪽의 데이터가 의도한대로 안나온다. 2. JPA없이 순수자바객체코드에서 주인아닌쪽 sett이 자동화되지 않는다. 요 두가지 설명해주셨는데, 2번에서 테스트코드 작성할때 JPA없이 순수자바코드만한다는데 이유가 있을까요? 서버는 JPA로 돌아갈텐데 굳이 테스트를 그렇게하는 이유가 궁금합니다 -------------------------------------- 두번째 질문- 주문상품과 상품의 관계에서 상품이 주문상품을 조회할 일은 없더라도 단방향이아닌 양방향으로 설계해도 성능엔 차이가 없을까요? (JPA는 프록시지원해주니 없을거같아서요..) 뭔가 단방향인데 양방향으로 짜면 오류날일이 없을거같고 양방향필요한데 단방향으로 짜면 오류나니까 그냥 양방향으로 통일해서 머리 덜굴리고 짜도 될까 합니다

  • JPA
  • java
댓글 1 좋아요 2 조회수 714

단축키문의

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

안녕하세요 강사님! 동영상 43초에 memberService.findMembers()만 쳤을때, members라는 List<Member>타입의 객체 자동생성 단축키가 mac과 윈도우기준 각각 어떻게 되는지 알 수 있을가요? 이전 강의에 나온거 같은데 잘 안찾아져서 문의드려봅니다. 구글링해도 키워드가 안맞아서 그런지 잘안나오네요 ㅠㅠ

  • 단축키
  • spring
  • java
  • spring-boot
  • MVC
군밤고굼 댓글 2 좋아요 0 조회수 352

상품등록후 에러

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

상품 등록 후 DB에서 조회는 됩니다만 Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback. Sun Jun 05 12:22:37 KST 2022 There was an unexpected error (type=Not Found, status=404). No message available 이 페이지가 뜨네요. 관련 코드 및 콘솔 창 같이 올리겠습니다. package jpabook.jpashop.controller ; import lombok. Getter ; import lombok. Setter ; @Getter @Setter public class BookForm { private Long id ; private String name ; private int price ; private int stockQuantity ; private String author ; private String isbn ; } package jpabook.jpashop.controller ; import jpabook.jpashop.domain.item.Book ; import jpabook.jpashop.service.ItemService ; import lombok. RequiredArgsConstructor ; import org.springframework.stereotype. Controller ; import org.springframework.ui.Model ; import org.springframework.web.bind.annotation. GetMapping ; import org.springframework.web.bind.annotation. PostMapping ; @Controller @RequiredArgsConstructor public class ItemController { private final ItemService itemService ; @GetMapping ( "/items/new" ) public String createForm (Model model) { model.addAttribute( "form" , new BookForm()) ; return "items/createItemForm" ; } @PostMapping ( "/items/new" ) public String create (BookForm form) { Book book = new Book() ; book.setName(form.getName()) ; book.setPrice(form.getPrice()) ; book.setStockQuantity(form.getStockQuantity()) ; book.setAuthor(form.getAuthor()) ; book.setIsbn(form.getIsbn()) ; itemService .saveItem(book) ; return "redirect:/items" ; } } <!DOCTYPE HTML > <html xmlns: th ="http://www.thymeleaf.org" > <head th :replace =" fragments/header :: header " /> <body> <div class ="container" > <div th :replace =" fragments/bodyHeader :: bodyHeader " /> <form th :action =" @{/items/new} " th :object =" ${form} " method ="post" > <div class ="form-group" > <label th :for =" name " > 상품명 </label> <input type ="text" th :field =" *{name} " class ="form-control" placeholder =" 이름을 입력하세요 " > </div> <div class ="form-group" > <label th :for =" price " > 가격 </label> <input type ="number" th :field =" *{price} " class ="form-control" placeholder =" 가격을 입력하세요 " > </div> <div class ="form-group" > <label th :for =" stockQuantity " > 수량 </label> <input type ="number" th :field =" *{stockQuantity} " class ="form-control" placeholder =" 수량을 입력하세요 " > </div> <div class ="form-group" > <label th :for =" author " > 저자 </label> <input type ="text" th :field =" *{author} " class ="form-control" placeholder =" 저자를 입력하세요 " > </div> <div class ="form-group" > <label th :for =" isbn " > ISBN </label> <input type ="text" th :field =" *{isbn} " class ="form-control" placeholder ="ISBN 을 입력하세요 " > </div> <button type ="submit" class ="btn btn-primary" > Submit </button> </form> <br/> <div th :replace =" fragments/footer :: footer " /> </div> <!-- /container --> </body> </html> "C:\Program Files\Java\jdk-11.0.14\bin\java.exe" -XX:TieredStopAtLevel=1 -noverify -Dspring.output.ansi.enabled=always -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2022.1\lib\idea_rt.jar=62986:C:\Program Files\JetBrains\IntelliJ IDEA 2022.1\bin" -Dfile.encoding=UTF-8 -classpath C:\java\study\jpashop\out\production\classes;C:\java\study\jpashop\out\production\resources;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.projectlombok\lombok\1.18.24\13a394eed5c4f9efb2a6d956e2086f1d81e857d9\lombok-1.18.24.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.boot\spring-boot-starter-data-jpa\2.7.0\773d8c4fbe92493655f4c7db3a2d95388b8f6eb8\spring-boot-starter-data-jpa-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.boot\spring-boot-starter-thymeleaf\2.7.0\e706ed79c9b8066fd0894d44b23d9a1b00417ac7\spring-boot-starter-thymeleaf-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.boot\spring-boot-starter-validation\2.7.0\1a7d12c3b10ec1c30ca3a6eb38d550f4a3876b31\spring-boot-starter-validation-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.boot\spring-boot-starter-web\2.7.0\7bf2381d030023970b5375c1090545e480467aa1\spring-boot-starter-web-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.boot\spring-boot-devtools\2.7.0\2a45b04877bbfe9750e4d29f6a73f125e146513d\spring-boot-devtools-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\com.github.gavlyukovskiy\p6spy-spring-boot-starter\1.5.6\495579c7fb01b005f19ec4d5188245c66de0937b\p6spy-spring-boot-starter-1.5.6.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.boot\spring-boot-starter-aop\2.7.0\49f204ec9672800932f8f7b344221251b1422da6\spring-boot-starter-aop-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.boot\spring-boot-starter-jdbc\2.7.0\dd69f21efd63a2a16d631210b5656dc30348451b\spring-boot-starter-jdbc-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\jakarta.transaction\jakarta.transaction-api\1.3.3\c4179d48720a1e87202115fbed6089bdc4195405\jakarta.transaction-api-1.3.3.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\jakarta.persistence\jakarta.persistence-api\2.2.3\8f6ea5daedc614f07a3654a455660145286f024e\jakarta.persistence-api-2.2.3.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.hibernate\hibernate-core\5.6.9.Final\8ec2c7b13de2fbcb19feddfb3a30932bb6a8228a\hibernate-core-5.6.9.Final.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.data\spring-data-jpa\2.7.0\f82986cdf2beda49b0bbb28a880ca644a1eb6c42\spring-data-jpa-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework\spring-aspects\5.3.20\161a2ccb1d68aed17922981909081bd6d1e46628\spring-aspects-5.3.20.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.boot\spring-boot-starter\2.7.0\64fd3c21486dd20df9a62566599337dae2eb62cc\spring-boot-starter-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.thymeleaf\thymeleaf-spring5\3.0.15.RELEASE\7170e1bcd1588d38c139f7048ebcc262676441c3\thymeleaf-spring5-3.0.15.RELEASE.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.thymeleaf.extras\thymeleaf-extras-java8time\3.0.4.RELEASE\36e7175ddce36c486fff4578b5af7bb32f54f5df\thymeleaf-extras-java8time-3.0.4.RELEASE.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.apache.tomcat.embed\tomcat-embed-el\9.0.63\b595f0bdae0392c8b3c8592fea10023956a3f619\tomcat-embed-el-9.0.63.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.hibernate.validator\hibernate-validator\6.2.3.Final\ea4545d1a97b27bada5f2e3f74c6172e641ecf39\hibernate-validator-6.2.3.Final.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.boot\spring-boot-starter-json\2.7.0\f7120f4a6fd5dd2ca2128061e420e45ae2294943\spring-boot-starter-json-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.boot\spring-boot-starter-tomcat\2.7.0\b8e5cd8cd4bf3935a68468fe32fe2e7550f96b8a\spring-boot-starter-tomcat-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework\spring-webmvc\5.3.20\8ac1b72a1f5c41fdc2cb3340cd94f795af260301\spring-webmvc-5.3.20.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework\spring-web\5.3.20\3c2fe9363760d62d5b7c9f087bb4255e3377a0b2\spring-web-5.3.20.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.boot\spring-boot-autoconfigure\2.7.0\483f9a66d0e8326583c5054038d0aa0a95045dc3\spring-boot-autoconfigure-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.boot\spring-boot\2.7.0\df8bd106d6c6a6494b787b71d23cef6d2dc73703\spring-boot-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\com.github.gavlyukovskiy\datasource-decorator-spring-boot-autoconfigure\1.5.6\cac386fe9df77870133594f054ee32e5d08ab93d\datasource-decorator-spring-boot-autoconfigure-1.5.6.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\p6spy\p6spy\3.8.2\52299d9a1ec2bc2fb8b1a21cc12dfc1a7c033caf\p6spy-3.8.2.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework\spring-aop\5.3.20\c82f17997ab18ecafa8d08ce34a7c7aa4a04ef9e\spring-aop-5.3.20.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.aspectj\aspectjweaver\1.9.7\158f5c255cd3e4408e795b79f7c3fbae9b53b7ca\aspectjweaver-1.9.7.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\com.zaxxer\HikariCP\4.0.3\107cbdf0db6780a065f895ae9d8fbf3bb0e1c21f\HikariCP-4.0.3.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework\spring-jdbc\5.3.20\140414df1080754fcefe12921543c599e51dfbb2\spring-jdbc-5.3.20.jar;C:\Users\nnubb\.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;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.jboss.logging\jboss-logging\3.4.3.Final\c4bd7e12a745c0e7f6cf98c45cdcdf482fd827ea\jboss-logging-3.4.3.Final.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\net.bytebuddy\byte-buddy\1.12.10\f34127d93639fad8c6fb84b3ca30292697d6c55d\byte-buddy-1.12.10.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\antlr\antlr\2.7.7\83cd2cd674a217ade95a4bb83a8a14f351f48bd0\antlr-2.7.7.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.jboss\jandex\2.4.2.Final\1e1c385990b258ff1a24c801e84aebbacf70eb39\jandex-2.4.2.Final.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\com.fasterxml\classmate\1.5.1\3fe0bed568c62df5e89f4f174c101eab25345b6c\classmate-1.5.1.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.glassfish.jaxb\jaxb-runtime\2.3.6\1e6cd0e5d9f9919c8c8824fb4d310b09a978a60e\jaxb-runtime-2.3.6.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework\spring-context\5.3.20\517a42165221ea944c8b794154c10b69c0128281\spring-context-5.3.20.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework\spring-orm\5.3.20\4eaf36c114a3aa2d1603834cfb197b5742ccde5b\spring-orm-5.3.20.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.data\spring-data-commons\2.7.0\6dc643cf1512fdc5c2d63f55c83080b60b629d10\spring-data-commons-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework\spring-tx\5.3.20\9a4ec2249dc3523ac70e0710a64288c14fc3ff78\spring-tx-5.3.20.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework\spring-beans\5.3.20\ab88bd9e3a8307f5c0516c15d295c88ec318659\spring-beans-5.3.20.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework\spring-core\5.3.20\4b88aa3c401ede3d6c8ac78ea0c646cf326ec24b\spring-core-5.3.20.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-api\1.7.36\6c62681a2f655b49963a5983b8b0950a6120ae14\slf4j-api-1.7.36.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework.boot\spring-boot-starter-logging\2.7.0\5ff2a55d345ad824f39d55eaa32203865a92b30f\spring-boot-starter-logging-2.7.0.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\jakarta.annotation\jakarta.annotation-api\1.3.5\59eb84ee0d616332ff44aba065f3888cf002cd2d\jakarta.annotation-api-1.3.5.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.yaml\snakeyaml\1.30\8fde7fe2586328ac3c68db92045e1c8759125000\snakeyaml-1.30.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.thymeleaf\thymeleaf\3.0.15.RELEASE\13e3296a03d8a597b734d832ed8656139bf9cdd8\thymeleaf-3.0.15.RELEASE.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\jakarta.validation\jakarta.validation-api\2.0.2\5eacc6522521f7eacb081f95cee1e231648461e7\jakarta.validation-api-2.0.2.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\com.fasterxml.jackson.datatype\jackson-datatype-jsr310\2.13.3\ad2f4c61aeb9e2a8bb5e4a3ed782cfddec52d972\jackson-datatype-jsr310-2.13.3.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\com.fasterxml.jackson.module\jackson-module-parameter-names\2.13.3\f71c4ecc1a403787c963f68bc619b78ce1d2687b\jackson-module-parameter-names-2.13.3.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\com.fasterxml.jackson.datatype\jackson-datatype-jdk8\2.13.3\d4884595d5aab5babdb00ddbd693b8fd36b5ec3c\jackson-datatype-jdk8-2.13.3.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\com.fasterxml.jackson.core\jackson-databind\2.13.3\56deb9ea2c93a7a556b3afbedd616d342963464e\jackson-databind-2.13.3.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.apache.tomcat.embed\tomcat-embed-websocket\9.0.63\c0bedf7bad4c0552e1805b2bc802604171c64146\tomcat-embed-websocket-9.0.63.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.apache.tomcat.embed\tomcat-embed-core\9.0.63\f427a282d02439570f1e2af2c00376d4188c5291\tomcat-embed-core-9.0.63.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework\spring-expression\5.3.20\20e179f0dfabf0a46428f22c2150c9c4850fd15d\spring-expression-5.3.20.jar;C:\Users\nnubb\.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;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.glassfish.jaxb\txw2\2.3.6\45db7b69a8f1ec2c21eb7d4fc0ee729f53c1addc\txw2-2.3.6.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\com.sun.istack\istack-commons-runtime\3.0.12\cbbe1a62b0cc6c85972e99d52aaee350153dc530\istack-commons-runtime-3.0.12.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.springframework\spring-jcl\5.3.20\35119231d09863699567ce579c21512ddcbc5407\spring-jcl-5.3.20.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\ch.qos.logback\logback-classic\1.2.11\4741689214e9d1e8408b206506cbe76d1c6a7d60\logback-classic-1.2.11.jar;C:\Users\nnubb\.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;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.slf4j\jul-to-slf4j\1.7.36\ed46d81cef9c412a88caef405b58f93a678ff2ca\jul-to-slf4j-1.7.36.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.attoparser\attoparser\2.0.5.RELEASE\a93ad36df9560de3a5312c1d14f69d938099fa64\attoparser-2.0.5.RELEASE.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.unbescape\unbescape\1.1.6.RELEASE\7b90360afb2b860e09e8347112800d12c12b2a13\unbescape-1.1.6.RELEASE.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\com.fasterxml.jackson.core\jackson-annotations\2.13.3\7198b3aac15285a49e218e08441c5f70af00fc51\jackson-annotations-2.13.3.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\com.fasterxml.jackson.core\jackson-core\2.13.3\a27014716e4421684416e5fa83d896ddb87002da\jackson-core-2.13.3.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\ch.qos.logback\logback-core\1.2.11\a01230df5ca5c34540cdaa3ad5efb012f1f1f792\logback-core-1.2.11.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-api\2.17.2\f42d6afa111b4dec5d2aea0fe2197240749a4ea6\log4j-api-2.17.2.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\com.h2database\h2\2.1.212\f3187885395bd0c0e0e83f96641bb630f368ee2f\h2-2.1.212.jar;C:\Users\nnubb\.gradle\caches\modules-2\files-2.1\com.sun.activation\jakarta.activation\1.2.2\74548703f9851017ce2f556066659438019e7eb5\jakarta.activation-1.2.2.jar jpabook.jpashop.JpashopApplication data = hello 12:22:06.080 [Thread-0] DEBUG org.springframework.boot.devtools.restart.classloader.RestartClassLoader - Created RestartClassLoader org.springframework.boot.devtools.restart.classloader.RestartClassLoader@3b80d04b data = hello . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v2.7.0) 2022-06-05 12:22:06.338 INFO 12448 --- [ restartedMain] jpabook.jpashop.JpashopApplication : Starting JpashopApplication using Java 11.0.14 on DESKTOP-9G5TSL6 with PID 12448 (C:\java\study\jpashop\out\production\classes started by butahana in C:\java\study\jpashop) 2022-06-05 12:22:06.338 INFO 12448 --- [ restartedMain] jpabook.jpashop.JpashopApplication : No active profile set, falling back to 1 default profile: "default" 2022-06-05 12:22:06.373 INFO 12448 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable 2022-06-05 12:22:06.373 INFO 12448 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG' 2022-06-05 12:22:06.728 INFO 12448 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode. 2022-06-05 12:22:06.736 INFO 12448 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 4 ms. Found 0 JPA repository interfaces. 2022-06-05 12:22:07.045 INFO 12448 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http) 2022-06-05 12:22:07.051 INFO 12448 --- [ restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat] 2022-06-05 12:22:07.051 INFO 12448 --- [ restartedMain] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.63] 2022-06-05 12:22:07.096 INFO 12448 --- [ restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext 2022-06-05 12:22:07.097 INFO 12448 --- [ restartedMain] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 723 ms 2022-06-05 12:22:07.150 INFO 12448 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... 2022-06-05 12:22:07.183 INFO 12448 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed. 2022-06-05 12:22:07.190 INFO 12448 --- [ restartedMain] o.s.b.a.h2.H2ConsoleAutoConfiguration : H2 console available at '/h2-console'. Database available at 'jdbc:h2:tcp://localhost/~/jpashop' 2022-06-05 12:22:07.250 INFO 12448 --- [ restartedMain] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default] 2022-06-05 12:22:07.273 INFO 12448 --- [ restartedMain] org.hibernate.Version : HHH000412: Hibernate ORM core version 5.6.9.Final 2022-06-05 12:22:07.346 INFO 12448 --- [ restartedMain] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {5.1.2.Final} 2022-06-05 12:22:07.358 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration boolean -> org.hibernate.type.BooleanType@6dd9cd6c 2022-06-05 12:22:07.358 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration boolean -> org.hibernate.type.BooleanType@6dd9cd6c 2022-06-05 12:22:07.358 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.lang.Boolean -> org.hibernate.type.BooleanType@6dd9cd6c 2022-06-05 12:22:07.359 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration numeric_boolean -> org.hibernate.type.NumericBooleanType@371f330a 2022-06-05 12:22:07.359 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration true_false -> org.hibernate.type.TrueFalseType@6eaa4e5 2022-06-05 12:22:07.359 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration yes_no -> org.hibernate.type.YesNoType@7702bc84 2022-06-05 12:22:07.360 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration byte -> org.hibernate.type.ByteType@759f2816 2022-06-05 12:22:07.360 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration byte -> org.hibernate.type.ByteType@759f2816 2022-06-05 12:22:07.360 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.lang.Byte -> org.hibernate.type.ByteType@759f2816 2022-06-05 12:22:07.360 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration character -> org.hibernate.type.CharacterType@4affc1a4 2022-06-05 12:22:07.360 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration char -> org.hibernate.type.CharacterType@4affc1a4 2022-06-05 12:22:07.360 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.lang.Character -> org.hibernate.type.CharacterType@4affc1a4 2022-06-05 12:22:07.361 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration short -> org.hibernate.type.ShortType@6ae4343a 2022-06-05 12:22:07.361 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration short -> org.hibernate.type.ShortType@6ae4343a 2022-06-05 12:22:07.361 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.lang.Short -> org.hibernate.type.ShortType@6ae4343a 2022-06-05 12:22:07.361 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration integer -> org.hibernate.type.IntegerType@168ad465 2022-06-05 12:22:07.361 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration int -> org.hibernate.type.IntegerType@168ad465 2022-06-05 12:22:07.361 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.lang.Integer -> org.hibernate.type.IntegerType@168ad465 2022-06-05 12:22:07.362 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration long -> org.hibernate.type.LongType@5e26992d 2022-06-05 12:22:07.362 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration long -> org.hibernate.type.LongType@5e26992d 2022-06-05 12:22:07.362 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.lang.Long -> org.hibernate.type.LongType@5e26992d 2022-06-05 12:22:07.362 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration float -> org.hibernate.type.FloatType@65381db6 2022-06-05 12:22:07.362 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration float -> org.hibernate.type.FloatType@65381db6 2022-06-05 12:22:07.362 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.lang.Float -> org.hibernate.type.FloatType@65381db6 2022-06-05 12:22:07.363 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration double -> org.hibernate.type.DoubleType@1c86120e 2022-06-05 12:22:07.363 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration double -> org.hibernate.type.DoubleType@1c86120e 2022-06-05 12:22:07.363 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.lang.Double -> org.hibernate.type.DoubleType@1c86120e 2022-06-05 12:22:07.363 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration big_decimal -> org.hibernate.type.BigDecimalType@12f937f 2022-06-05 12:22:07.363 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.math.BigDecimal -> org.hibernate.type.BigDecimalType@12f937f 2022-06-05 12:22:07.363 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration big_integer -> org.hibernate.type.BigIntegerType@62708239 2022-06-05 12:22:07.363 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.math.BigInteger -> org.hibernate.type.BigIntegerType@62708239 2022-06-05 12:22:07.364 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration string -> org.hibernate.type.StringType@3c459fb3 2022-06-05 12:22:07.364 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.lang.String -> org.hibernate.type.StringType@3c459fb3 2022-06-05 12:22:07.364 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration nstring -> org.hibernate.type.StringNVarcharType@25a92983 2022-06-05 12:22:07.364 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration ncharacter -> org.hibernate.type.CharacterNCharType@6dad903b 2022-06-05 12:22:07.364 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration url -> org.hibernate.type.UrlType@2fdc5c1e 2022-06-05 12:22:07.364 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.net.URL -> org.hibernate.type.UrlType@2fdc5c1e 2022-06-05 12:22:07.365 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration Duration -> org.hibernate.type.DurationType@8bfbab9 2022-06-05 12:22:07.365 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.time.Duration -> org.hibernate.type.DurationType@8bfbab9 2022-06-05 12:22:07.365 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration Instant -> org.hibernate.type.InstantType@562717a 2022-06-05 12:22:07.365 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.time.Instant -> org.hibernate.type.InstantType@562717a 2022-06-05 12:22:07.366 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration LocalDateTime -> org.hibernate.type.LocalDateTimeType@7a0e8ad2 2022-06-05 12:22:07.366 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.time.LocalDateTime -> org.hibernate.type.LocalDateTimeType@7a0e8ad2 2022-06-05 12:22:07.366 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration LocalDate -> org.hibernate.type.LocalDateType@cf46640 2022-06-05 12:22:07.366 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.time.LocalDate -> org.hibernate.type.LocalDateType@cf46640 2022-06-05 12:22:07.367 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration LocalTime -> org.hibernate.type.LocalTimeType@69a9515a 2022-06-05 12:22:07.367 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.time.LocalTime -> org.hibernate.type.LocalTimeType@69a9515a 2022-06-05 12:22:07.367 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration OffsetDateTime -> org.hibernate.type.OffsetDateTimeType@2feed6d 2022-06-05 12:22:07.367 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.time.OffsetDateTime -> org.hibernate.type.OffsetDateTimeType@2feed6d 2022-06-05 12:22:07.367 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration OffsetTime -> org.hibernate.type.OffsetTimeType@277d9e59 2022-06-05 12:22:07.367 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.time.OffsetTime -> org.hibernate.type.OffsetTimeType@277d9e59 2022-06-05 12:22:07.368 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration ZonedDateTime -> org.hibernate.type.ZonedDateTimeType@179a1eb7 2022-06-05 12:22:07.368 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.time.ZonedDateTime -> org.hibernate.type.ZonedDateTimeType@179a1eb7 2022-06-05 12:22:07.369 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration date -> org.hibernate.type.DateType@20e6df3d 2022-06-05 12:22:07.369 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.sql.Date -> org.hibernate.type.DateType@20e6df3d 2022-06-05 12:22:07.369 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration time -> org.hibernate.type.TimeType@5af5e24d 2022-06-05 12:22:07.369 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.sql.Time -> org.hibernate.type.TimeType@5af5e24d 2022-06-05 12:22:07.370 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration timestamp -> org.hibernate.type.TimestampType@7f203c51 2022-06-05 12:22:07.370 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.sql.Timestamp -> org.hibernate.type.TimestampType@7f203c51 2022-06-05 12:22:07.370 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.util.Date -> org.hibernate.type.TimestampType@7f203c51 2022-06-05 12:22:07.370 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration dbtimestamp -> org.hibernate.type.DbTimestampType@41a0e62e 2022-06-05 12:22:07.371 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration calendar -> org.hibernate.type.CalendarType@38bb4039 2022-06-05 12:22:07.371 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.util.Calendar -> org.hibernate.type.CalendarType@38bb4039 2022-06-05 12:22:07.371 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.util.GregorianCalendar -> org.hibernate.type.CalendarType@38bb4039 2022-06-05 12:22:07.371 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration calendar_date -> org.hibernate.type.CalendarDateType@26c38766 2022-06-05 12:22:07.372 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration calendar_time -> org.hibernate.type.CalendarTimeType@79eef376 2022-06-05 12:22:07.372 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration locale -> org.hibernate.type.LocaleType@55fe3864 2022-06-05 12:22:07.372 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.util.Locale -> org.hibernate.type.LocaleType@55fe3864 2022-06-05 12:22:07.372 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration currency -> org.hibernate.type.CurrencyType@4b13aaf3 2022-06-05 12:22:07.372 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.util.Currency -> org.hibernate.type.CurrencyType@4b13aaf3 2022-06-05 12:22:07.372 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration timezone -> org.hibernate.type.TimeZoneType@21bbef8d 2022-06-05 12:22:07.373 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.util.TimeZone -> org.hibernate.type.TimeZoneType@21bbef8d 2022-06-05 12:22:07.373 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration class -> org.hibernate.type.ClassType@1095405d 2022-06-05 12:22:07.373 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.lang.Class -> org.hibernate.type.ClassType@1095405d 2022-06-05 12:22:07.373 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration uuid-binary -> org.hibernate.type.UUIDBinaryType@79b3be9c 2022-06-05 12:22:07.373 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.util.UUID -> org.hibernate.type.UUIDBinaryType@79b3be9c 2022-06-05 12:22:07.373 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration uuid-char -> org.hibernate.type.UUIDCharType@6d98dae5 2022-06-05 12:22:07.374 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration binary -> org.hibernate.type.BinaryType@64f13ab4 2022-06-05 12:22:07.374 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration byte[] -> org.hibernate.type.BinaryType@64f13ab4 2022-06-05 12:22:07.374 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration [B -> org.hibernate.type.BinaryType@64f13ab4 2022-06-05 12:22:07.374 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration wrapper-binary -> org.hibernate.type.WrapperBinaryType@3c377e38 2022-06-05 12:22:07.374 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration Byte[] -> org.hibernate.type.WrapperBinaryType@3c377e38 2022-06-05 12:22:07.374 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration [Ljava.lang.Byte; -> org.hibernate.type.WrapperBinaryType@3c377e38 2022-06-05 12:22:07.375 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration row_version -> org.hibernate.type.RowVersionType@1f31e6a8 2022-06-05 12:22:07.375 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration image -> org.hibernate.type.ImageType@69927b68 2022-06-05 12:22:07.375 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration characters -> org.hibernate.type.CharArrayType@47bf4950 2022-06-05 12:22:07.375 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration char[] -> org.hibernate.type.CharArrayType@47bf4950 2022-06-05 12:22:07.375 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration [C -> org.hibernate.type.CharArrayType@47bf4950 2022-06-05 12:22:07.377 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration wrapper-characters -> org.hibernate.type.CharacterArrayType@763f5ac 2022-06-05 12:22:07.377 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration [Ljava.lang.Character; -> org.hibernate.type.CharacterArrayType@763f5ac 2022-06-05 12:22:07.377 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration Character[] -> org.hibernate.type.CharacterArrayType@763f5ac 2022-06-05 12:22:07.377 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration text -> org.hibernate.type.TextType@3a39b025 2022-06-05 12:22:07.377 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration ntext -> org.hibernate.type.NTextType@1ebe971d 2022-06-05 12:22:07.377 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration blob -> org.hibernate.type.BlobType@11b13e02 2022-06-05 12:22:07.377 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.sql.Blob -> org.hibernate.type.BlobType@11b13e02 2022-06-05 12:22:07.378 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration materialized_blob -> org.hibernate.type.MaterializedBlobType@be9c589 2022-06-05 12:22:07.378 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration clob -> org.hibernate.type.ClobType@2d4eb834 2022-06-05 12:22:07.378 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.sql.Clob -> org.hibernate.type.ClobType@2d4eb834 2022-06-05 12:22:07.379 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration nclob -> org.hibernate.type.NClobType@27f517c3 2022-06-05 12:22:07.379 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.sql.NClob -> org.hibernate.type.NClobType@27f517c3 2022-06-05 12:22:07.379 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration materialized_clob -> org.hibernate.type.MaterializedClobType@3088d376 2022-06-05 12:22:07.379 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration materialized_nclob -> org.hibernate.type.MaterializedNClobType@1d627075 2022-06-05 12:22:07.379 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration serializable -> org.hibernate.type.SerializableType@330b8cbc 2022-06-05 12:22:07.381 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration object -> org.hibernate.type.ObjectType@78d2224 2022-06-05 12:22:07.381 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration java.lang.Object -> org.hibernate.type.ObjectType@78d2224 2022-06-05 12:22:07.381 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration imm_date -> org.hibernate.type.AdaptedImmutableType@27babbb3 2022-06-05 12:22:07.381 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration imm_time -> org.hibernate.type.AdaptedImmutableType@721cc372 2022-06-05 12:22:07.381 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration imm_timestamp -> org.hibernate.type.AdaptedImmutableType@4d7ae36a 2022-06-05 12:22:07.381 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration imm_dbtimestamp -> org.hibernate.type.AdaptedImmutableType@455f8ba5 2022-06-05 12:22:07.381 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration imm_calendar -> org.hibernate.type.AdaptedImmutableType@374ac79e 2022-06-05 12:22:07.381 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration imm_calendar_date -> org.hibernate.type.AdaptedImmutableType@23599556 2022-06-05 12:22:07.381 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration imm_binary -> org.hibernate.type.AdaptedImmutableType@392243e4 2022-06-05 12:22:07.381 DEBUG 12448 --- [ restartedMain] org.hibernate.type.BasicTypeRegistry : Adding type registration imm_serializable -> org.hibernate.type.AdaptedImmutableType@99e5c6 2022-06-05 12:22:07.404 INFO 12448 --- [ restartedMain] org.hibernate.dialect.Dialect : HHH000400: Using dialect: org.hibernate.dialect.H2Dialect 2022-06-05 12:22:07.420 DEBUG 12448 --- [ restartedMain] o.h.type.spi.TypeConfiguration$Scope : Scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration@3a67b7bd] to MetadataBuildingContext [org.hibernate.boot.internal.MetadataBuildingContextRootImpl@377c4cba] 2022-06-05 12:22:07.573 DEBUG 12448 --- [ restartedMain] org.hibernate.type.EnumType : Using NAMED-based conversion for Enum jpabook.jpashop.domain.DeliveryStatus 2022-06-05 12:22:07.574 DEBUG 12448 --- [ restartedMain] org.hibernate.type.EnumType : Using NAMED-based conversion for Enum jpabook.jpashop.domain.OrderStatus 2022-06-05 12:22:07.574 DEBUG 12448 --- [ restartedMain] o.h.type.spi.TypeConfiguration$Scope : Scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration@3a67b7bd] to SessionFactoryImpl [org.hibernate.internal.SessionFactoryImpl@1121f434] 2022-06-05 12:22:07.775 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : drop table if exists category CASCADE 2022-06-05 12:22:07.779 INFO 12448 --- [ restartedMain] p6spy : #1654399327779 | took 1ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/jpashop drop table if exists category CASCADE drop table if exists category CASCADE ; 2022-06-05 12:22:07.779 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : drop table if exists category_item CASCADE 2022-06-05 12:22:07.779 INFO 12448 --- [ restartedMain] p6spy : #1654399327779 | took 0ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/jpashop drop table if exists category_item CASCADE drop table if exists category_item CASCADE ; 2022-06-05 12:22:07.779 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : drop table if exists delivery CASCADE 2022-06-05 12:22:07.780 INFO 12448 --- [ restartedMain] p6spy : #1654399327780 | took 0ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/jpashop drop table if exists delivery CASCADE drop table if exists delivery CASCADE ; 2022-06-05 12:22:07.780 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : drop table if exists item CASCADE 2022-06-05 12:22:07.781 INFO 12448 --- [ restartedMain] p6spy : #1654399327781 | took 0ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/jpashop drop table if exists item CASCADE drop table if exists item CASCADE ; 2022-06-05 12:22:07.781 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : drop table if exists member CASCADE 2022-06-05 12:22:07.781 INFO 12448 --- [ restartedMain] p6spy : #1654399327781 | took 0ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/jpashop drop table if exists member CASCADE drop table if exists member CASCADE ; 2022-06-05 12:22:07.781 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : drop table if exists order_item CASCADE 2022-06-05 12:22:07.781 INFO 12448 --- [ restartedMain] p6spy : #1654399327781 | took 0ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/jpashop drop table if exists order_item CASCADE drop table if exists order_item CASCADE ; 2022-06-05 12:22:07.781 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : drop table if exists orders CASCADE 2022-06-05 12:22:07.781 INFO 12448 --- [ restartedMain] p6spy : #1654399327781 | took 0ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/jpashop drop table if exists orders CASCADE drop table if exists orders CASCADE ; 2022-06-05 12:22:07.782 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : drop sequence if exists hibernate_sequence 2022-06-05 12:22:07.782 INFO 12448 --- [ restartedMain] p6spy : #1654399327782 | took 0ms | statement | connection 2| url jdbc:h2:tcp://localhost/~/jpashop drop sequence if exists hibernate_sequence drop sequence if exists hibernate_sequence; 2022-06-05 12:22:07.783 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : create sequence hibernate_sequence start with 1 increment by 1 2022-06-05 12:22:07.784 INFO 12448 --- [ restartedMain] p6spy : #1654399327784 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop create sequence hibernate_sequence start with 1 increment by 1 create sequence hibernate_sequence start with 1 increment by 1; 2022-06-05 12:22:07.784 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : create table category ( category_id bigint not null, name varchar(255), parent_id bigint, primary key (category_id) ) 2022-06-05 12:22:07.785 INFO 12448 --- [ restartedMain] p6spy : #1654399327785 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop create table category ( category_id bigint not null, name varchar(255), parent_id bigint, primary key (category_id) ) create table category ( category_id bigint not null, name varchar(255), parent_id bigint, primary key (category_id) ); 2022-06-05 12:22:07.785 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : create table category_item ( category_id bigint not null, item_id bigint not null ) 2022-06-05 12:22:07.785 INFO 12448 --- [ restartedMain] p6spy : #1654399327785 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop create table category_item ( category_id bigint not null, item_id bigint not null ) create table category_item ( category_id bigint not null, item_id bigint not null ); 2022-06-05 12:22:07.785 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : create table delivery ( delevery_id bigint not null, city varchar(255), street varchar(255), zipcode varchar(255), status varchar(255), primary key (delevery_id) ) 2022-06-05 12:22:07.786 INFO 12448 --- [ restartedMain] p6spy : #1654399327786 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop create table delivery ( delevery_id bigint not null, city varchar(255), street varchar(255), zipcode varchar(255), status varchar(255), primary key (delevery_id) ) create table delivery ( delevery_id bigint not null, city varchar(255), street varchar(255), zipcode varchar(255), status varchar(255), primary key (delevery_id) ); 2022-06-05 12:22:07.786 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : create table item ( dtype varchar(31) not null, item_id bigint not null, name varchar(255), price integer not null, stock_quantity integer not null, artist varchar(255), etc varchar(255), author varchar(255), isbn varchar(255), actor varchar(255), director varchar(255), primary key (item_id) ) 2022-06-05 12:22:07.786 INFO 12448 --- [ restartedMain] p6spy : #1654399327786 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop create table item ( dtype varchar(31) not null, item_id bigint not null, name varchar(255), price integer not null, stock_quantity integer not null, artist varchar(255), etc varchar(255), author varchar(255), isbn varchar(255), actor varchar(255), director varchar(255), primary key (item_id) ) create table item ( dtype varchar(31) not null, item_id bigint not null, name varchar(255), price integer not null, stock_quantity integer not null, artist varchar(255), etc varchar(255), author varchar(255), isbn varchar(255), actor varchar(255), director varchar(255), primary key (item_id) ); 2022-06-05 12:22:07.786 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : create table member ( member_id bigint not null, city varchar(255), street varchar(255), zipcode varchar(255), name varchar(255), primary key (member_id) ) 2022-06-05 12:22:07.786 INFO 12448 --- [ restartedMain] p6spy : #1654399327786 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop create table member ( member_id bigint not null, city varchar(255), street varchar(255), zipcode varchar(255), name varchar(255), primary key (member_id) ) create table member ( member_id bigint not null, city varchar(255), street varchar(255), zipcode varchar(255), name varchar(255), primary key (member_id) ); 2022-06-05 12:22:07.786 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : create table order_item ( order_item_id bigint not null, count integer not null, order_price integer not null, item_id bigint, order_id bigint, primary key (order_item_id) ) 2022-06-05 12:22:07.786 INFO 12448 --- [ restartedMain] p6spy : #1654399327786 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop create table order_item ( order_item_id bigint not null, count integer not null, order_price integer not null, item_id bigint, order_id bigint, primary key (order_item_id) ) create table order_item ( order_item_id bigint not null, count integer not null, order_price integer not null, item_id bigint, order_id bigint, primary key (order_item_id) ); 2022-06-05 12:22:07.786 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : create table orders ( order_id bigint not null, order_date timestamp, status varchar(255), delivery_id bigint, member_id bigint, primary key (order_id) ) 2022-06-05 12:22:07.787 INFO 12448 --- [ restartedMain] p6spy : #1654399327787 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop create table orders ( order_id bigint not null, order_date timestamp, status varchar(255), delivery_id bigint, member_id bigint, primary key (order_id) ) create table orders ( order_id bigint not null, order_date timestamp, status varchar(255), delivery_id bigint, member_id bigint, primary key (order_id) ); 2022-06-05 12:22:07.787 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : alter table category add constraint FK2y94svpmqttx80mshyny85wqr foreign key (parent_id) references category 2022-06-05 12:22:07.788 INFO 12448 --- [ restartedMain] p6spy : #1654399327788 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop alter table category add constraint FK2y94svpmqttx80mshyny85wqr foreign key (parent_id) references category alter table category add constraint FK2y94svpmqttx80mshyny85wqr foreign key (parent_id) references category; 2022-06-05 12:22:07.788 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : alter table category_item add constraint FKu8b4lwqutcdq3363gf6mlujq foreign key (item_id) references item 2022-06-05 12:22:07.788 INFO 12448 --- [ restartedMain] p6spy : #1654399327788 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop alter table category_item add constraint FKu8b4lwqutcdq3363gf6mlujq foreign key (item_id) references item alter table category_item add constraint FKu8b4lwqutcdq3363gf6mlujq foreign key (item_id) references item; 2022-06-05 12:22:07.788 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : alter table category_item add constraint FKcq2n0opf5shyh84ex1fhukcbh foreign key (category_id) references category 2022-06-05 12:22:07.789 INFO 12448 --- [ restartedMain] p6spy : #1654399327789 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop alter table category_item add constraint FKcq2n0opf5shyh84ex1fhukcbh foreign key (category_id) references category alter table category_item add constraint FKcq2n0opf5shyh84ex1fhukcbh foreign key (category_id) references category; 2022-06-05 12:22:07.789 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : alter table order_item add constraint FKija6hjjiit8dprnmvtvgdp6ru foreign key (item_id) references item 2022-06-05 12:22:07.789 INFO 12448 --- [ restartedMain] p6spy : #1654399327789 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop alter table order_item add constraint FKija6hjjiit8dprnmvtvgdp6ru foreign key (item_id) references item alter table order_item add constraint FKija6hjjiit8dprnmvtvgdp6ru foreign key (item_id) references item; 2022-06-05 12:22:07.790 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : alter table order_item add constraint FKt4dc2r9nbvbujrljv3e23iibt foreign key (order_id) references orders 2022-06-05 12:22:07.790 INFO 12448 --- [ restartedMain] p6spy : #1654399327790 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop alter table order_item add constraint FKt4dc2r9nbvbujrljv3e23iibt foreign key (order_id) references orders alter table order_item add constraint FKt4dc2r9nbvbujrljv3e23iibt foreign key (order_id) references orders; 2022-06-05 12:22:07.790 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : alter table orders add constraint FKtkrur7wg4d8ax0pwgo0vmy20c foreign key (delivery_id) references delivery 2022-06-05 12:22:07.791 INFO 12448 --- [ restartedMain] p6spy : #1654399327791 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop alter table orders add constraint FKtkrur7wg4d8ax0pwgo0vmy20c foreign key (delivery_id) references delivery alter table orders add constraint FKtkrur7wg4d8ax0pwgo0vmy20c foreign key (delivery_id) references delivery; 2022-06-05 12:22:07.791 DEBUG 12448 --- [ restartedMain] org.hibernate.SQL : alter table orders add constraint FKpktxwhj3x9m4gth5ff6bkqgeb foreign key (member_id) references member 2022-06-05 12:22:07.792 INFO 12448 --- [ restartedMain] p6spy : #1654399327792 | took 0ms | statement | connection 3| url jdbc:h2:tcp://localhost/~/jpashop alter table orders add constraint FKpktxwhj3x9m4gth5ff6bkqgeb foreign key (member_id) references member alter table orders add constraint FKpktxwhj3x9m4gth5ff6bkqgeb foreign key (member_id) references member; 2022-06-05 12:22:07.793 INFO 12448 --- [ restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] 2022-06-05 12:22:07.797 TRACE 12448 --- [ restartedMain] o.h.type.spi.TypeConfiguration$Scope : Handling #sessionFactoryCreated from [org.hibernate.internal.SessionFactoryImpl@1121f434] for TypeConfiguration 2022-06-05 12:22:07.798 INFO 12448 --- [ restartedMain] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default' 2022-06-05 12:22:07.870 WARN 12448 --- [ restartedMain] 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-06-05 12:22:07.950 INFO 12448 --- [ restartedMain] o.s.b.a.w.s.WelcomePageHandlerMapping : Adding welcome page: class path resource [static/index.html] 2022-06-05 12:22:08.059 INFO 12448 --- [ restartedMain] o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 35729 2022-06-05 12:22:08.090 INFO 12448 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path '' 2022-06-05 12:22:08.097 INFO 12448 --- [ restartedMain] jpabook.jpashop.JpashopApplication : Started JpashopApplication in 2.008 seconds (JVM running for 2.535) 2022-06-05 12:22:20.988 INFO 12448 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring DispatcherServlet 'dispatcherServlet' 2022-06-05 12:22:20.988 INFO 12448 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet' 2022-06-05 12:22:20.990 INFO 12448 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 2 ms 2022-06-05 12:22:21.083 INFO 12448 --- [nio-8080-exec-1] j.jpashop.controller.HomeController : home controller 2022-06-05 12:22:21.764 INFO 12448 --- [nio-8080-exec-2] j.jpashop.controller.HomeController : home controller 2022-06-05 12:22:22.612 INFO 12448 --- [nio-8080-exec-5] j.jpashop.controller.HomeController : home controller 2022-06-05 12:22:32.624 DEBUG 12448 --- [nio-8080-exec-3] org.hibernate.SQL : call next value for hibernate_sequence 2022-06-05 12:22:32.632 INFO 12448 --- [nio-8080-exec-3] p6spy : #1654399352632 | took 4ms | statement | connection 4| url jdbc:h2:tcp://localhost/~/jpashop call next value for hibernate_sequence call next value for hibernate_sequence; 2022-06-05 12:22:32.657 DEBUG 12448 --- [nio-8080-exec-3] org.hibernate.SQL : insert into item (name, price, stock_quantity, author, isbn, dtype, item_id) values (?, ?, ?, ?, ?, 'B', ?) 2022-06-05 12:22:32.659 TRACE 12448 --- [nio-8080-exec-3] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [VARCHAR] - [JPA] 2022-06-05 12:22:32.659 TRACE 12448 --- [nio-8080-exec-3] o.h.type.descriptor.sql.BasicBinder : binding parameter [2] as [INTEGER] - [1] 2022-06-05 12:22:32.660 TRACE 12448 --- [nio-8080-exec-3] o.h.type.descriptor.sql.BasicBinder : binding parameter [3] as [INTEGER] - [1] 2022-06-05 12:22:32.660 TRACE 12448 --- [nio-8080-exec-3] o.h.type.descriptor.sql.BasicBinder : binding parameter [4] as [VARCHAR] - [qweqwe] 2022-06-05 12:22:32.660 TRACE 12448 --- [nio-8080-exec-3] o.h.type.descriptor.sql.BasicBinder : binding parameter [5] as [VARCHAR] - [122] 2022-06-05 12:22:32.660 TRACE 12448 --- [nio-8080-exec-3] o.h.type.descriptor.sql.BasicBinder : binding parameter [6] as [BIGINT] - [1] 2022-06-05 12:22:32.661 INFO 12448 --- [nio-8080-exec-3] p6spy : #1654399352661 | took 0ms | statement | connection 4| url jdbc:h2:tcp://localhost/~/jpashop insert into item (name, price, stock_quantity, author, isbn, dtype, item_id) values (?, ?, ?, ?, ?, 'B', ?) insert into item (name, price, stock_quantity, author, isbn, dtype, item_id) values ('JPA', 1, 1, 'qweqwe', '122', 'B', 1); 2022-06-05 12:22:32.663 INFO 12448 --- [nio-8080-exec-3] p6spy : #1654399352663 | took 0ms | commit | connection 4| url jdbc:h2:tcp://localhost/~/jpashop ; 2022-06-05 12:22:37.202 DEBUG 12448 --- [nio-8080-exec-7] org.hibernate.SQL : call next value for hibernate_sequence 2022-06-05 12:22:37.202 INFO 12448 --- [nio-8080-exec-7] p6spy : #1654399357202 | took 0ms | statement | connection 5| url jdbc:h2:tcp://localhost/~/jpashop call next value for hibernate_sequence call next value for hibernate_sequence; 2022-06-05 12:22:37.203 DEBUG 12448 --- [nio-8080-exec-7] org.hibernate.SQL : insert into item (name, price, stock_quantity, author, isbn, dtype, item_id) values (?, ?, ?, ?, ?, 'B', ?) 2022-06-05 12:22:37.204 TRACE 12448 --- [nio-8080-exec-7] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [VARCHAR] - [JPA] 2022-06-05 12:22:37.204 TRACE 12448 --- [nio-8080-exec-7] o.h.type.descriptor.sql.BasicBinder : binding parameter [2] as [INTEGER] - [1] 2022-06-05 12:22:37.204 TRACE 12448 --- [nio-8080-exec-7] o.h.type.descriptor.sql.BasicBinder : binding parameter [3] as [INTEGER] - [1] 2022-06-05 12:22:37.204 TRACE 12448 --- [nio-8080-exec-7] o.h.type.descriptor.sql.BasicBinder : binding parameter [4] as [VARCHAR] - [qweqwe] 2022-06-05 12:22:37.204 TRACE 12448 --- [nio-8080-exec-7] o.h.type.descriptor.sql.BasicBinder : binding parameter [5] as [VARCHAR] - [122] 2022-06-05 12:22:37.204 TRACE 12448 --- [nio-8080-exec-7] o.h.type.descriptor.sql.BasicBinder : binding parameter [6] as [BIGINT] - [2] 2022-06-05 12:22:37.204 INFO 12448 --- [nio-8080-exec-7] p6spy : #1654399357204 | took 0ms | statement | connection 5| url jdbc:h2:tcp://localhost/~/jpashop insert into item (name, price, stock_quantity, author, isbn, dtype, item_id) values (?, ?, ?, ?, ?, 'B', ?) insert into item (name, price, stock_quantity, author, isbn, dtype, item_id) values ('JPA', 1, 1, 'qweqwe', '122', 'B', 2); 2022-06-05 12:22:37.204 INFO 12448 --- [nio-8080-exec-7] p6spy : #1654399357204 | took 0ms | commit | connection 5| url jdbc:h2:tcp://localhost/~/jpashop ;

  • spring-boot
  • java
  • spring
  • JPA
  • 웹앱
댓글 1 좋아요 2 조회수 650

@JsonIgnore 는 엔티티에서 안붙여도 되는걸까요??

해결됨

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 강의 잘 보고 있습니다 감사합니다! 엔티티는 json으로 반환하지 않는 걸로 알고 있고 그렇게하면 안된다는 걸 이해했습니다. 그렇다면, 엔티티를 json으로 반환하지 않는 방식으로 설계를 한다면 @JsonIgnore 는 양방향 관계에서도 안붙여도 될까요??

  • spring-boot
  • spring
  • JPA
  • java
최지율 댓글 1 좋아요 0 조회수 983

distinct 질문 드립니다!

미해결

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

일대다 컬렉션 페치 조인 조회의 경우 팀A인 멤버가 1, 2, 3이면 DB는 멤버를 기준으로 조인을 해서 팀A인 row가 3개가 생기고 하이버네이트는 이를 받아와서 리스트로 반환(getResultList)해줄 때 리스트에 팀 A 엔티티를 3개 담아줍니다. 여기서 각각의 엔티티는 PK 값이 같기 때문에 서로 같은 엔티티를 참조합니다. (이렇게 이해를 했습니다!) 그러면 쿼리 횟수에 영향을 주는 건 페치 조인이고, distinct는 리스트에 중복 엔티티만 제거하는 역할만 하는 것 같은데 (select 다음 distinct가 추가되는 것 외에는 차이가 없음) 속도적인 면에서는 별 차이가 없는 것이 맞을까요??

  • java
  • JPA
  • spring-boot
  • spring
code-tree 댓글 1 좋아요 1 조회수 311

대용량 필터링의 경우 추천되는 방법이 궁금합니다(JPA의 철학).

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

안녕하세요. JPA를 공부하며 궁금한 점이 생겨서 질문드립니다. [상황] 현재 숙소 엔티티 내부의 이미지와 요금 정책등을 가져오는 로직을 개발 중입니다. 아래 2가지 방법을 고민중입니다. 1) @Query를 사용해 직접 DB에 쿼리문 전송(필터링 조건 포함) 2) roomId로 숙소를 가져와 객체들을 탐색하며 필터링 [고민] 위처럼 대용량의 데이터를 필터링해야 하는 경우에 @Query를 통해 데이터베이스에서 직접 필터링하는 경우와 자바 코드상에서 find해온 결과를 필터링해서 사용하는 것 중에 어느 것이 더 JPA스러운지, 어느 것이 더 성능상의 이점이 있는지 궁금합니다.

  • jpa
  • java
  • @Query
  • JPA
1q2w3e4r 댓글 1 좋아요 0 조회수 298

order builder패턴 질문

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

set를 빌더 패턴으로 바꿔봤는데 배열은 어떻게 빌더로하는지 궁금해서요ㅠㅠ 이러이렇게 하는게 맞는건지 아닌거같기도하고... 그리고 (...) 이거 궁금한데 뭐라고 검색해야나오나요?

  • JPA
  • spring-boot
  • spring
  • 웹앱
  • java
성호 댓글 3 좋아요 0 조회수 375

cascade관련

해결됨

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

cascade가 그럼 언제써야되는지 혹시 명확한 조건이있을까요 One으로시작하는거라든지 그런거요 oneToMany이관계에서도쓰는거면 member와 order사이에서도쓸수있지않나해서요

  • JPA
  • java
  • spring-boot
  • spring
  • 웹앱
성호 댓글 2 좋아요 2 조회수 361

강의 학습 중 공통(부가)기능 처리 방법에 대한 질문입니다.

해결됨

스프링 핵심 원리 - 고급편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 아니오 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요. 스프링 핵심원리 고급편에서 다루는 주요 내용인 핵심기능과 공통(부가)기능을 어떻게 나눌 것인가를 듣다보니 어느덧 AOP 챕터까지 다다르게 되었습니다. 강의를 통해 부가기능의 종류에는 크게 로깅, 트랜잭션처리, 접근권한확인이 있다고 생각이 들었습니다. 이것들은 앞에서 다룬 개발 패턴이나 AOP를 사용하지 않고도 유틸리티성 클래스를 통해 처리가 가능한 것으로도 알고 있지만 SOLID 원칙, 유지보수 효율 증대, 중복 코드 제거 등의 많은 이점을 가져다주기 때문에 AOP와 같은 기술을 사용하는 것은 이해를 했습니다. 그러나 Filter/HandlerInterceptor를 사용해서도 부가기능을 처리할 수 있을 것으로도 생각이 드는데요.(스프링 MVC 강의 학습을 통해 느낀 점입니다.) 저와 비슷한 생각을 가지고 계신 다른 분께서 질문한 글의 답변을 인용하자면 웹과 관련된 공통(부가)기능(특정 메뉴 접근권한 확인, 로그인 여부 확인 등)는 Filter/HandlerInterceptor를 통해 처리하고, 순수한 자바 코드를 통한 공통 (부가) 기능은 AOP를 이용하는 것이 맞는 것인지 궁금합니다. (참고 질문: https://www.inflearn.com/questions/495293 ) 물론 더 나아가 시큐리티를 알고 있다면 이런 질문 내용도 다른 방식으로 해결이 가능하겠지만, 만약, 시큐리티를 현재 모르고 있다라는 가정하에 위와 같이 실무에서도 처리하는게 맞는지 첨언 부탁드리겠습니다. 미리 답변 감사드립니다.

  • springboot
  • 디자인-패턴
  • spring
  • aop
  • oop
  • java
Henu 댓글 1 좋아요 7 조회수 479

updateitem dto관련

해결됨

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

UpdateItemDto dto이렇게만들어서 사용해도된다고해서 만들어볼려고한느데 ItemService 에 @Transactional public void updateItem(Long itemId, UpdateItemDto dto) { Item findItem = itemRepository.findOne(itemId); findItem.setPrice(dto.getPrice()); findItem.setName(dto.getName()); findItem.setStockQuantity(dto.getStockQuantity()); } 이렇게 만들고 UpdateItemDto @Getter @Setter public class UpdateItemDto { private String name; private int price; private int stockQuantity; } 이렇게만들고 근데 controller에서 @PostMapping("items/{itemid}/edit") public String updateItem(@PathVariable Long itemId, @ModelAttribute("form") BookForm form) { itemService.updateItem(itemId, form); return "redirect:/items"; 이런식으로되어있는데 form을어떻게dto로넘길수있을까요 controller에서 dto로넘기는건 안좋다고 다른질문에서본거같은데

  • spring-boot
  • 웹앱
  • JPA
  • spring
  • java
성호 댓글 1 좋아요 0 조회수 250

엔티티에 로직들질문

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

서비스에 하는게 더 로직에맞는거아닌가해서요 물론간단한예제라서 엔티티에하는건지 아니면원래 엔티티에해도되는건지를모르겠습니다. 엔티티에 메서드를 많이만드는게 신기하다고해야되나 다른곳에서도 이렇게해도되는건지가궁금합니다.

  • 웹앱
  • java
  • JPA
  • spring-boot
  • spring
성호 댓글 1 좋아요 1 조회수 279

엔티티, DTO 유효성 검사에 대해 질문 드립니다.

미해결

실전! 스프링 데이터 JPA

엔티티, DTO를 둘 다 유효성 검사를 하나요? 만약 엔티티도 유효성 검사를 할 떄 Bean validation을 사용하시나요?

  • spring-boot
  • JPA
  • spring
  • java
terry9611 댓글 1 좋아요 1 조회수 1114

@EnableGlobalAuthentication 관련 질문입니다.

미해결

스프링 시큐리티

@EnableWebSecurity 어노테이션 안에 @Configuration 어노테이션이 포함되어 있는데 그러면@EnableWebSecurity이 있는 클래스에 @Configuration 를 안붙여도 괜찮을까요?

  • Spring Security
  • java
  • spring-boot
tmdwo5825 댓글 2 좋아요 0 조회수 686

지원중단

해결됨

스프링과 JPA 기반 웹 애플리케이션 개발

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. public class SecurityConfig extends WebSecurityConfigurerAdapter 에서 WebSecurityConfigurerAdapter 이게 지원중단이라떠서 더이상 진행이 불가능한데 어떻게 해결할 수 있나요?

  • spring
  • spring-boot
  • java
  • JPA
  • thymeleaf
고래돌 댓글 2 좋아요 1 조회수 2238

질문 있습니다.

미해결

자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)

코틀린에서는 null 사용을 안전하게 하기 위해서 null 이 들어갈 수 있는 변수를 완전히 다른 타입으로 간주하고 아래와 같이 효과적으로 관리할 수 있다. 라고 말씀해주셨는데요 그렇다면 String과 String? 타입은 엄연히 다른 타입 인것이고 String? 이 자체를 하나의 타입으로 간주해야하는건가요? String? 이렇게 생긴 타입은 코틀린에서는 클래스로 정의 되어 있지 않아서요..!

  • java
  • kotlin
  • oop
높으면백두산 댓글 1 좋아요 2 조회수 345

MemberForm부분 질문

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

@PostMapping("/members/new") public String create(MemberForm form) { Member member = new Member(); member.setName(form.getName()); memberService.join(member); return "redirect:/"; } 에서 MemberForm.java를만들면 form에서 입력된 name이 memberForm으로들어간다고하더라고요 근데 어떻게 form에서 입력된값이 바로 MemberForm.java로 들어갌수있는지 이해가 안가는데 원래 파라미터 받아서 setName해서 memberform안에 name를 저장해야되는거 아닌가요? 단순히 form에서 값입력후 전송했는데 MemberForm 으로 넘어가는걸 모르겠습니다. 그러니 위에 바로 form.getName()이렇게 바로 불러올수있는게 이해가 안가는데 어떻게 가능한걸까요

  • form부분
  • spring
  • MVC
  • spring-boot
  • java
성호 댓글 1 좋아요 0 조회수 425

hello.html에 data

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 왜 data에 빨간줄이 뜰까요?

  • java
  • spring
  • MVC
  • spring-boot
댓글 1 좋아요 0 조회수 293

Order 도메인 this.member 부분 에러

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

강의 내용중, Order 도메인을 작성할때 다음 스크린샷처럼 Member, Delivery 엔티티를 사용하여 this 키워드를 사용할때 Cannot access jpabook.jpashop.domain.Member 에러가 나고 있습니다. Member와 Delivery, Order 는 모두 예시로 올려주신 코드와 확인하여 똑같이 작성한걸 확인했지만 혹시 몰라 제가 작성한 코드를 같이 올리겠습니다. package jpabook.jpashop.domain; import lombok.Getter; import lombok.Setter; import javax.persistence.*; import java.util.ArrayList; import java.util.List; @Entity @Getter @Setter public class Member { @Id @GeneratedValue @Column(name = "member_id") private Long id; private String name; @Embedded private Address address; @OneToMany(mappedBy = "member") private List<Order> orders = new ArrayList<>(); } package jpabook.jpashop.domain; import lombok.Getter; import lombok.Setter; import javax.persistence.*; @Entity @Getter @Setter public class Delivery { @Id @GeneratedValue @Column(name = "delivery_id") private Long id; @OneToOne(mappedBy = "delivery", fetch = FetchType.LAZY) private Order order; @Embedded private Address address; @Enumerated(EnumType.STRING) private DeliveryStatus deliveryStatus; } package jpabook.jpashop.domain; import lombok.AccessLevel; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import javax.persistence.*; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; import static javax.persistence.FetchType.*; @Entity @Table(name="orders") @Getter @Setter @NoArgsConstructor(access = AccessLevel.PROTECTED) // 이거는 한 도메인 안에서 생성 메서드 등을 통해 로직을 구현했을 경우에 // 접근을 막기위해 사용한다 // 누구는 여기 만들어진 createOrder 를 통해서 주문을 생성하고 // 누구는 Order order = new Order -> order.setOrder로 생성하고 하면 나중에 골치아파치므로 // 애초에 public 으로 지정되어 있지 않은거 + 롬복통한 getter setter 를 통한 코딩을 막아준다 public class Order { @Id @GeneratedValue @Column(name = "order_id") private Long id; @ManyToOne (fetch = LAZY) @JoinColumn(name="member_id") private Member member; @OneToMany(mappedBy = "order", cascade = CascadeType.ALL) // cascade all 걸어주면 private List<OrderItem> orderItems = new ArrayList<>(); // persist(orderItemA) // persist(orderItemB) // persist(orderItemC) // persist(order) 를 cascase all 안걸어주면 이렇게 넣어야하는데 // 걸어주면 persist(order)하면 자동적으로 다 넣어줌 딜리트도 마찬가지로 다 같이 지워줌 // 즉, 원래는 order 에 들어가는 delivery 나 orderItems 등은 다른 테이블에 같이 걸려있잖아 그걸 // 일일히 다 테이블마다 찾아가서 넣어줘야하는데 cascade all 걸어주면 알아서 그걸 다 연동해서 cd 해줌 @OneToOne (fetch = FetchType.LAZY, cascade = CascadeType.ALL) @JoinColumn(name="delivery_id") private Delivery delivery; private LocalDateTime orderDate; @Enumerated(EnumType.STRING) private OrderStatus status; // 주문상태 order cancel //연관관계 편의 메서드 = 양방향일때 쓰면 편한 메소드 //이게 뭐냐면 연관관계 맺어줬으면 DB딴에서는 이런거 안해줘도 다 알아서 동작하긴 하는데 // 비지니스 로직상에서는 이렇게 set할수 있는 연관관계 메서드가 있어야 구현할때 편함 public void setMember(Member member){ this.member = member; member.getOrders().add(this); } public void addOrderItem(OrderItem orderItem){ orderItems.add(orderItem); orderItem.setOrder(this); } public void setDelivery(Delivery delivery){ this.delivery=delivery; delivery.setOrder(this); } //연관관계 메서드 위치는 컨트롤하는쪽에 위치하는게 좋음 비지니스 로직에 의하면 // public static void main (String[] args){ // Member m = new Member(); // Order o = new Order(); // // m.getOrders().add(o); --> 이거 할필요가 없어짐 // o.setMember(m); // } // 원래는 연관관계 메서드가 없으면 이렇게 일일히 비지니스 로직딴에서 데이터 객체 생성후 member 에도 넣어주고 order 에도 넣어주고 해야하는데 // 연관관계 메서드를 만들어 놓으면 로직딴에서 저짓할필요가 없이 편해짐 // ... 은 가변파라미터, String 이라 치면 몇개를 넣어도 다 카바 가능 -> list = 가변파라미터 하면 다 리스트에 들어감 차곡차곡 //생성메서드 public static Order createOrder(Member member, Delivery delivery, OrderItem... orderItems){ Order order = new Order(); order.setMember(member); order.setDelivery(delivery); for (OrderItem orderItem:orderItems) { order.addOrderItem(orderItem); } order.setStatus(OrderStatus.ORDER); order.setOrderDate(LocalDateTime.now()); return order; } //비지니스 로직 //주문취소 public void cancel(){ if(delivery.getDeliveryStatus()==DeliveryStatus.COMP){ throw new IllegalStateException("배송 완료된 상품은 취소불가"); } this.setStatus(OrderStatus.CANCEL); for(OrderItem orderItem:orderItems){ orderItem.cancel(); } } //전체주문가격 조회 public int getTotalPrice(){ int totalprice = 0; for(OrderItem orderItem:orderitems){ totalprice += orderItem.getTotalPrice(); } return totalprice; } } import 구문을 직접 작성하여 엔티티들을 직접 임포트까지 해보고, 로직상에서 아예 jpabook.jpashop.~~ 처럼 직접 임포트 구문을 작성해서 시도도 해보았지만 해결이 되지 않아 질문을 올리게 되었습니다. 확인부탁드립니다.

  • spring
  • spring-boot
  • 웹앱
  • java
  • JPA
tedisagood 댓글 1 좋아요 0 조회수 422

인기 태그

인프런 TOP Writers

주간 인기글