묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결AWS(Amazon Web Service) 중/상급자를 위한 강의
배포 방식 질문드립니다
안녕하세요 elastic beanstalk의 배포방식 중 트래픽 분할 방식에 대하여 트래픽을 컨트롤해서 capacity가 감소되지 않게 해준다고 설명해주셨는데 잘 이해가 안돼서 질문드립니다 트래픽 분할 방식은 어떤식으로 동작을 해서 capa 감소를 방지해주는지 구체적인 설명 부탁드립니다 감사합니다
-
미해결Do It! 장고+부트스트랩: 파이썬 웹개발의 정석
javascript 넣는 위치 문의드립니다.
이전에 만든 javascript는 head 태그에서 불러왔는데, 부트스트랩의 javascript는 body태그 맨 아래쪽에서 불러오는 이유가 있을까요?
-
해결됨실전 리액트 프로그래밍
Context API vs Redux 사용 빈도
전에 강의를 듣고 제 것으로 못만든 부분이 있어 복습을 하는데 Context API는 Redux를 사용하면 대체가 다 가능한 것으로 저한테는 보이는데 실무에서 redux 대신에 context api를 쓸 경우가 있을까요?
-
미해결따라하며 배우는 TDD 개발 [2023.11 업데이트]
xml파일 여는 툴이 뭘까요?
pdf 자료도 잘 쓰고 있지만 xml 파일도 열어보고 싶은데 방법을 찾지 못해 질문 남깁니다.
-
미해결모두를 위한 파이썬 : 필수 문법 배우기 Feat. 오픈소스 패키지 배포 (Inflearn Original)
중급/심화 프로그래밍(예: TDD, 리팩토링, 멀티프로세스/쓰레드, 코루틴, 클로져등) 학습을 위한 교재 및 링크 추천 부탁드립니다.
안녕하세요. 파이썬 초/중급 및 본 강의를 모두 들었는데요, 파이썬 자체에 대해서는 강의내용으로도 충분이 잘 이해가 가게 설명해주셔서, 많은 도움을 받고 있습니다. 진심으로 감사드립니다. 그런데 제가 전산 전공자가 아니고 파이썬을 접하다 보니, 파이썬 자체보다, 중간에 설명해 주신 여러가지 개념들 (예: TDD, 리팩토링, 멀티프로세스/쓰레드 + 레이스컨디션, 데드락 등등, OOP, 코루틴, 클로져등)에 대해 개념에 대해 잘 알지 못해, 해당 개념을 이해하고, 예제코드, 실제 활용예제 등을 공부해 보고 싶습니다. 물론 하나하나 인터넷을 찾아보면 되겠지만, 회사에서 진행하는 정해진 교육일정(1주) 내에 내용을 다 이해해야 하다보니 시간 제약도 있고, 또한 위에 언급한 내용외에도 공부할 것이 있을텐데, 뭘 공부해야 하는지 조차 잘 모르겠습니다. 그래서 관련 내용들을 학습할 수 있는 도서를 몇개 추천해 주시면 감사하겠습니다. (잘 정리된 링크도 같이 공유해 주신다면 더욱 도움이 되겠습니다.) 감사합니다.
-
미해결홍정모의 따라하며 배우는 C++
10:22 생성자에서 cout 문장의 포함 여부에 따라서 왜 디버거의 행동이 달라지나요?
처음에 메모리 누수가 일어난 코드에서 cout << "Constructor " << endl; 이 문장을 안 써주면 디버깅이 안되고 쓰니까 디버깅이 되던데, 그냥 보여주는거 없이 메모리 누수만 일어나서 안썼을땐 디버거가 디버깅을 못하게 한건가요?
-
미해결
react 질문입니다. 카카오지도api 사용해서 입력값으로 #123 입력시 마커를 띄어주게 만들고 싶은데
입력으로 #123 입력할때 getXY(#123)함수에 들어가서 제가 정해준 좌표로 마커를 찍게끔 만들었는데....안찍어주네여.. 어떻게 해야하나요.. /*global kakao */ import React, {useState, useEffect } from 'react' function Map({searchPlace}) { useEffect(()=>{ mapscript(); }, []); const mapscript = () =>{ var container = document.getElementById('map'); var options = { center: new kakao.maps.LatLng(37.365264512305174, 127.10676860117488), level: 3 }; var map = new kakao.maps.Map(container, options); var position = new kakao.maps.LatLng(37.365264512305174, 127.10676860117488); var marker = new kakao.maps.Marker({ position: position, clickable: true // 마커를 클릭했을 때 지도의 클릭 이벤트가 발생하지 않도록 설정합니다 }); function marking(x,y){ var markerPosition = new kakao.maps.LatLng(37.365264512305174, 127.10676860117488); var marker = new kakao.maps.Marker({ position: markerPosition }); marker.setMap(map) } function getXY(state){ if(state === '#123'){ const setX = 37.365264512305174 const setY = 127.10676860117488 marking(setX,setY); } } getXY(pet_id) // input 데이터에 따라 위치 마커 변경 } const [pet_id, setPetId] = useState(''); console.log("hello = " + pet_id) return ( <div> <div id="map" className = 'centerMap' style={{width:"1500px", height:"800px"}}></div> <input type ="text" onChange= {(event) => {setPetId(event.target.value); }} ></input> </div> ); } export default Map;
-
미해결Node.js로 웹 크롤링하기
선택자 관련 질문 드립니다.
안녕하세요. 선택자 관련해서 잘 이해가 안가는점이 있어 문의드립니다. 크롬 console 에서 $$('tr.abc td')[1].textContent 명령어를 칠 경우 100이라는 숫자를 뽑아옵니다. 소스 코드 상에서 아래와 같이 여러 방법을 사용해봤는데요. 100 이라는 데이터를 못가져오더라고요. 관련해서 어떻게 접근해야 100 이라는 데이터를 가져올 수 있을까요? source code const text = await page.evaluate(() => { const num = document.querySelector('tr.abc td')[1]; return num.textContent;});const text = await page.evaluate(() => { const num = document.querySelectorAll('tr.abc td')[1]; return num;});const text = await page.evaluate(() => { const num = document.querySelector('tr.abc td'); return num;}); HTML 태그입니다. <tr class="abc"> <td class="text">숫자</td> <td>100</td> ... ... </tr>
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
안녕하세요. 테스트중에 csrf()에서 에러가 발생하는데 잘모르겠습니다.
안녕하세요. 다름이 아니라 5:44 쯤에 csrf() 추가해줬는데 이런 에러가 발생하는데 구글링 해봐도 잘 모르겠습니다. ㅜ 감사합니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
mmdetection관련 질문
강사님, 제가 Pascal VOC형태로 구성된 Custom Dataset에 대해 Object Detection을 수행하려고 합니다. 강의에서 잠깐 이야기 하셨던 것 같은데 mmdetection은 COCO 데이터셋의 형태에 맞춰서 구성이 되어있다고 하셨던 것 같은데 Pascal VOC 데이터셋의 형태로 구성되어 있는 Custom Dataset에 대해서는 kitti 데이터셋을 학습시키듯이 mmdetection의 CustomDataset을 상속 받아서 수행할 수 있는 건가요? 제 Custom Dataset은 data폴더 아래에 여러 폴더들로 구성되어 있고 하나의 폴더는 아래 그림과 같이 여러 이미지들을 저장하고 있는 1폴더와 여러 이미지들에 대해 annotation을 xml형식으로 저장하고 있는 1_annotations_v001_1폴더로 구성되어 있습니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
table-per-class 방식에서 Identity 전략 사용에 대하여...
안녕하십니까 영한님. 강의 잘 듣고 있습니다. 강의를 듣던 중 클래스 별로 테이블을 가진다면 Identity 전략일 때 ID를 어떻게 가지게 되는지 궁금해서 실험해봤는데 에러가 발생하였습니다. 혼자서 생각한 바로는 부모 클래스에서 @ID를 사용한다는 것은, 자식별로 테이블을 따로 가져간다 하더라도 id 값은 달라야 하는 것으로 이해했고, Identity 전략을 허용할 경우 몇 번까지 id를 사용했는지 알 수 없기 때문에 같은 값이 들어가는 오류를 막기 위해서 테이블 create 시점에서 부터에 에러가 내는 것으로 이해되었는데 혼자 생각한 내용이기에 틀렸을 수도 있어 확인차 질문 올립니다ㅠㅠ
-
미해결실전! Querydsl
QueryDsl 테스트 작성 질문있습니다.
그냥 데이터베이스는 여러개가 있어서 entityManager가 여러개 생기는 것을 @Qualifier 로 구분할 수 있더라구요그런데 테스트를 작성할 때 서비스용 디비와 테스트용 디비를 구분하면 테스트 디비의 entityManager 로 JPAQueryFactory 를 생성해야 하는데 이 부분을 어떻게 처리할 수 있을까요?
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
jpa 테스트시 계속 오류가 나네요;...
IDENTIFY 설정시 insert 시 키값을 자동으로 설정해서 받아오는 걸로 이해했는데 null 에러인지 발생하는거 같아요. 데이터 넣어놓고 읽어오는건 괜찮은거 같은데 insert가 잘 안되네요;.. javax.persistence.PersistenceException: org.hibernate.exception.ConstraintViolationException: could not execute statement at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:154) at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:181) at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:188) at org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:780) at org.hibernate.internal.SessionImpl.persist(SessionImpl.java:760) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:311) at com.sun.proxy.$Proxy87.persist(Unknown Source) at com.example.demospring.repository.JpaMemberRepository.save(JpaMemberRepository.java:17) at com.example.demospring.service.MemberService.join(MemberService.java:26) at com.example.demospring.service.MemberService$$FastClassBySpringCGLIB$$25787b35.invoke(<generated>) at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:783) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:753) at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:753) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:698) at com.example.demospring.service.MemberService$$EnhancerBySpringCGLIB$$972d7024.join(<generated>) at com.example.demospring.service.MemberServiceIntegrationTest.회원가입(MemberServiceIntegrationTest.java:27) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:725) at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60) at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131) at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:149) at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:140) at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:84) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor$$Lambda$165/0x0000000000000000.apply(Unknown Source) at org.junit.jupiter.engine.execution.ExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(ExecutableInvoker.java:115) at org.junit.jupiter.engine.execution.ExecutableInvoker$ReflectiveInterceptorCall$$Lambda$166/0x0000000000000000.apply(Unknown Source) at org.junit.jupiter.engine.execution.ExecutableInvoker.lambda$invoke$0(ExecutableInvoker.java:105) at org.junit.jupiter.engine.execution.ExecutableInvoker$$Lambda$369/0x0000000000000000.apply(Unknown Source) at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106) at org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64) at org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45) at org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37) at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:104) at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:98) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:214) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor$$Lambda$927/0x0000000000000000.execute(Unknown Source) at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:210) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:135) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:66) at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151) at org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda$813/0x0000000000000000.execute(Unknown Source) at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) at org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda$255/0x0000000000000000.invoke(Unknown Source) at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) at org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda$254/0x0000000000000000.execute(Unknown Source) at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService$$Lambda$240/0x0000000000000000.accept(Unknown Source) at java.base/java.util.ArrayList.forEach(ArrayList.java:1541) at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41) at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155) at org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda$813/0x0000000000000000.execute(Unknown Source) at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) at org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda$255/0x0000000000000000.invoke(Unknown Source) at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) at org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda$254/0x0000000000000000.execute(Unknown Source) at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService$$Lambda$240/0x0000000000000000.accept(Unknown Source) at java.base/java.util.ArrayList.forEach(ArrayList.java:1541) at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41) at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155) at org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda$813/0x0000000000000000.execute(Unknown Source) at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) at org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda$255/0x0000000000000000.invoke(Unknown Source) at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) at org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda$254/0x0000000000000000.execute(Unknown Source) at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35) at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57) at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:107) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:88) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:54) at org.junit.platform.launcher.core.EngineExecutionOrchestrator$$Lambda$216/0x0000000000000000.accept(Unknown Source) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:67) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:52) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114) 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.startRunnerWithArgs(IdeaTestRunner.java:33) at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:220) at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:53) Caused by: org.hibernate.exception.ConstraintViolationException: could not execute statement at org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert(SQLExceptionTypeDelegate.java:59) at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:37) at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:113) at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:99) at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:200) at org.hibernate.dialect.identity.GetGeneratedKeysDelegate.executeAndExtract(GetGeneratedKeysDelegate.java:57) at org.hibernate.id.insert.AbstractReturningDelegate.performInsert(AbstractReturningDelegate.java:43) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3279) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3885) at org.hibernate.action.internal.EntityIdentityInsertAction.execute(EntityIdentityInsertAction.java:84) at org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:645) at org.hibernate.engine.spi.ActionQueue.addResolvedEntityInsertAction(ActionQueue.java:282) at org.hibernate.engine.spi.ActionQueue.addInsertAction(ActionQueue.java:263) at org.hibernate.engine.spi.ActionQueue.addAction(ActionQueue.java:317) at org.hibernate.event.internal.AbstractSaveEventListener.addInsertAction(AbstractSaveEventListener.java:330) at org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:287) at org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:193) at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:123) at org.hibernate.event.internal.DefaultPersistEventListener.entityIsTransient(DefaultPersistEventListener.java:185) at org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:128) at org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:55) at org.hibernate.internal.SessionImpl$$Lambda$1709/0x0000000000000000.accept(Unknown Source) at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:107) at org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:774) ... 105 more Caused by: org.h2.jdbc.JdbcSQLIntegrityConstraintViolationException: NULL not allowed for column "ID"; SQL statement: insert into member (id, name) values (null, ?) [23502-202] at org.h2.message.DbException.getJdbcSQLException(DbException.java:508) at org.h2.message.DbException.getJdbcSQLException(DbException.java:477) at org.h2.message.DbException.get(DbException.java:223) at org.h2.message.DbException.get(DbException.java:199) at org.h2.table.Column.validateConvertUpdateSequence(Column.java:365) at org.h2.table.Table.convertInsertRow(Table.java:931) at org.h2.command.dml.Insert.insertRows(Insert.java:167) at org.h2.command.dml.Insert.update(Insert.java:135) at org.h2.command.CommandContainer.executeUpdateWithGeneratedKeys(CommandContainer.java:246) at org.h2.command.CommandContainer.update(CommandContainer.java:167) at org.h2.command.Command.executeUpdate(Command.java:247) at org.h2.server.TcpServerThread.process(TcpServerThread.java:413) at org.h2.server.TcpServerThread.run(TcpServerThread.java:190) at java.base/java.lang.Thread.run(Thread.java:836) at org.h2.message.DbException.getJdbcSQLException(DbException.java:459) at org.h2.engine.SessionRemote.done(SessionRemote.java:611) at org.h2.command.CommandRemote.executeUpdate(CommandRemote.java:237) at org.h2.jdbc.JdbcPreparedStatement.executeUpdateInternal(JdbcPreparedStatement.java:191) at org.h2.jdbc.JdbcPreparedStatement.executeUpdate(JdbcPreparedStatement.java:152) at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeUpdate(ProxyPreparedStatement.java:61) at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeUpdate(HikariProxyPreparedStatement.java) at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:197) ... 124 more
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
TableGenerator 의 경우 롤백이 되어도 시퀀스 값이 롤백되지 않는데 정상인가요?
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용] 작성한 엔티티는 다음과 같습니다. @Entity@Getter@Setter@NoArgsConstructor@TableGenerator( // 테이블 제너레이터를 사용하는 경우에는 반드시 @Id 명시되어 있어야 테이블 생성이 됩니다 name = "TABLE_GENERATOR", table = "SEQ_TABLE", pkColumnValue = "COL_GEN_TAB", allocationSize = 1)public class TableType { @Id @GeneratedValue(strategy = GenerationType.TABLE, generator = "TABLE_GENERATOR") private Long id; private String name; public TableType(String name) { this.name = name; }} 실행 시에 의도적으로 예외를 던져서 롤백을 했지만, SEQ_TABLE 에는 시퀀스가 롤백되지 않고 1로 늘어나 있었는데 왜 그런지 궁금합니다. TableType table = new TableType("테이블");em.persist(table);System.out.println(table);if (table.getName().equals("테이블")) throw new RuntimeException("오류 발생");
-
미해결게임 엔진을 지탱하는 게임 수학
혹시 쉐이더 강의
혹시 쉐이더 강의도 계획하고 계실까요?
-
미해결따라하며 배우는 리액트 테스트 [2023.11 업데이트]
빨간줄질문입니다...!
안녕하세요 선생님 타입스크립트로 따라하면서 배우고 있습니다. Type.test.ts 에서 element에 alt가 없어서 빨간줄로 뜹니다. 테스트는 잘되는거보니 있는 실제로는 요소 같은데 왜 빨간줄이 뜨는 걸까요? summaryPage test 에서도 이런 경우가 있엇는데 checked는 없고 area-checked는 있다고 뜨더라고요... 일단 이렇게 해결하고 넘어가기는 했습니다. 근데 이렇게 계속 오류가 나면 마음이 좀 불편해서 그런데 해결책 있을까요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
마이바티스와 JPA 혼용 질문
마이바티스와 JPA 와 같이 사용하는것에 대한 질문이 있습니다. 마이바티스를 사용하려면 JPA 엔티티말고 새로운 도메인(객체)를 생성해서 사용해야 하나요? 혹시나 엔티티를 바로 사용할 수 있다면, @Entity@Getterpublic class Comment { @Id @GeneratedValue @Column(name = "comment_id") private Long id; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "member_id") private Member member;} 이엔티티의 경우 Comment.id는 필드로 사용할 수 있는데멤버의 id를 사용하려면 어떻게 해야하나요??아마 마이바티스용 객체를 만든다 치면 public class Comment2 { private Long comment_id; private Long member_id;} 이렇게 되겠죠.. 즉.. 연관관계 매핑된 객체의 id를 어떻게 사용 할 수 있을까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
Model 클래스
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 1. MVC와 템플릿 엔진에 소스코드에는 매개변수로 Model model을 받았는데 API에서는 받지 않는 이유가 HTTP body에 직접 넣어주기 때문인가요? 2. 제가 막 자바 기본 문법을 끝냈는데, 그 다음으로 이 수업을 듣는게 맞을까요? Model 클래스와 같이 이해 안가는 부분들이 있어서요 ㅠㅠ
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
inheritanceType.JOINED에 대한 고찰
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요! 먼저 좋은 강의 선보여주셔서 감사합니다. 강의를 듣고 토이 프로젝트를 진행하며 겪은 문제점에 대해 해법이 잘 떠오르지 않아 질문 드립니다. 현재 엔티티는 아래와 같이 설계 하였습니다. @Entity @Inheritance(strategy = InheritanceType.JOINED) @DiscriminatorColumn public abstract class Catalog extends BaseEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; private Integer price; private Integer stockQuantity; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "category_id") private Category category; } @Entity @DiscriminatorValue(value = "SUPPLEMENT") public class Supplement extends Catalog { private Integer capacity; // 용량 } @Entity @DiscriminatorValue(value = "SPORT_WEAR") public class SportWear extends Catalog { private SportWearSizeEnum size; // 사이즈 } 위와 같이 설계 되었을 때 컨트롤러와 서비스를 구축하는데 어떻게 접근해야 할지 고민입니다. 제가 생각해본 해결법은 총 2가지 였습니다. 1. 각 서브 엔티티마다 컨트롤러 서비스 리파지토리를 새로 만든다. - 이 방법은 테이블이 생길때 마다 컨트롤러가 추가되며 도메인에 의존적인 것이 아닌 데이터베이스에 의존적인 설계라 생각이 들어 가장 쉬운 설계 였지만 마음에 들지 않았습니다. 2. 자바 제네릭 사용 - 자바의 제네릭을 사용하여 CatalogService를 주입받을 때 CatalogService<SportWear> 의 형식으로 사용해보기로 하였습니다. 하지만 이 방식 또한 카탈로그에 해당하는 테이블이 추가될 때마다 컨트롤러에 CatalogService<Others>의 형식으로 코드가 추가된다는 점이 마음에 들지 않았습니다. 그래서 제가 생각한 마지막 방법은 인터페이스를 사용하는 방식입니다. 이 방식은 부족한 제 지식으로 인해 아직 명확한 설계법은 고안해내지 못한 상태입니다. 또한, 테이블 마다 받게 되는 Request, Response, DTO가 각각 다른 상황에서 어떻게 하면 유연한 설계 방식으로 가져가야할지 많은 고민이 있습니다. inheritanceType.JOINED 을 사용하실 때 어떤 방식으로 Controller, Service, Repository를 설계하시는지 궁금합니다.
-
해결됨진짜 현업에서 쓰이는 직장인의 실무 엑셀 - 데이터 가공부터 분석까지
온라인주문내역 분석 파일... 도움을 부탁드립니다.
안녕하세요. 이 바로 아래 제가 올린 문의와 연관된 문의를 다시 드리게 되었습니다... 하지만 아래 문의를 다시 보실 필요 없이... 아래와 같이 정리해 봤습니다. (문의할 때 엑셀파일을 업로드할 수 없어서...화면캡처로 대신합니다. 죄송합니다.) raw data를 변경해서 받을 방법이 현재로썬 없다보니 쉽지 않아서 다시 도움을 요청드립니다. 감사합니다.