묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
강의를 듣고 응용해봤는데 질문있습니다
강의의 게시판 만들기 부분을 실습하고 나서 게시글 양식으로 만드셨던 board_list_item.xml을 이렇게 변경해봤습니다. 나머지 글들은 강의에서 하던대로 따라해서 불러와지는게 되는데 제가 추가한 저 초록색사진은 글을 작성할때 즉 강의 상의 코드인 BoardWriteActivity.kt에서 사진이 첨부되면 그 첨부된 사진이 저 초록색사진에 같이 업로드 되게끔 만들고 싶습니다. 저 사진의 id값은 preview입니다. <?xml version="1.0" encoding="utf-8"?><ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".Sell"> <FrameLayout android:layout_width="match_parent" android:layout_height="match_parent"> <androidx.appcompat.widget.Toolbar android:id="@+id/toolbar2" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="?attr/colorPrimary" android:minHeight="?attr/actionBarSize" android:theme="?attr/actionBarTheme" app:titleTextColor="@color/white" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="판매글 작성" android:textSize="23sp" android:textStyle="bold"/> </androidx.appcompat.widget.Toolbar> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:orientation="vertical"> <EditText android:id="@+id/et_newtitle" android:layout_width="330dp" android:layout_height="50dp" android:layout_marginLeft="20dp" android:layout_marginTop="70dp" android:gravity="center" android:maxLength="15" /> <EditText android:id="@+id/et_originalname" android:layout_width="330dp" android:layout_height="50dp" android:layout_marginLeft="20dp" android:layout_marginTop="20dp" android:gravity="center" android:hint="※주의 : 책 제목 그대로 써주세요 ※" android:maxLength="100" /> <EditText android:id="@+id/et_price" android:layout_width="330dp" android:layout_height="50dp" android:hint="숫자 옆에 원을 붙여주세요" android:layout_marginLeft="20dp" android:layout_marginTop="20dp" android:gravity="center" android:maxLength="10" /> <ImageView android:id="@+id/imageupload" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/baseline_add_black_48dp" android:layout_marginTop="30dp" /> <EditText android:id="@+id/et_newdetail" android:layout_width="334dp" android:layout_height="260dp" android:layout_marginLeft="20dp" android:layout_marginTop="30dp" android:layout_marginBottom="10dp" android:background="@drawable/boxline" android:ems="10" android:gravity="top" android:hint="내용을 입력하세요." android:maxHeight="200dp" android:maxLength="200" /> <LinearLayout android:layout_width="wrap_content" android:layout_height="96dp" android:layout_marginBottom="60dp" android:gravity="center" android:orientation="horizontal" android:paddingTop="30dp"> <Button android:id="@+id/upload" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="50dp" android:text="올리기" /> <Button android:id="@+id/cancel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="취소" /> </LinearLayout> </LinearLayout> <FrameLayout android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/newtitle" android:layout_width="35dp" android:layout_height="wrap_content" android:layout_marginLeft="15dp" android:layout_marginTop="90dp" android:text="제목" android:textSize="16sp" /> <TextView android:id="@+id/newname" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="12dp" android:layout_marginTop="160dp" android:text="상품명" android:textSize="15sp" /> <TextView android:id="@+id/price" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:layout_marginTop="235dp" android:text="판매가격" android:textSize="13sp" /> <TextView android:id="@+id/newpicture" android:layout_width="35dp" android:layout_height="17dp" android:layout_marginLeft="15dp" android:layout_marginTop="300dp" android:text="사진" android:textSize="16sp" /> <TextView android:id="@+id/newdetail" android:layout_width="35dp" android:layout_height="28dp" android:layout_marginLeft="15dp" android:layout_marginTop="370dp" android:text="내용" android:textSize="16sp" /> </FrameLayout> </FrameLayout></ScrollView> package com.example.joonggo2import android.content.Intentimport android.graphics.Bitmapimport android.graphics.drawable.BitmapDrawableimport android.net.Uriimport android.os.Bundleimport android.provider.MediaStoreimport android.util.Logimport android.widget.Buttonimport android.widget.Toastimport androidx.appcompat.app.AppCompatActivityimport com.bumptech.glide.Glideimport com.example.joonggo2.databinding.ActivityBoardInsideBindingimport com.example.joonggo2.databinding.ActivityMainBindingimport com.example.joonggo2.databinding.ActivityMifBindingimport com.example.joonggo2.databinding.ActivitySellBindingimport com.google.firebase.ktx.Firebaseimport com.google.firebase.storage.ktx.storageimport java.io.ByteArrayOutputStreamclass Sell : AppCompatActivity() { private lateinit var binding: ActivitySellBinding private val TAG = Sell::class.java.simpleName val storage = Firebase.storage private var isImageUpload = false override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding = ActivitySellBinding.inflate(layoutInflater) setContentView(binding.root) binding.upload.setOnClickListener{ val title = binding.etNewtitle.text.toString() val originalname = binding.etOriginalname.text.toString() val price = binding.etPrice.text.toString() val content = binding.etNewdetail.text.toString() val uid = FBAuth.getUid() val time = FBAuth.getTime() Log.d(TAG, title) Log.d(TAG, content) val key = FBRef.writein.push().key.toString() FBRef.writein .child(key) .setValue(BoardModel(title, originalname, price, content, uid, time)) Toast.makeText(this,"게시물이 업로드 되었습니다.", Toast.LENGTH_LONG).show() if(isImageUpload == true) { imageUpload(key) } val intent = Intent(this, AfterLoginmain::class.java) intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP) startActivity(intent) } binding.cancel.setOnClickListener { val intent = Intent(this, AfterLoginmain::class.java) intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP) startActivity(intent) } binding.imageupload.setOnClickListener { val gallery = Intent(Intent.ACTION_PICK, MediaStore.Images.Media.INTERNAL_CONTENT_URI) startActivityForResult(gallery, 100) isImageUpload = true } } private fun imageUpload(key : String) {// Get the data from an ImageView as bytes val storageRef = storage.reference val mountainsRef = storageRef.child(key + ".png") val imageView = binding.imageupload imageView.isDrawingCacheEnabled = true imageView.buildDrawingCache() val bitmap = (imageView.drawable as BitmapDrawable).bitmap val baos = ByteArrayOutputStream() bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos) val data = baos.toByteArray() var uploadTask = mountainsRef.putBytes(data) uploadTask.addOnFailureListener { // Handle unsuccessful uploads }.addOnSuccessListener { taskSnapshot -> // taskSnapshot.metadata contains file metadata such as size, content-type, etc. // ... } } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { super.onActivityResult(requestCode, resultCode, data) if(resultCode == RESULT_OK && requestCode == 100) { binding.imageupload.setImageURI(data?.data) } }} 위 사진두개는 강의에서 하신 BoardWriteActivity.kt와 역할이 같은 xml과 kt파일입니다. 지금 이 코드에서 글과 갤러리에서 사진을 첨부하는 기능은 모두 구현되어있습니다. 그런데 사진도 메인화면에 뜨게끔 하려니 너무 막막해서 질문드립니다...
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
java.lang.NoSuchMethodError 에러가 해결이 안됩니다..
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 간단한 예제 작성이고, 기존에 잘 진행하던 H2 DB인데, 어느날 부터 갑자기 이런 오류 메세지가 뜨면서 테이블생성은 되나 입력 값이 전혀 들어가지 않는 오류가 발생하기 시작하였습니다. 이유를 도저히 찾을수가 없어서 질문 올립니다. 답 해주시면 감사하겠습니다. Hibernate: drop table if exists Item CASCADE 5월 07, 2022 2:09:36 오후 org.hibernate.resource.transaction.backend.jdbc.internal.DdlTransactionIsolatorNonJtaImpl getIsolatedConnection INFO: HHH10001501: Connection obtained from JdbcConnectionAccess [org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess@2102a4d5] for (non-JTA) DDL execution was not in auto-commit mode; the Connection 'local transaction' will be committed and the Connection will be set into auto-commit mode. Hibernate: drop table if exists Member CASCADE Hibernate: drop table if exists OrderItem CASCADE Hibernate: drop table if exists ORDERS CASCADE Hibernate: drop sequence if exists hibernate_sequence Hibernate: create sequence hibernate_sequence start with 1 increment by 1 5월 07, 2022 2:09:36 오후 org.hibernate.resource.transaction.backend.jdbc.internal.DdlTransactionIsolatorNonJtaImpl getIsolatedConnection INFO: HHH10001501: Connection obtained from JdbcConnectionAccess [org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess@1e886a5b] for (non-JTA) DDL execution was not in auto-commit mode; the Connection 'local transaction' will be committed and the Connection will be set into auto-commit mode. Hibernate: create table Item ( ITEM_ID bigint not null, name varchar(255), price integer not null, stockQuantity integer not null, primary key (ITEM_ID) ) Hibernate: create table Member ( MEMBER_ID bigint not null, city varchar(255), name varchar(255), street varchar(255), zipcode varchar(255), primary key (MEMBER_ID) ) Hibernate: create table OrderItem ( ORDER_ITEM_ID bigint not null, count integer not null, ITEM_ID bigint, ORDER_ID bigint, orderPrice integer not null, primary key (ORDER_ITEM_ID) ) Hibernate: create table ORDERS ( ORDER_ID bigint not null, MEMBER_ID bigint, orderDate timestamp, status varchar(255), primary key (ORDER_ID) ) 5월 07, 2022 2:09:36 오후 org.hibernate.engine.transaction.jta.platform.internal.JtaPlatformInitiator initiateService INFO: HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] 5월 07, 2022 2:09:36 오후 org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl$PoolState stop INFO: HHH10001008: Cleaning up connection pool [jdbc:h2:tcp://localhost/~/jpashop] Exception in thread "main" java.lang.NoSuchMethodError: org.hibernate.annotations.common.reflection.ReflectionManager.reset()V at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:414) at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:471) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1498) at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:56) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:79) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54) at jpabook.jpashop.JpaMain.main(JpaMain.java:14)
-
미해결JIRA를 활용해 더 효과적으로 프로젝트 협업하기
jira 모바일 앱에서 날짜 추가는 어떻게 하나요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. jira 모바일 앱에 대해서 문의 드립니다jira 모바일 앱에서 날짜 추가는 어떻게 하나요?찾을수가 없습니다pc에서는 // 하면 캘린더로 날짜 추가가 나옵니다하지만 모바일에서는 이기능을 찾을수 없습니다모바일에서는 어떻게 캘린더로 날짜 추가를 합니까?
-
미해결JIRA를 활용해 더 효과적으로 프로젝트 협업하기
jira 이슈 외부 출력(pdf나 word 등) 앱에 대해 문의드립니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. jira 이슈 외부 출력(pdf나 word 등) 지원앱에 대해 문의드립니다 1. 목적은 최대한 손이 들가게 이슈를 pdf나 word등으로 출력해서 바로 보관이나 제출할수 있는 앱입니다2. 해당 이슈 작업에 대해 출력 하여 서버등에 보관을 할려고 하는데 제가아는 지원앱등으로 pdf 출력 후 보면 해당 이슈의 사진이 표시가 안되거나 되더라도 바로쓰기에는 모호합니다.한번더 손을 거쳐 작업 후 보관을 해야 합니다3. 하여, 제가 찾는 지원앱은 이슈를 word나 pdf 등으로 출력하면 사진 등이 댓글 에 그대로 들어가 있고 따로 정리를 안해도 그 상태로 보관을 해도 되는 정도 수준의 출력 지원앱이 있을까요?4. 아니면 출력 양식 형식을 제가 설정해서 출력할수 있는 앱이 있을까요?출력 앱들을 찾아 써봐도 원하는 수준의 앱을 찾기 힘들어서 문의 드립니다.아니면 , 어떤식으로 이슈의 내용들을 정리를 해서 보관해야 할까요?
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
@Transactional 관련 커넥션풀 반환 원리 질문드립니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 아니오[질문 내용]안녕하세요. 커넥션풀 반환에 관련되서 질문드리고자 합니다. 서비스단의 메소드에 @Transactional 을 사용해서 생성된 프록시의 마지막에 커넥션을 반환하는것으로 이해해습니다. @Transactional은 보통 update,insert,delete 쿼리가 존재하는 곳에 붙이는 것으로 알고 있는데요. 단순히 조회만하는 메서드에서 @Transactional을 안붙여도 어떻게 커넥션 풀이 반환되는지 궁금합니다. Service.java 코드에서 가령 10개의 메서드가 있는데 1개만 @Transactional이 붙여도 해당 클래스는 프록시가 생성되어 모든 메서드에 커넥션 풀이 반환되는 부분이 들어가는것으로 이해됩니다. 그렇다면 controller에서 바로 repository 메서드(select, update, insert, delete 등)를 호출해도 커넥션풀이 반환되는걸까요? 반환이된다면 원리가 궁금합니다. ※ 추가질문강의 내용 일부 중 JPA 트랜잭션 코드 예시에서 엔티티매니저 종료 & 엔티티 매니저 팩토리 종료 부분이 있는데 해당 부분이 커넥션 풀을 반환하는 것으로 이해하면 될까요?
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
혹시 책E북으로는 출간이 안될까요!?
안녕하세요! 해외에서 수강 신청한 학생입니다..^^ 일단 대뜸 강의부터 결제를 했는데... 외국이다보니 도무지 책을 구할 방법이 없네요..ㅠㅠㅠ 혹시 E북으로 출간된거나 온라인교재는 없을까요? 감사합니다..^^
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
StratifiedKFold 에서 iloc 사용 문의드립니다.
안녕하세요, 강의 잘 듣고 있습니다. StratifiedKFold 실습 코드의 아래 부분에서 iloc은 위치 기반 인덱싱이라고 알고 있는데 train_index, test_index가 들어가도 문제 없이 동작하는 이유가 궁금합니다. for train_index, test_index in skf.split(iris_df, iris_df['label']): n_iter += 1 label_train= iris_df['label'].iloc[train_index] label_test= iris_df['label'].iloc[test_index]
-
미해결일잘하는 마케터, MD에게 꼭 필요한 파이썬 데이터 분석
기상청 기온정보 크롤링 관련 질문
안녕하세요, 기상청 기온정보 크롤링 관련 질문이 있습니다. 현재 기상청 접속 URL 이 아래와 같이 변경된 것으로 보입니다. https://www.weather.go.kr/w/obs-climate/land/past-obs/obs-by-day.do?stn=108&yy=2021&mm=12&obs=1 또한 태그 구조나 명칭도 변경된 것 같은데 weather_info로 클래스 가져오는 부분에 넣어야 할 클래스명은 아래와 같이 over-scroll 이라는 이름으로 변경하는 것으로 생각했습니다. weather_infor = soup.select(".over-scroll") 위와 같이 변경해봤습니다. 위 조건에서 weather info를 확인해보니 다음과 같았습니다. 강의에서 나온 태그 구조나 클래스 이름이 모두 변경된 것 같아서 예를 들어 기상청 사이트에서 21년 12월 1일의 태그 형식이 아래와 같습니다. 위의 조건에서 아래 코드를 실행하면 강사님 결과와 같은 결과가 나오지 않습니다. 아래 코드는 진행에 문제가 있었습니다. # 기온정보 list_climate_info = list() # 일자정보 list_day_info = list() for day_weather in weather_info: # 작업 1. 공백문자 제거 if(day_weather.get_text().isspace() != True): # 작업 1-1. 기온정보 if(day_weather.get_text().find("평균기온") == 0): list_climate_info.append(day_weather.get_text()) # 작업 1-2. 일자정보 else: list_day_info.append(day_weather.get_text()) 제가 변경한 조건에서 위 코드를 실행하면.... 아래와 같이 동일한 결과가 아닌데 어떻게 변경해야할지 모르겠습니다. 도움을 부탁드립니다.
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
회사에서 격리 수준을 커밋되지 않은 읽기 방식 채택해서 사용중 질문
강의내용에서 커밋된 읽기 방식을 많이 들 사용한다고 하시는데 정작 제가 재직중의 회사의 경우 커밋되지 않은 읽기 방식을 채택중에 있습니다. 지금까지 아는 봐로는 커밋되지 않은 읽기 방식을 채택할경우 SEELCT면에서 데이터를 빨리 읽을 수 있기 때문에 사용하는 것으로 인지하고 있습니다. 대용량 데이터를 다루는 케이스에서는 커밋되지 않은 읽기 방식은 적당하지 않은 방식일지 궁금합니다.
-
미해결AWS(Amazon Web Service) 입문자를 위한 강의
취합한 강의 자료를 받을 수 있을까요?
안녕하세요 선생님! 그동안 그냥 강의 설렁설렁 듣다가 한 번 시험을 보고자 해서 SA 시험을 등록했습니다. 쭉 공부하고자 하여서 그런데 혹시 강의교안 전체 합친 pdf가 있다면 받을 수 있을까요? 그리고 이 강의랑 중상급자 강의 모두 가지고 있는데, 두 강의를 열심히 학습하면 SA시험 합격할 수 있는 정도는 될까요? (물론 기출문제를 열심히 풀기+알파 가 필요하겠지만요...)
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
YOLOR 독학 중 질문드립니다.
안녕하세요. 강의의 yolo 파트를 혼자 수강하고, 스스로 추가 실습으로 현재 real time detection의 sota인 YOLOR을 혼자 독학하고 있습니다. 5일 간 train evaluation에서 에러를 수정하지 못해서, 혹시나 하는 마음에 이렇게 도움을 요청해봅니다. https://drive.google.com/file/d/1mNBu7aLV61pdet9X2dE2uGiacxFbKpAo/view?usp=sharing 현재 제가 작업하고 있는 colab파일인데, train까지는 문제 없이 잘 진행 됩니다. 근데 test.py를 통해서 mAP 값을 구하려고 하는데, 자꾸 에러가 뜨고, 아무리 구글링하고 찾아봐도 방법을 모르겠습니다. !python test.py --data ./test.yaml --weights /content/drive/MyDrive/best.pt --img 416 --device 0 으로 실행시키면 Namespace(augment=False, batch_size=32, cfg='cfg/yolor_p6.cfg', conf_thres=0.001, data='./test.yaml', device='0', exist_ok=False, img_size=416, iou_thres=0.65, name='exp', names='data/coco.names', project='runs/test', save_conf=False, save_json=False, save_txt=False, single_cls=False, task='val', verbose=False, weights=['/content/drive/MyDrive/best.pt']) Using torch 1.7.0 CUDA:0 (Tesla T4, 15109MB) Model Summary: 665 layers, 36843816 parameters, 36843816 gradients, 80.379953800 GFLOPS WARNING: --img-size 416 must be multiple of max stride 64, updating to 448 Scanning labels valid/labels.cache3 (202 found, 0 missing, 70 empty, 0 duplicate, for 272 images): 272it [00:00, 21758.26it/s] Class Images Targets P R mAP@.5 mAP@.5:.95: 0% 0/9 [00:01<?, ?it/s] Traceback (most recent call last): File "test.py", line 330, in <module> save_conf=opt.save_conf, File "test.py", line 226, in test plot_images(img, output_to_target(output, width, height), paths, f, names) # predictions File "/content/yolor/utils/plots.py", line 108, in output_to_target return np.array(targets) File "/usr/local/lib/python3.7/dist-packages/torch/tensor.py", line 630, in __array__ return self.numpy() TypeError: can't convert cuda:0 device type tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory first.
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
OneToMany 페치 조인 문제
현재 그룹 조회 API를 구현하고 있습니다. 메신저 앱 처럼 그룹 조회시 그룹 아이디, 그룹 이름, 그룹 이미지, 그룹에 속해있는 멤버들 (컬렉션)을 조회해 와야합니다. 여기서 강의의 V3 내용처럼 1 + N 문제를 해결하기 위해서 다음과 같이 페치 조인을 사용하여 쿼리문을 작성하였습니다. TeamRepository.java @Transactional(readOnly = true) public interface TeamRepository extends JpaRepository<Team, Long> { @Query("select distinct t from Team t" + " join fetch t.id id" + " join fetch t.groupName gn" + " join fetch t.imageUrl iu" + " join fetch t.teamMembers tm" + " join fetch tm.member m" + " where tm.id = :id") List<SearchGroupResponse> findGroupInfoWithMembers(@Param("id") Long id); } `Team.java` @Entity @Getter @NoArgsConstructor(access = AccessLevel.PROTECTED) public class Team extends BaseEntity { @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "member_id") private Member member; @Column(length = 30) private String groupName; @Lob private String imageUrl; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "place_id") private Place place; @OneToMany(mappedBy = "team", cascade = CascadeType.ALL) private final List<TeamMember> teamMembers = new ArrayList<>(); private LocalDateTime date; } TeamMember.java @Entity @Getter @Table(name = "GroupMember") @NoArgsConstructor(access = AccessLevel.PROTECTED) public class TeamMember extends BaseEntity { @ManyToOne(fetch = LAZY) @JoinColumn(name = "member_id") private Member member; @ManyToOne(fetch = LAZY) @JoinColumn(name = "team_id") private Team team; @Column(length = 100) private String curLocate; private char arrived; public TeamMember(Member member, Team team) { this.member = member; this.team = team; } } 강의 V3-1 과 같이 컬랙션 데이터는 지연 로딩과 BatchSize를 적용하여 성능 최적화를 해줘야 된다고 배웠지만 일단은 V3를 적용해 보고 개선해 보고자 이렇게 코드를 작성해 보았습니다. 하지만 다음과 같은 에러가 발생하였고 이를 해결하고자 여러 구글링을 해보았지만 해답을 찾지 못하여 질문 남겨봅니다. org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'promiseController' defined in file [/Users/sanha/SpringStudy/promisor/out/production/classes/promisor/promisor/domain/promise/api/PromiseController.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'promiseService' defined in file [/Users/sanha/SpringStudy/promisor/out/production/classes/promisor/promisor/domain/promise/service/PromiseService.class]: Unsatisfied dependency expressed through constructor parameter 2; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'teamRepository' defined in promisor.promisor.domain.team.dao.TeamRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is org.springframework.data.repository.query.QueryCreationException: Could not create query for public abstract java.util.List promisor.promisor.domain.team.dao.TeamRepository.findGroupInfoWithMembers(java.lang.Long)! Reason: Validation failed for query for method public abstract java.util.List promisor.promisor.domain.team.dao.TeamRepository.findGroupInfoWithMembers(java.lang.Long)!; nested exception is java.lang.IllegalArgumentException: Validation failed for query for method public abstract java.util.List promisor.promisor.domain.team.dao.TeamRepository.findGroupInfoWithMembers(java.lang.Long)! at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:953) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) ~[spring-context-5.3.15.jar:5.3.15] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.15.jar:5.3.15] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145) ~[spring-boot-2.6.3.jar:2.6.3] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:732) ~[spring-boot-2.6.3.jar:2.6.3] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:414) ~[spring-boot-2.6.3.jar:2.6.3] at org.springframework.boot.SpringApplication.run(SpringApplication.java:302) ~[spring-boot-2.6.3.jar:2.6.3] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.6.3.jar:2.6.3] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.6.3.jar:2.6.3] at promisor.promisor.PromisorApplication.main(PromisorApplication.java:12) ~[classes/:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:564) ~[na:na] at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) ~[spring-boot-devtools-2.6.3.jar:2.6.3] Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'promiseService' defined in file [/Users/sanha/SpringStudy/promisor/out/production/classes/promisor/promisor/domain/promise/service/PromiseService.class]: Unsatisfied dependency expressed through constructor parameter 2; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'teamRepository' defined in promisor.promisor.domain.team.dao.TeamRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is org.springframework.data.repository.query.QueryCreationException: Could not create query for public abstract java.util.List promisor.promisor.domain.team.dao.TeamRepository.findGroupInfoWithMembers(java.lang.Long)! Reason: Validation failed for query for method public abstract java.util.List promisor.promisor.domain.team.dao.TeamRepository.findGroupInfoWithMembers(java.lang.Long)!; nested exception is java.lang.IllegalArgumentException: Validation failed for query for method public abstract java.util.List promisor.promisor.domain.team.dao.TeamRepository.findGroupInfoWithMembers(java.lang.Long)! at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1389) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1309) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.15.jar:5.3.15] ... 24 common frames omitted Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'teamRepository' defined in promisor.promisor.domain.team.dao.TeamRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is org.springframework.data.repository.query.QueryCreationException: Could not create query for public abstract java.util.List promisor.promisor.domain.team.dao.TeamRepository.findGroupInfoWithMembers(java.lang.Long)! Reason: Validation failed for query for method public abstract java.util.List promisor.promisor.domain.team.dao.TeamRepository.findGroupInfoWithMembers(java.lang.Long)!; nested exception is java.lang.IllegalArgumentException: Validation failed for query for method public abstract java.util.List promisor.promisor.domain.team.dao.TeamRepository.findGroupInfoWithMembers(java.lang.Long)! at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1389) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1309) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.15.jar:5.3.15] ... 38 common frames omitted Caused by: org.springframework.data.repository.query.QueryCreationException: Could not create query for public abstract java.util.List promisor.promisor.domain.team.dao.TeamRepository.findGroupInfoWithMembers(java.lang.Long)! Reason: Validation failed for query for method public abstract java.util.List promisor.promisor.domain.team.dao.TeamRepository.findGroupInfoWithMembers(java.lang.Long)!; nested exception is java.lang.IllegalArgumentException: Validation failed for query for method public abstract java.util.List promisor.promisor.domain.team.dao.TeamRepository.findGroupInfoWithMembers(java.lang.Long)! at org.springframework.data.repository.query.QueryCreationException.create(QueryCreationException.java:101) ~[spring-data-commons-2.6.1.jar:2.6.1] at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.lookupQuery(QueryExecutorMethodInterceptor.java:106) ~[spring-data-commons-2.6.1.jar:2.6.1] at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.lambda$mapMethodsToQuery$1(QueryExecutorMethodInterceptor.java:94) ~[spring-data-commons-2.6.1.jar:2.6.1] at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195) ~[na:na] at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133) ~[na:na] at java.base/java.util.Collections$UnmodifiableCollection$1.forEachRemaining(Collections.java:1056) ~[na:na] at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801) ~[na:na] at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484) ~[na:na] at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) ~[na:na] at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913) ~[na:na] at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[na:na] at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578) ~[na:na] at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.mapMethodsToQuery(QueryExecutorMethodInterceptor.java:96) ~[spring-data-commons-2.6.1.jar:2.6.1] at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.lambda$new$0(QueryExecutorMethodInterceptor.java:86) ~[spring-data-commons-2.6.1.jar:2.6.1] at java.base/java.util.Optional.map(Optional.java:258) ~[na:na] at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.<init>(QueryExecutorMethodInterceptor.java:86) ~[spring-data-commons-2.6.1.jar:2.6.1] at org.springframework.data.repository.core.support.RepositoryFactorySupport.getRepository(RepositoryFactorySupport.java:364) ~[spring-data-commons-2.6.1.jar:2.6.1] at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.lambda$afterPropertiesSet$5(RepositoryFactoryBeanSupport.java:322) ~[spring-data-commons-2.6.1.jar:2.6.1] at org.springframework.data.util.Lazy.getNullable(Lazy.java:230) ~[spring-data-commons-2.6.1.jar:2.6.1] at org.springframework.data.util.Lazy.get(Lazy.java:114) ~[spring-data-commons-2.6.1.jar:2.6.1] at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.afterPropertiesSet(RepositoryFactoryBeanSupport.java:328) ~[spring-data-commons-2.6.1.jar:2.6.1] at org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean.afterPropertiesSet(JpaRepositoryFactoryBean.java:144) ~[spring-data-jpa-2.6.1.jar:2.6.1] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) ~[spring-beans-5.3.15.jar:5.3.15] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) ~[spring-beans-5.3.15.jar:5.3.15] ... 49 common frames omitted Caused by: java.lang.IllegalArgumentException: Validation failed for query for method public abstract java.util.List promisor.promisor.domain.team.dao.TeamRepository.findGroupInfoWithMembers(java.lang.Long)! at org.springframework.data.jpa.repository.query.SimpleJpaQuery.validateQuery(SimpleJpaQuery.java:96) ~[spring-data-jpa-2.6.1.jar:2.6.1] at org.springframework.data.jpa.repository.query.SimpleJpaQuery.<init>(SimpleJpaQuery.java:66) ~[spring-data-jpa-2.6.1.jar:2.6.1] at org.springframework.data.jpa.repository.query.JpaQueryFactory.fromMethodWithQueryString(JpaQueryFactory.java:51) ~[spring-data-jpa-2.6.1.jar:2.6.1] at org.springframework.data.jpa.repository.query.JpaQueryLookupStrategy$DeclaredQueryLookupStrategy.resolveQuery(JpaQueryLookupStrategy.java:163) ~[spring-data-jpa-2.6.1.jar:2.6.1] at org.springframework.data.jpa.repository.query.JpaQueryLookupStrategy$CreateIfNotFoundQueryLookupStrategy.resolveQuery(JpaQueryLookupStrategy.java:252) ~[spring-data-jpa-2.6.1.jar:2.6.1] at org.springframework.data.jpa.repository.query.JpaQueryLookupStrategy$AbstractQueryLookupStrategy.resolveQuery(JpaQueryLookupStrategy.java:87) ~[spring-data-jpa-2.6.1.jar:2.6.1] at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.lookupQuery(QueryExecutorMethodInterceptor.java:102) ~[spring-data-commons-2.6.1.jar:2.6.1] ... 71 common frames omitted Caused by: java.lang.NullPointerException: Cannot invoke "org.hibernate.hql.internal.ast.tree.FromElement.setAllPropertyFetch(boolean)" because "fromElement" is null at org.hibernate.hql.internal.ast.HqlSqlWalker.createFromJoinElement(HqlSqlWalker.java:431) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.joinElement(HqlSqlBaseWalker.java:3990) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromElement(HqlSqlBaseWalker.java:3776) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromElementList(HqlSqlBaseWalker.java:3654) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromClause(HqlSqlBaseWalker.java:737) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:593) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.selectStatement(HqlSqlBaseWalker.java:330) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:278) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.hql.internal.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:276) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:192) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.hql.internal.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:144) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:113) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:73) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.engine.query.spi.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:162) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.internal.AbstractSharedSessionContract.getQueryPlan(AbstractSharedSessionContract.java:636) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.internal.AbstractSharedSessionContract.createQuery(AbstractSharedSessionContract.java:748) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at org.hibernate.internal.AbstractSharedSessionContract.createQuery(AbstractSharedSessionContract.java:114) ~[hibernate-core-5.6.4.Final.jar:5.6.4.Final] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:564) ~[na:na] at org.springframework.orm.jpa.ExtendedEntityManagerCreator$ExtendedEntityManagerInvocationHandler.invoke(ExtendedEntityManagerCreator.java:362) ~[spring-orm-5.3.15.jar:5.3.15] at com.sun.proxy.$Proxy139.createQuery(Unknown Source) ~[na:na] at org.springframework.data.jpa.repository.query.SimpleJpaQuery.validateQuery(SimpleJpaQuery.java:90) ~[spring-data-jpa-2.6.1.jar:2.6.1] ... 77 common frames omitted
-
미해결고수가 되는 파이썬 : 동시성과 병렬성 문법 배우기 Feat. 멀티스레딩 vs 멀티프로세싱 (Inflearn Original)
메인 시작 영역에 관한 질문
강사님 안녕하세요, #메인 시작 영역에 관해 질문드립니다. main( ) 함수 실행시 if __name__ == "__main__" 영역 밖에서 실행했을 때 Runtime Error가 발생하던데, 왜 그런지 알고 싶습니다. (Threading에서는 if __name__=="main" 영역 밖에서 실행했을 때 정상적으로 작동하는 것 같은데 말입니다) 아래 전체 코드 드립니다. 감사합니다. from multiprocessing import Process import time import logging def process_func(name): print(f"subprocess {name} stated") time.sleep(3) print(f"subprocess {name} stated") def main(): format = "%(asctime)s: %(message)s" logging.basicConfig(format=format, level=logging.INFO, datefmt="%H:%M:%S") # 함수 인자 확인 p = Process(target=process_func, args=('First',)) logging.info('Main_process : before Creating') p.start() logging.info('Main_process : Sub Process stated') logging.info(f'Main_prcess : Status: {p.is_alive()}') p.join() logging.info(f'Main_prcess : Status: {p.is_alive()}') logging.info('Main_process : Sub Process finished') # if __name__=="__main__": main()
-
미해결스프링 핵심 원리 - 기본편
class AppConfig
안녕하세요 질문이 하나있습니다. 1:40 부터 잠깐 보시면 new AnnotationConfigApplicationContext(AppConfig.class); AnnotationConfigApplicationContext에 파라미터로 넘긴 값은 스프링 빈으로 등록된다고 하셨는데(AppConfig.class ) AppConfig 이 class는 이미 @Configuration 이 붙어있어서 스프링 빈으로 등록 되어 있는 상태 아닌가요 ?? @Configurationpublic class AppConfig {..}
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
@Transactional 넣었을때 문제
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요. 강의내용대로 @Transactional 넣고 스프링부트띄워서 테스트를 돌리면 rollback이 바로되는게 아니라 좀 지나서 되는것 같더라구요 회원가입 테스트 돌리고 디비에서 member조회 해보면 인서트가 되어있고 한번더 조회하면 그때 사라지더라구요 그것 때문에 회원가입과 중복회원 따로 돌리면 되긴하는데 전체 테스트를 돌리면 중복회원예외에서 실패가 납니다. 어떻게 해야될까요..?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
on 조인대상 필터링이 궁금한점이 있어서 질문드립니다.
이런식으로 Order 가지고 있는 count가 5보다 작은것만 조인 필터링을 하고싶은데 실제로 쿼리를 실행해보면 count가 5이상인 Order를 가지는 Delivery도 같이 조인되서 List에 반영됩니다. 쟤가 외부조인이랑 조인필터링이라는 걸 잘못 이해하고 있는지가 궁금합니다. 아니면 오더랑 딜리버리가 일대일관계에서 생기는 문제인지가 궁금합니다!
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
일대일 관계에서 left outer join 할시 N+1 가 되는 이유가 있나요?
Delivery 와 Order 를 일대일관계로 매핑하고 둘다 지연로딩을설정했습니다 "select d from Delivery d left join d.order" 해당쿼리를 쏠때 조인쿼리를 날린후 추가로 오더 select 쿼리를 날리는데 이게 일대일 관계에서 정상적인지 궁금합니다!
-
미해결10분만에 만드는 github blog for Pythonista
그래도 올라온 게 안보이네요..
Open은 0이고 Closed는 1이라고 떠있는데 이래서 안뜨는 건지 영상에 나온 그대로 했는데도 안 되네요...
-
해결됨스프링 핵심 원리 - 기본편
DIP OCP
안녕하세요 이전부터 solid에 관해 자주 강의에서개념이 나와서 좋습니다. 잠시 하나 짚고 넘어가고싶습니다 제가 생각하는게 맞는지 DIP가 위반이되면 구현체에 의존을하니까 자연스럽게 덤으로 OCP까지 위반이 되는건 당연하다고 생각이드는데 제가 생각하는게 맞는건가요 ?
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
npm run serve?dev?
안녕하세요. 강의 듣다가 궁금한게 있어서 질문 드립니다. 강의에서 로컬 서버 작동시킬때 npm run serve라고 되어있는데 저는 $ vue init webpack-simple vue-todo 을 하고나니 npm run dev로 하라고 나옵니다. 차이가 무엇일까요?