선생님 이해가 되지 않는 부분 문의드립니다. """ + str(item_info['ori_price']) + """, """ + str(item_info['dis_price']) + """, """ + str(item_info['discount_percent']) + """, 이부분에서 왜 str()로 왜 감싸는지 이해가 되지않습니다. 숫자는 문자열과 문자열로 더할수 없다는 표현이라고 설명하시는데 이유가 궁금합니다. - 본 강 if result[0] == 0: sql = """INSERT INTO items VALUES('""" + item_info['item_code'] + """', '""" + item_info['title'] + """', """ + str(item_info['ori_price']) + """, """ + str(item_info['dis_price']) + """, """ + str(item_info['discount_percent']) + """, '""" + item_info['provider'] + """')""" print(sql) cursor.execute(sql) 의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다) - 이외의 문의등은 평생강의이므로 양해를 부탁드립니다 - 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다 - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 전체 코드는 /Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home/bin/java -ea -Didea.test.cyclic.buffer.size=1048576 -javaagent:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar=56923:/Applications/IntelliJ IDEA CE.app/Contents/bin -Dfile.encoding=UTF-8 -classpath /Users/seoseunghyeon/.m2/repository/org/junit/platform/junit-platform-launcher/1.8.2/junit-platform-launcher-1.8.2.jar:/Users/seoseunghyeon/.m2/repository/org/junit/platform/junit-platform-engine/1.8.2/junit-platform-engine-1.8.2.jar:/Users/seoseunghyeon/.m2/repository/org/opentest4j/opentest4j/1.2.0/opentest4j-1.2.0.jar:/Users/seoseunghyeon/.m2/repository/org/junit/platform/junit-platform-commons/1.8.2/junit-platform-commons-1.8.2.jar:/Users/seoseunghyeon/.m2/repository/org/apiguardian/apiguardian-api/1.1.2/apiguardian-api-1.1.2.jar:/Users/seoseunghyeon/.m2/repository/org/junit/vintage/junit-vintage-engine/5.8.2/junit-vintage-engine-5.8.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/seoseunghyeon/study/jpashop2/build/classes/java/test:/Users/seoseunghyeon/study/jpashop2/build/classes/java/main:/Users/seoseunghyeon/study/jpashop2/build/resources/main:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/junit/junit/4.13.1/cdd00374f1fee76b11e2a9d127405aa3f6be5b6a/junit-4.13.1.jar:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-test/2.7.0/417764bfd907f7deffd617fb31b3ea0900547287/spring-boot-starter-test-2.7.0.jar:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/jakarta.transaction/jakarta.transaction-api/1.3.3/c4179d48720a1e87202115fbed6089bdc4195405/jakarta.transaction-api-1.3.3.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/jakarta.persistence/jakarta.persistence-api/2.2.3/8f6ea5daedc614f07a3654a455660145286f024e/jakarta.persistence-api-2.2.3.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.hibernate/hibernate-core/5.6.9.Final/8ec2c7b13de2fbcb19feddfb3a30932bb6a8228a/hibernate-core-5.6.9.Final.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework.data/spring-data-jpa/2.7.0/f82986cdf2beda49b0bbb28a880ca644a1eb6c42/spring-data-jpa-2.7.0.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework/spring-aspects/5.3.20/161a2ccb1d68aed17922981909081bd6d1e46628/spring-aspects-5.3.20.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter/2.7.0/64fd3c21486dd20df9a62566599337dae2eb62cc/spring-boot-starter-2.7.0.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.thymeleaf/thymeleaf-spring5/3.0.15.RELEASE/7170e1bcd1588d38c139f7048ebcc262676441c3/thymeleaf-spring5-3.0.15.RELEASE.jar:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework/spring-webmvc/5.3.20/8ac1b72a1f5c41fdc2cb3340cd94f795af260301/spring-webmvc-5.3.20.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework/spring-web/5.3.20/3c2fe9363760d62d5b7c9f087bb4255e3377a0b2/spring-web-5.3.20.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/2.2/3f2bd07716a31c395e2837254f37f21f0f0ab24b/hamcrest-core-2.2.jar:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/p6spy/p6spy/3.8.2/52299d9a1ec2bc2fb8b1a21cc12dfc1a7c033caf/p6spy-3.8.2.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-test-autoconfigure/2.7.0/e0270c5cf20211c43f7b485c64e3e6a96f16b991/spring-boot-test-autoconfigure-2.7.0.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-test/2.7.0/8be4bc652e4bd0ae0f61b99e164ae26ac269f154/spring-boot-test-2.7.0.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/com.jayway.jsonpath/json-path/2.7.0/f9d7d9659f2694e61142046ff8a216c047f263e8/json-path-2.7.0.jar:/Users/seoseunghyeon/.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/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.assertj/assertj-core/3.22.0/c300c0c6a24559f35fa0bd3a5472dc1edcd0111e/assertj-core-3.22.0.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest/2.2/1820c0968dba3a11a1b30669bb1f01978a91dedc/hamcrest-2.2.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.junit.jupiter/junit-jupiter/5.8.2/5a817b1e63f1217e5c586090c45e681281f097ad/junit-jupiter-5.8.2.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.mockito/mockito-junit-jupiter/4.5.1/f81fb60bd69b3a6e5537ae23b883326f01632a61/mockito-junit-jupiter-4.5.1.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.mockito/mockito-core/4.5.1/ed456e623e5afc6f4cee3ae58144e5c45f3b3bf/mockito-core-4.5.1.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.skyscreamer/jsonassert/1.5.0/6c9d5fe2f59da598d9aefc1cfc6528ff3cf32df3/jsonassert-1.5.0.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework/spring-test/5.3.20/33a92d5066fb810023969a0d70fac96387962769/spring-test-5.3.20.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework/spring-core/5.3.20/4b88aa3c401ede3d6c8ac78ea0c646cf326ec24b/spring-core-5.3.20.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.xmlunit/xmlunit-core/2.9.0/8959725d90eecfee28acd7110e2bb8460285d876/xmlunit-core-2.9.0.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework/spring-aop/5.3.20/c82f17997ab18ecafa8d08ce34a7c7aa4a04ef9e/spring-aop-5.3.20.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.aspectj/aspectjweaver/1.9.7/158f5c255cd3e4408e795b79f7c3fbae9b53b7ca/aspectjweaver-1.9.7.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework/spring-jdbc/5.3.20/140414df1080754fcefe12921543c599e51dfbb2/spring-jdbc-5.3.20.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/com.zaxxer/HikariCP/4.0.3/107cbdf0db6780a065f895ae9d8fbf3bb0e1c21f/HikariCP-4.0.3.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.glassfish.jaxb/jaxb-runtime/2.3.6/1e6cd0e5d9f9919c8c8824fb4d310b09a978a60e/jaxb-runtime-2.3.6.jar:/Users/seoseunghyeon/.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/seoseunghyeon/.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/seoseunghyeon/.gradle/caches/modules-2/files-2.1/net.bytebuddy/byte-buddy/1.12.10/f34127d93639fad8c6fb84b3ca30292697d6c55d/byte-buddy-1.12.10.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/antlr/antlr/2.7.7/83cd2cd674a217ade95a4bb83a8a14f351f48bd0/antlr-2.7.7.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.jboss/jandex/2.4.2.Final/1e1c385990b258ff1a24c801e84aebbacf70eb39/jandex-2.4.2.Final.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/com.fasterxml/classmate/1.5.1/3fe0bed568c62df5e89f4f174c101eab25345b6c/classmate-1.5.1.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework/spring-orm/5.3.20/4eaf36c114a3aa2d1603834cfb197b5742ccde5b/spring-orm-5.3.20.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework.data/spring-data-commons/2.7.0/6dc643cf1512fdc5c2d63f55c83080b60b629d10/spring-data-commons-2.7.0.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework/spring-tx/5.3.20/9a4ec2249dc3523ac70e0710a64288c14fc3ff78/spring-tx-5.3.20.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework/spring-context/5.3.20/517a42165221ea944c8b794154c10b69c0128281/spring-context-5.3.20.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework/spring-beans/5.3.20/ab88bd9e3a8307f5c0516c15d295c88ec318659/spring-beans-5.3.20.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.slf4j/slf4j-api/1.7.36/6c62681a2f655b49963a5983b8b0950a6120ae14/slf4j-api-1.7.36.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-autoconfigure/2.7.0/483f9a66d0e8326583c5054038d0aa0a95045dc3/spring-boot-autoconfigure-2.7.0.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot/2.7.0/df8bd106d6c6a6494b787b71d23cef6d2dc73703/spring-boot-2.7.0.jar:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/jakarta.annotation/jakarta.annotation-api/1.3.5/59eb84ee0d616332ff44aba065f3888cf002cd2d/jakarta.annotation-api-1.3.5.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.yaml/snakeyaml/1.30/8fde7fe2586328ac3c68db92045e1c8759125000/snakeyaml-1.30.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.thymeleaf/thymeleaf/3.0.15.RELEASE/13e3296a03d8a597b734d832ed8656139bf9cdd8/thymeleaf-3.0.15.RELEASE.jar:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-databind/2.13.3/56deb9ea2c93a7a556b3afbedd616d342963464e/jackson-databind-2.13.3.jar:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.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:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework/spring-expression/5.3.20/20e179f0dfabf0a46428f22c2150c9c4850fd15d/spring-expression-5.3.20.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/net.minidev/json-smart/2.4.8/7c62f5f72ab05eb54d40e2abf0360a2fe9ea477f/json-smart-2.4.8.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/jakarta.activation/jakarta.activation-api/1.2.2/99f53adba383cb1bf7c3862844488574b559621f/jakarta.activation-api-1.2.2.jar:/Users/seoseunghyeon/.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/seoseunghyeon/.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/seoseunghyeon/.gradle/caches/modules-2/files-2.1/net.bytebuddy/byte-buddy-agent/1.12.10/1f097f8d6cad60e8f93e5eb670cf5dc9b64da32/byte-buddy-agent-1.12.10.jar:/Users/seoseunghyeon/.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/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework/spring-jcl/5.3.20/35119231d09863699567ce579c21512ddcbc5407/spring-jcl-5.3.20.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.glassfish.jaxb/txw2/2.3.6/45db7b69a8f1ec2c21eb7d4fc0ee729f53c1addc/txw2-2.3.6.jar:/Users/seoseunghyeon/.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/seoseunghyeon/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-classic/1.2.11/4741689214e9d1e8408b206506cbe76d1c6a7d60/logback-classic-1.2.11.jar:/Users/seoseunghyeon/.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/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.slf4j/jul-to-slf4j/1.7.36/ed46d81cef9c412a88caef405b58f93a678ff2ca/jul-to-slf4j-1.7.36.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.attoparser/attoparser/2.0.5.RELEASE/a93ad36df9560de3a5312c1d14f69d938099fa64/attoparser-2.0.5.RELEASE.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.unbescape/unbescape/1.1.6.RELEASE/7b90360afb2b860e09e8347112800d12c12b2a13/unbescape-1.1.6.RELEASE.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-annotations/2.13.3/7198b3aac15285a49e218e08441c5f70af00fc51/jackson-annotations-2.13.3.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-core/2.13.3/a27014716e4421684416e5fa83d896ddb87002da/jackson-core-2.13.3.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/net.minidev/accessors-smart/2.4.8/6e1bee5a530caba91893604d6ab41d0edcecca9a/accessors-smart-2.4.8.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.apiguardian/apiguardian-api/1.1.2/a231e0d844d2721b0fa1b238006d15c6ded6842a/apiguardian-api-1.1.2.jar:/Users/seoseunghyeon/.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/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.opentest4j/opentest4j/1.2.0/28c11eb91f9b6d8e200631d46e20a7f407f2a046/opentest4j-1.2.0.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-core/1.2.11/a01230df5ca5c34540cdaa3ad5efb012f1f1f792/logback-core-1.2.11.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-api/2.17.2/f42d6afa111b4dec5d2aea0fe2197240749a4ea6/log4j-api-2.17.2.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm/9.1/a99500cf6eea30535eeac6be73899d048f8d12a8/asm-9.1.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-devtools/2.7.0/2a45b04877bbfe9750e4d29f6a73f125e146513d/spring-boot-devtools-2.7.0.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/com.h2database/h2/2.1.212/f3187885395bd0c0e0e83f96641bb630f368ee2f/h2-2.1.212.jar:/Users/seoseunghyeon/.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/seoseunghyeon/.gradle/caches/modules-2/files-2.1/org.objenesis/objenesis/3.2/7fadf57620c8b8abdf7519533e5527367cb51f09/objenesis-3.2.jar:/Users/seoseunghyeon/.gradle/caches/modules-2/files-2.1/com.sun.activation/jakarta.activation/1.2.2/74548703f9851017ce2f556066659438019e7eb5/jakarta.activation-1.2.2.jar:/Users/seoseunghyeon/.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 jpabook.jpashop.MemberRepositoryTest,testMember Internal Error occurred. org.junit.platform.commons.JUnitException: TestEngine with ID 'junit-vintage' failed to discover tests at org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.discoverEngineRoot(EngineDiscoveryOrchestrator.java:160) at org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.discoverSafely(EngineDiscoveryOrchestrator.java:134) at org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.discover(EngineDiscoveryOrchestrator.java:108) at org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.discover(EngineDiscoveryOrchestrator.java:80) at org.junit.platform.launcher.core.DefaultLauncher.discover(DefaultLauncher.java:110) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86) at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86) at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute(SessionPerRequestLauncher.java:53) at com.intellij.junit5.JUnit5IdeaTestRunner.startRunnerWithArgs(JUnit5IdeaTestRunner.java:71) at com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute(IdeaTestRunner.java:38) at com.intellij.rt.execution.junit.TestsRepeater.repeat(TestsRepeater.java:11) at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:35) at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:235) at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:54) Caused by: org.junit.platform.commons.JUnitException: MethodSelector [className = 'jpabook.jpashop.MemberRepositoryTest', methodName = 'testMember', methodParameterTypes = ''] resolution failed at org.junit.platform.launcher.listeners.discovery.AbortOnFailureLauncherDiscoveryListener.selectorProcessed(AbortOnFailureLauncherDiscoveryListener.java:39) at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolveCompletely(EngineDiscoveryRequestResolution.java:102) at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.run(EngineDiscoveryRequestResolution.java:82) at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolver.resolve(EngineDiscoveryRequestResolver.java:113) at org.junit.vintage.engine.discovery.VintageDiscoverer.discover(VintageDiscoverer.java:42) at org.junit.vintage.engine.VintageTestEngine.discover(VintageTestEngine.java:64) at org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.discoverEngineRoot(EngineDiscoveryOrchestrator.java:152) ... 13 more Caused by: org.junit.platform.commons.PreconditionViolationException: Could not load class with name: jpabook.jpashop.MemberRepositoryTest at org.junit.platform.engine.discovery.MethodSelector.lambda$lazyLoadJavaClass$0(MethodSelector.java:157) at org.junit.platform.commons.function.Try$Failure.getOrThrow(Try.java:335) at org.junit.platform.engine.discovery.MethodSelector.lazyLoadJavaClass(MethodSelector.java:156) at org.junit.platform.engine.discovery.MethodSelector.getJavaClass(MethodSelector.java:135) at org.junit.vintage.engine.discovery.MethodSelectorResolver.resolve(MethodSelectorResolver.java:39) at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.lambda$resolve$2(EngineDiscoveryRequestResolution.java:146) at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195) at java.base/java.util.ArrayList$ArrayListSpliterator.tryAdvance(ArrayList.java:1632) at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127) at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:543) at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolve(EngineDiscoveryRequestResolution.java:185) at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolve(EngineDiscoveryRequestResolution.java:125) at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolveCompletely(EngineDiscoveryRequestResolution.java:91) ... 18 more Caused by: java.lang.ClassNotFoundException: jpabook.jpashop.MemberRepositoryTest at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) at org.junit.platform.commons.util.ReflectionUtils.lambda$tryToLoadClass$9(ReflectionUtils.java:829) at org.junit.platform.commons.function.Try.lambda$call$0(Try.java:57) at org.junit.platform.commons.function.Try.of(Try.java:93) at org.junit.platform.commons.function.Try.call(Try.java:57) at org.junit.platform.commons.util.ReflectionUtils.tryToLoadClass(ReflectionUtils.java:792) at org.junit.platform.commons.util.ReflectionUtils.tryToLoadClass(ReflectionUtils.java:748) ... 34 more Process finished with exit code 254 라고 나오네요 이전 강의에서 사용한 클래스 Member, MemberRepository, MemberRepositoryTest 지웠는데 계속 오류가 나네요..
초보적인 질문일 수 있지만 궁금한 부분이 있어 문의 드립니다. 강의 내용 중 " 세션과 관련된 쿠키( JSESSIONID)를 탈취 당했을 경우 오랜 시간이 지나도 해당 쿠키로 악의적인 요청을 할수있다. " 라는 내용이 있고, 세션 타임아웃 설정으로 방지하는 것으로 이해하였습니다. 그런데 탈취 당하여 악용하는 시점에, 타임아웃으로 설정한 30분이 지나지 않았다면 이 순간에는 악용이 가능하지 않나 생각이 들었습니다. 이 순간에는 막을 수 있는 방법이 따로 있는 것일까요 ?
집값 예측 강의에서 보스턴 자료가 더이상 파이토치에서 지원하지 않는다고 합니다. 초보분들을 위해서 다른 데이터로 변경한 강의가 제공된다면, 더 좋은 강의가 될 것 같습니다. (또는 이전 보스턴 자료를 받는 다른 방법을 이용하고 윤리적인 이슈로 스터디 용도로만 사용할 것을 명시)
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. for i, v in OrderedDict ( sorted (word_count. items (), key = lambda t : t[ 1 ], reverse = True )). items () : 에서 lambda t:t[1] 이부분 왜 t 인건지가 잘 이해가 안되요... 이부분 자세하게 풀어서 설명해주실분 계실까요..?
이전 강의에서 devDependancies에 있는 라이브러리들은 npm run build될때 배포가 되지않는다는 식으로 알려주셨었는데 이 강의에서는 package.json 파일에서 webpack은 devDependancies에 있는데 "scripts" : { "build" : "webpack" } 이라고 써서 돌아가는 것인가요??? 이해가 되지않습니다 ㅠㅠㅠ
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 아니오 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요! 질문이 있어 문의 드립니다. 일반적으로 @entity에 테이블 명시를 하고 사용하는데 이 방법 외에 Spring boot JPA 에서 동적으로 table 이름을 변경할 수 있는 방법이 있는지 궁금합니다. repository 인터페이스에 @Query 에서 테이블 이름을 파라미터로 주고, nativeQuery=true로 사용해보려고 하였으나 동작되지 않았습니다. (You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near) 몇 가지 방법을 찾아보았는데 해결이 어려워 관련하여 조언을 부탁드립니다. https://stackoverflow.com/questions/37190116/changing-table-name-dynamiclly-in-jpa-hibernate https://javaaltaf.blogspot.com/2019/01/change-table-name-of-entity-at-runtime.html
Better yet, how can I fix transfer failed issues with my Cash App account? If any of these questions sound familiar then you are in luck. Below you’ll find possible reasons for this as well as solutions. If your Cash App transfer failed, it could be because of: You have an outdated Cash App account. Not enough cash balance. Terrible internet connection. Incorrect payment or card details. Cash App is without a doubt a big player when it comes to peer-to-peer payments services. Over the years, they’ve managed to not only attract a number of people but also turn them into account holders or users of their services. While this is a good thing, especially for Square Cash, Cash App founders , it does bring with it a number of challenges. Top on the list of these challenges is the functionality of the app. This is evident today. JUST RECENTLY; THERE HAS BEEN AN INCREASE IN THE NUMBER OF CASH APP USERS COMPLAINING ABOUT THE APP NOT FUNCTIONING PROPERLY. It is with this that we’ve opted to share with you this particular post. Not only will you find possible reasons as to why your Cash App transfer failed below, but you’ll also find possible solutions to this annoying Cash App problem by Cashappreviews . Possible Reasons Why Cash App Transfer Failed + Solutions How do I fix “Transfer Failed” on Cash App? Understanding why your Cash App transfer failed is very important. This is especially so if you are looking at finding possible solutions for your problem. That said there are a number of reasons why your Cash App transfer failed . To give you a better picture, below is a list of common reasons why your Cash App transfer failed . An Outdated Cash App Account It might sound strange and also something very simple but yes. One of the reasons why you are having trouble with your account is that it’s old. You are yet to update your Cash App app to the latest version and as such it is faulty. To find out whether this is the problem, do ensure that you update your app and keep doing so with the new updates. Not Having Enough Balance While updating your app is the first point listed in this post, ideally, you should first confirm your account balance. Sometimes the “ Cash App transfer failed ” or “ Cash App transfer pending ” message might pop up even though money was deducted from your account. In other words, the transaction went through. Terrible Internet Connection Speed If you are working with a slow WIFI connection, or simply one that comes and goes chances are your Cash App transfer will fail. For a transaction to go through on Cash App, you not only need a fast internet connection but one that is very stable. Tips To Avoid Cash App Transfer Failed Issue The Cash App is one of the best money transfer apps. You can transfer money from one bank account to another within a minute. Most of the time Cash App works great as it should work but sometimes due to some network dropouts or other issues, you might face a “Transaction Failed” error. In this article, we will discuss how to fix this Cash App transfer failed issue . Change Your Phone’s Date And Time Settings One of the most common reasons behind this Cash App transfer failed error is the incorrect date and time settings. It’s simple and easy to fix. Just follow the steps below: #Go To Setting->Date and Time->Select Automatic Date and Time option from the menu. Now, select the Set Automatically toggle the option on. Next, change the time zone of your phone to some other city. Now, you can open the Cash App and try transferring money again. If the performance is still not as expected then proceed further. Clear Cache & Data Of The App Sometimes clearing the cache and data of the Cash App fixes this issue. Just follow these steps: Go To Setting->Apps->Cash App and select Storage and Clear Cache and Clear Data. Now, open the Cash App again and try transferring money again. If performance is still not as expected then proceed again to the next method. If you are getting this Cash App transfer failed error , then you might want to check your date and time settings on your Android phone. Uninstall & Re-install The App If the above steps don’t work for you then try uninstalling and re-installing the Cash App and check if that helps. To uninstall: Go to Settings->Apps and find your Cash App in the list of apps->click on it and select the ‘Uninstall’ button. To re-install: Search for Cash App in App Store or Play Store and install it. If none of the above methods work, then you may want to reach out to Cash App Support for additional help getting up & running. Check Your Internet Connection If you can’t make a transfer via your mobile data and Wi-Fi, then the app won’t allow you to make this transfer. Make sure that before transferring money or making any payments, both your mobile data and WiFi connection is working fine. Restart Your Device If you are getting this Cash App transfer failed error , then restarting your device can also help. Just press and hold the Power button until the menu options appear->select the Restart option to restart your phone. Now try transferring money using Cash App again. If still, performance is not as expected then proceed further. Update Cash App to the Latest Version If you are getting this error, it’s possible that either your Cash App has an older version or the issue is with servers. To fix this problem, update the Cash App on both devices to the latest version available in the App Store or Play Store. Contact Customer Service for Help If you are unable to fix the Cash App transfer failed issue yourself, then it’s time to get help from their support team. First, open up the app. Select “I have a problem with Cash App” at the bottom of the page->click on Chat or Call under that section. This will open up a chat window where you can talk to the Cash App customer service team directly -> describe your problem and wait for their help. We hope that you were able to fix this problem yourself by following less known methods of solving it.
multi thread와 PC, PC register, context switching에 대해서 이 노트와 https://www.inflearn.com/questions/489172 를 참조하여 새롭게 정리해 보았는데 제가 이해한 것이 맞는지 한번 보아주십시오. multi thread에서는 각각의 thread가 자신의 PC값을 TCB(Thread Control Block)에 저장을 합니다(multi thread에서는 각각의 thread가 독립적인 PC값을 가지고 있어야 합니다). 그 이유는 한 process 내에서도 thread 사이에 context switching이 일어나는데, TCB에 code address(PC)가 저장되어 있어야 해당 쓰레드가 어느 코드 영역까지 진행했는지를 기억하여 그 다음 코드부터 실행을 할 수 있기 때문입니다. 예를 들면 thread a 에서 thread b로 context switch가 일어나면, 현재의 PC register에 저장되어 있는 값을 thread a의 TCB에 저장을 하고, thread b의 TCB의 PC값을 불러와 PC register에 저장을 합니다. CPU는 PC register가 새롭게 가리키는 thread b의 code영역, 즉 thread b 내에서 다음에 실행해야 할 명령의 주소값(PC)을 참조하여 실행을 하게 되는 것입니다. ▶ multi thread concurrency: thread 사이에 context switching을 하다가, 또한 process 사이에서도 context switching을 하는 것입니다. 예를 들면 process 1과 process 2에 각각 thread a, thread b가 있다고 하면, process 1의 thread a에서 process 2의 thread b로 context swtiching이 일어나면, PC register의 값을 process 1 thread a의 TCB에 저장을 하고, process 2 thread b의 TCB의 PC값을 불러와 PC register 값에 저장을 하면, CPU는 PC register가 가르키는 process 2 thread b의 code 영역을 참조하여 실행을 하게 되는 것입니다.