묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결이펙티브 자바 완벽 공략 1부
PhantomReference 가 소멸되는 시점을 보는 코드 부분이 약간 이상한것 같습니다.
public class PhantomReferenceExample { public static void main(String[] args) throws InterruptedException { BigObject strong = new BigObject(); ReferenceQueue<BigObject> rq = new ReferenceQueue<>(); BigObjectReference<BigObject> phantom = new BigObjectReference<>(strong, rq); strong = null; System.gc(); Thread.sleep(3000L); // TODO 팬텀은 유령이니까.. // 죽었지만.. 사라지진 않고 큐에 들어갑니다. System.out.println(phantom.isEnqueued()); Reference<? extends BigObject> reference = rq.poll(); BigObjectReference bigObjectCleaner = (BigObjectReference) reference; bigObjectCleaner.cleanUp(); reference.clear(); } }위에 코드에서 커스텀하게 만든 BigObjectReference 로 형변환을 하고 cleanUp을 따로 호출 하는 부분이 이해가 잘 가지 않습니다. cleanUp 메서드도 단순히 출력만하는데굳이나 상속을 받아서 커스텀하게 만든 형태가 만든게 무의미한 것 같습니다. 기선님이 의도한 소멸되는 시점을 확인하고자 하면 아마 아래와 같이 clear 메서드를 오버라이딩하는게 좀 더 맞지 않나 조심 스럽게 의견을 내봅니다.public class BigObjectReference<BigObject> extends PhantomReference<BigObject> { public BigObjectReference(BigObject referent, ReferenceQueue<? super BigObject> q) { super(referent, q); } @Override public void clear() { super.clear(); System.out.println("clean up"); } }public class PhantomReferenceExample { public static void main(String[] args) throws InterruptedException { BigObject strong = new BigObject(); ReferenceQueue<BigObject> rq = new ReferenceQueue<>(); BigObjectReference<BigObject> phantom = new BigObjectReference<>(strong, rq); strong = null; System.gc(); Thread.sleep(3000L); // TODO 팬텀은 유령이니까.. // 죽었지만.. 사라지진 않고 큐에 들어갑니다. System.out.println(phantom.isEnqueued()); Reference<? extends BigObject> reference = rq.poll(); reference.clear(); } } 출력화면
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
빌드하려는데 오류가 떠요
cmd에서 ./gradlew /gradlew gradlew gradlew build 다 쳐봤는데내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 라고 나오거나ERROR: JAVA_HOME is set to an invalid directory: C:\Program Files\Java\jdk-11\binPlease set the JAVA_HOME variable in your environment to match thelocation of your Java installation. 라고 떠요..그리고 버전 확인해봤는데 저렇게 나오는 게 맞나요?다른 분들 질문한거 웬만한거 다봤는데 여기서 더이상 어떻게 진행해야 될 지 모르겠어서 막막하네요ㅠㅠ
-
미해결[기초스피치] 14년차 아나운서에게 배우는 말 잘하는 방법!
안녕하세요 아래 링크가 열리지 않아 문의드립니다
http://kyobo.link/2lK4링크가 있어 눌렀는데 사이트에 연결할 수 없다고 나와서 어떤 링크인지 궁금하여 질문 남깁니다.
-
해결됨2025 언리얼 공인강사 – UE5 스파르타 클래스: 심화편
EQS 테스트 항목 중 Trace 항목에서 이해가 안가는 부분이 있습니다.
강의에서 플레이어 주변으로 적들이 몰리도록 하는 EQS를 구현하였습니다.여러가지 테스트 항목들을 사용하여 구현하였는데, 그 중 Trace 항목이 이해가 안되는 부분이 있습니다.Trace 항목은 커리어가 추적할 수 없는 곳을 필터링하는 노드로 이해가 되는데, 왜 디테일 세팅에서 Bool 일치를 False 로 설정하는 것인가요?? Bool 일치를 False 로 설정하면 반대로 동작을 해서 추적할 수 있는 곳이 필터링 되어 추적할 수 없는 곳만 남게되는 것 아닌가요..?이 부분에 대해서 설명 부탁드립니다!
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
yml설정 질문입니다.
[질문 내용]회원 목록 조회 강의수강중입니다.어플리케이션을 재시작 할때마다 DB에 테이블이 재생성이 되면서기존 데이터가 사라집니다.yml에 ddl-auto : create설정 때문인 것 같은데,none, 이나 update로 설정하면 테이블의 재생성은 방지가 되는데,최초 구동 시 JPA가 테이블을 생성하는것도 막히는건지 궁금합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
@Transactional에 대한 질문드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요.강의 jpa부분을듣고 실습을 따라하다 다른방법이 있는지 문의드립니다.MemberServiceIntegrationTest 에서@Transactional 를 사용하지않으면 데이터 세개가 들어감과 동시에회원가입 메소드와 중복_회원_예외()의 함수를 실행하면 데이터가 들어가게 됩니다.이런 오류가 나오는데..제가 궁금한것은 @Transactional 를 사용하지않고트랜젝션? 처리하는 방법이 있을까요?방법이 존재한다면 어떤방법으로 처리하면..@Transactional 유사 처리가 되는지 궁금합니다.강의를 보고 또 보고하면서도많이 배우고있습니다.감사합니다.
-
해결됨초보자를 위한 IT 인프라의 이해
NL-SAS 와 SAS 의 차이점
이 둘의 차이점이 정확히 뭘까요?? ㅠㅠ 궁금합니다가격은 nl-sas가 더 싼거 같긴한데...
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
문제 힌트 관련 질문입니다!
문제에서 웅덩이의 첫번째 구간은 1~6으로 주어졌는데이 문제의 힌트를 보면 111222..333444555.... // 길이 3인 널빤지 .MMMMM..MMMM.MMMM.... // 웅덩이 012345678901234567890 // 좌표1부터 5까지인 것을 확인할 수 있습니다.왜 이렇게 나오는 것인지 궁금합니다..!
-
미해결[중급편] 코인 가격 모니터링 앱 제작 (Android Kotlin)
코인 선택화면 API 데이터 받아와서 확인 파트에서 질문있습니다.
코인 선택화면 API 데이터 받아와서 확인 (Retrofit / Coroutine)3분 52초에api.kt 중package com.bokchi.coco.networkimport com.bokchi.coco.network.model.CurrentPriceListimport retrofit2.http.GETinterface Api {// public/ticker/ALL_KRW@GET("public/ticker/ALL_KRW")suspend fun getCurrentCoinList() : CurrentPriceList}@GET("public/ticker/ALL_KRW") 이부분 주소가 select activity에 나와있는 http로 시작하는 주소가 다른데 어느부분을 보고 쓴건지 알수있을까요? select activity.kt에서 중간부분 코드에 // https://apidocs.bithumb.com/reference/%ED%98%84%EC%9E%AC%EA%B0%80-%EC%A0%95%EB%B3%B4-%EC%A1%B0%ED%9A%8C-all <===http주소가 있는데요. 근데 이주소에 public/ticker/ALL_KRW가 들어가 있지를 않은데 강의에서는 이주소에 나와있는걸 쓴다고 말씀하셔서요.package com.bokchi.coco.viewimport androidx.appcompat.app.AppCompatActivityimport android.os.Bundleimport androidx.activity.viewModelsimport androidx.lifecycle.Observerimport androidx.recyclerview.widget.LinearLayoutManagerimport com.bokchi.coco.Rimport com.bokchi.coco.databinding.ActivitySelectBindingimport com.bokchi.coco.view.adapter.SelectRVAdapterimport timber.log.Timber// https://apidocs.bithumb.com/reference/%ED%98%84%EC%9E%AC%EA%B0%80-%EC%A0%95%EB%B3%B4-%EC%A1%B0%ED%9A%8C-all <<====class SelectActivity : AppCompatActivity() { private lateinit var binding : ActivitySelectBinding private val viewModel : SelectViewModel by viewModels() // FAQ private lateinit var selectRVAdapter: SelectRVAdapter override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding = ActivitySelectBinding.inflate(layoutInflater) setContentView(binding.root) viewModel.getCurrentCoinList() viewModel.currentPriceResult.observe(this, Observer { selectRVAdapter = SelectRVAdapter(this, it) binding.coinListRV.adapter = selectRVAdapter binding.coinListRV.layoutManager = LinearLayoutManager(this) Timber.d(it.toString()) }) }}
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
Bitstream이 생성이 안돼서 질문드립니다!
안녕하세요 맛비님. LED 깜빡이기 실습을 하는 과정에서 맛비님이 올려주신 코드로 실행을 했는데 Bitstream 생성 과정에서 다음과 같은 오류가 떠서 진행이 안되네요 ㅠㅠ혹시 어떻게 해결해야하는지 알 수 있을까요??
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
ModelView 질문드립니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. ModelView를 사용하는 이유는 서블릿에 대한 종속성에서 벗어나기 위해 사용하는걸로 이해하면 될까요?
-
미해결리눅스 커널 해킹. A부터 Z까지
가젯에 대해 이해가 잘 안됩니다.
pop rax; ret;0x6f0에서 pop rax; ret; 어셈블리가 어떻게 rax에 0x6f0을 넣게 되는 건가요?
-
해결됨게임 프로그래머 취업 전략 가이드
안녕하세요 루키스님 학교 졸업 관련해서 질문 있습니다.
개인 사정으로 학교를 오랫동안 쉬었다가 복학을 하게 되었고 현재 3학년입니다. 아래는 현재 고민중인 부분입니다.클라와 서버를 모두 깊이 있게 공부해서 실력을 겸비하여 졸업작품으로 클라+서버 모두 담당하여 퀄리티 있는 졸업작품을 만든다. - 졸업까지 3년클라를 집중적으로 공부해서 졸업작품으로 클라를 담당한다. 잘하는 팀원에게 버스를 타는 한이 있더라도 졸업을 우선시한다. - 졸업까지 2년학교는 한국산업기술대 게임공학과입니다. 졸업작품은 DX12를 이용해서 자체엔진을 제작하여 만들 것입니다. 1번을 목표로 하면 학과 커리큘럼상 졸업작품을 1년 늦게 시작해야 하므로 총 3년이 걸립니다. 졸업작품을 만드는 마지막 1년은 졸업 작품을 제외하면 수업에는 여유가 있어서 취업준비도 겸할 수 있습니다. 1번은 졸업하는 년도에 만으로 29세가 됩니다. 저는 장기적으로 봤을 때(취업이 목적이 아닌 고급프로그래머가 되려면) 1번이 더 효율적이라고 생각이 됩니다. 루키스님의 생각은 어떠하신가요? 졸업을 늦게하면 저에게 무엇이 안좋게 작용될지도 궁금합니다. 긴 글 읽어주셔서 감사합니다. 그리고 양질의 강의 제공해주셔서 감사드립니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
회원목록 연결 오류
순수 JDBC 강의를 따라가며 실행해보았는데 디버깅 오류는 없으나 페이지 실행시 이름등록에서 등록 버튼 클릭후, 회원목록 클릭 후 연결되지 않는 에러가 발생합니다.Whitelabel Error PageThis application has no explicit mapping for /error, so you are seeing this as a fallback.Sat Mar 04 13:46:34 KST 2023There was an unexpected error (type=Internal Server Error, status=500). 코드 링크 올려드립니다. 감사합니다.링크 https://drive.google.com/file/d/1b8PmvEY2uQqk3TCS01tPzKYRXbq7-tGY/view?usp=share_link
-
미해결스프링 핵심 원리 - 기본편
컴포넌트 스캔의 대상 질문드립니다.
BeanA에 달려있는 @MyIncludeComponent의 경우 @Component 어노테이션이 붙어있지 않음에도 어떻게 컴포넌트 스캔의 대상이 되어 빈으로 등록되는 것인지 궁금합니다.혹시 includeFilters에 지정된 클래스는 @Component가 없어도 자동으로 빈으로 등록이 되는 것일까요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
오류가 뜨는데 어떡게 해결해야 하는지 모르겠어요...
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.코드도 pdf에 있는 거 복붙해서 똑같이 따라하고 있는데 오류가 나서요 ㅜㅜ h2 DB도 같이 실행해서 하고 있는 중이에요..😥
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
iOS시뮬레이터에서 마이크 권한만 알림이 뜨고 카메라 권한 알림이 뜨지 않는 경우
안녕하세요! 강의 내용대로 코딩을 했는데, 시뮬레이터로 실행해보니 권한 설정이 제대로 되지 않아서 질문드립니다.init 함수를 강의 내용대로 코딩했는데 iOS 시뮬레이터에서 다음과 같이 마이크 허가 알림만 뜨고, 마이크 권한을 허가한 이후에도 카메라 권한에 대한 알림이 뜨지 않습니다.이 알림을 확인을 누르면 다음과 같이 바로 카메라 또는 마이크 권한이 없다는 창이 뜹니다.카메라 권한이 설정이 안돼서 이러한 화면이 나오는 것 같은데해결 방법을 알려주시면 감사하겠습니다.
-
해결됨따라하며 배우는 리액트 A-Z[19버전 반영]
handleSubmit을 useCallback으로
handleSubmit를 useCallback으로 감싸서 만들어봤는데const handleSubmit = useCallback( (e) => { e.preventDefault(); let newTodoData = todoData.map((data) => { if (data.id === id) { data.title = editedTitle; } return data; }); console.log(newTodoData); setTodoData(newTodoData); setIsEditing(false); }, [todoData, setTodoData, id, editedTitle] );의존성배열에 setTodoData 를 넣지않으면 아래오류가 나면서 handleSubmit 함수가 실행되지 않더라구요React Hook useCallback has a missing dependency: 'setTodoData'. Either include it or remove the dependency array. If 'setTodoData' changes too often, find the parent component that defines it and wrap that definition in useCallback제 지식으론 의존성배열에 todoData만 넣으면 될줄 알았는데 왜 setTodoData 까지 같이 넣어야하는지 궁금합니다!
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
테스트 코드 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.id to load is required for loading; nested exception is java.lang.IllegalArgumentException: id to load is required for loading 오류 발생합니다 코드:package jpabook.jpashop.service; import jpabook.jpashop.domain.Address; import jpabook.jpashop.domain.Member; import jpabook.jpashop.domain.Order; import jpabook.jpashop.domain.OrderStatus; import jpabook.jpashop.domain.item.Book; import jpabook.jpashop.domain.item.Item; import jpabook.jpashop.repository.OrderRepository; import org.junit.Assert; import org.junit.jupiter.api.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.transaction.annotation.Transactional; import javax.persistence.EntityManager; import static org.junit.Assert.*; @RunWith(SpringRunner.class) @SpringBootTest @Transactional class OrderServiceTest { @Autowired EntityManager em; @Autowired OrderService orderService; @Autowired OrderRepository orderRepository; @Test public void 상품주문() throws Exception{ Member member=new Member(); member.setName("회원1"); member.setAddress(new Address("서울","강가","123-123")); em.persist(member); Book book=new Book(); book.setName("시골 JPA"); book.setPrice(10000); book.setStockQuantity(10); System.out.println(book.getId()); em.persist(book); int orderCount=2; Long orderId = orderService.order(member.getId(), book.getId(), orderCount); Order getOrder = orderRepository.findOne(orderId); assertEquals("상품 주문시 상태는 ORDER", OrderStatus.ORDER,getOrder.getStatus()); } @Test public void 주문취소() throws Exception{ } @Test public void 상품주문_재고수량초과() throws Exception{ } }
-
해결됨처음하는 딥러닝과 파이토치(Pytorch) 부트캠프 (쉽게! 기본부터 챗GPT 핵심 트랜스포머까지) [데이터분석/과학 Part3]
batch normalization과 standard scaler에 관한 질문입니다
안녕하세요, batch normalization과 standard scaler의 사용에 관해 질문드립니다! 우선, batch normalization은 학습 과정에서 각 배치 단위 별로 데이터가 다양한 분포를 가지더라도 각 배치별로 평균과 분산을 이용해 정규화하는 것을 뜻하고, 결국 평균 0, 분산 1로 데이터의 분포를 조정하는 과정으로 이해를 하였습니다. 또한, 이전에 학습하였던 standard scaler 역시 전처리 과정에서 평균 0, 분산 1로 데이터를 조정하는 역할을 한다고 이해하였는데요 batch normalization과 standard scaler의 작동 방식 자체가 조금 유사하게 느껴지는데, 이 둘은 각각 전처리 과정과 학습 과정에서 따로 사용되는 것으로 보면 되는 것인가요??