묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강 연장 신청 요청 드립니다.
안녕하세요- 수강 연장을 희망하오니 연장 부탁 드립니다. 감사합니다!
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
로그인 처리하기 - 세션 직접 만들기 질문있습니다.
public class SessionManagerTest { SessionManager sessionManager=new SessionManager(); @Test void sessionTest(){ //세션을 생성 <-이게 클라이언트단에서 생성이되는건가요? 서버에서 생성하는건가요? MockHttpServletResponse response=new MockHttpServletResponse(); Member member=new Member(); sessionManager.createSession(member,response); //요청에 응답 쿠키 저장 <-서버 저장이고 MockHttpServletRequest request=new MockHttpServletRequest(); request.setCookies(response.getCookies()); //세션조회 <-클라이언트 조회가 맞나요? Object result=sessionManager.getSession(request); Assertions.assertThat(result).isEqualTo(member); }}주석에 질문 달았습니다
-
미해결
pytorch CNN 모델 output shape 관련 질문
CIFAR10 데이터셋을 이용해서 cnn을 구현하고 training 실습을 하는데 계속 모델의 output shape과 관련해서 CrossEntropyLoss를 이용해서 loss를 계산하는 부분에서ValueError: Expected input batch_size (1) to match target batch_size (4).와 같은 에러가 발생합니다. input과 labels의 배치 사이즈에 따라 마지막 output의 shape이 torch.Size([4, 10])와 같이 나와야 정상적으로 loss를 계산할 수 있을텐데 계속해서 torch.Size([1, 10])의 shape이 나옵니다. 혹시몰라 좀 더 간단한 다른 모델로 구현해보니 정상적으로 batch_size가 일치하는데 해당 모델을 이용할 때만 오류가 발생합니다. batch_size를 바꿔가면서 테스트해보니 모델에 어떤 문제로 인해 계속 output의 batch_size가 설정한 batch_size의 1/4로 나오게 되는 것 같은데 모델에서 어떤 부분이 문제인지 못 찾겠습니다. CNN 모델은 아래와 같이 구현했습니다. 모델의 output shape이 정상적으로 torch.Size([batch_size, 10])과 같이 나올 수 있으려면 어떻게 해결해야 할까요?class CNN(nn.Module): def __init__(self): super(CNN, self).__init__() # Layer#1 self.conv1 = nn.Conv2d(in_channels=3, out_channels=64, kernel_size=3) self.conv2 = nn.Conv2d(in_channels=64, out_channels=64, kernel_size=3) self.pool = nn.MaxPool2d(kernel_size=2, stride=2) self.dropout = nn.Dropout(0.5) # Layer#2 self.conv3 = nn.Conv2d(in_channels=64, out_channels=128, kernel_size=3) # Layer#3 self.conv4 = nn.Conv2d(in_channels=128, out_channels=256, kernel_size=3) # Layer#4 self.fc1 = nn.Linear(4*4*256, 512) # Layer#5 self.fc2 = nn.Linear(512, 512) # Layer#6 self.fc3 = nn.Linear(512, 10) def forward(self, x): # Layer#1 x = self.conv1(x) x = F.relu(x) x = self.dropout(x) x = self.conv2(x) x = F.relu(x) x = self.dropout(x) x = self.pool(x) # Layer#2 x = self.conv3(x) x = F.relu(x) x = self.dropout(x) x = self.pool(x) # Layer#3 x = self.conv4(x) x = F.relu(x) x = self.dropout(x) x = self.pool(x) # Layer#4 x = x.view(-1, 4*4*256) x = self.fc1(x) x = F.relu(x) # Layer#5 x = self.fc2(x) x = F.relu(x) # Layer#6 x = self.fc3(x) x = F.softmax(x) return x
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
피라미드 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]제 피라미드는 안 생성되고 위아래로 나옵니다 ..
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
멀티스레드 Job처리
제가 경험했던 환경에서는네트워크스레드(N) -> MessageQueue -> 메인스레드(1)사실상 메인로직이 싱글 스레드였습니다.그렇다 보니 Queue에 들어오는 순서대로 메인스레드에서 처리했고, 느릴수도 있었겠지만 순서는 확실하게 보장이 되었습니다 그런데 현재 구조상네트워크스레드(N) -> JobQ 메인로직(N)으로 진행되거나네트워크스레드(N, timeLimit제한) -> GlobalQ 메인로직 (N) 으로 진행되다보니 궁금한게 생겼는데요첫번째 궁금한점은패킷이 ABC 순서로 왔을때,AC는 JobQ1B는 JobQ2을 수행한다고 가정하고A, B, C를 각각 네트워크 스레드 1,2,3가 받았다면스레드1가 A(수행시간1초)를 처리하는스레드2는 B(수행시간3초)를 처리하고,스레드3은 C(수행시간1초)를 Push만 한다고 하였을때B가 먼저 들어왔지만처리시간이 늦어 C패킷보다 답장을 늦게 보내는 상황이 발생할것 같은데요,(시간이 1초 3초까진 아니겠지만 컴퓨터 입장에서는 충분히 코드의 짧은차이로도 발생 할 수 있는 경우라고 가정했을때)과정에서 B처리중 죽어있으면 클리어가 안된다거나 하는 조건이 있고, B가 먼저 수행 되었지만 C처리가 먼저 끝나버려서 B의 결과가 바뀌는 경우는 어떻게 처리를 하면 좋을지 궁금합니다.(꼭 이런 1개의 처리속도가 아니더라도, JobQ1의 작업 전부다 소모되는시간이 JobQ2의 작업 몇개를 수행하는것보다 빠르다면, 충분히 이런상황이 발생할 수 있다고 생각합니다)다른 예시로 JobQ1에는 어마어마한 양의 일감이 쌓여있는상태에서 A가추가가 되고,JobQ2에는 아무것도 없을때 B가 바로 실행이 될텐데, 이경우에도 A가 먼저 패킷이 도달했지만 B에 비해 아주 오랜 뒤에 처리가 될수 있을것 같다고 생각해서 이런경우 클라 입장에서는 분명 먼저 요청을 했는데 버그가 발생했다고 느낄수도 있다고 생각해서 질문드립니다. 두번째로 궁금한점은Part4 과정이 거의 끝나가고 있어서 질문드리는 것인데요,제가 메인스레드가 1개인것만 해봐서 멀티스레드를 어떻게 인게임컨텐츠에서 사용해야할지 감이 안잡혀서,멀티스레드로 인게임 컨텐츠 부분의 객체를 접근할때, 락을 사용하는 예제가 있는 강의가 있는지 궁금합니다.이과정이 끝나면 Part5를 바로 이어서 할예정입니다. 감사합니다
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
java -jar -jpashop-0.0.1-SNAPSHOT.jar 관련질문
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]java -jar 파일을 이용해 스프링을 구동하려고 build로 경로를 바꿨는데 해당 라이브러리가 없으면libs 라이브러리를 따로 만들어야 하는지 아니면 그냥 넘어가도 되는지 궁금합니다.따로 생성시키는 방법이 있을까요?
-
미해결김영한의 실전 자바 - 중급 1편
private 선언된 내부 중첩 클래스
저는 내부 중첩 클래스가 private으로 선언된 경우 바깥 클래스를 포함한 모든 외부 클래스가 내부 중첩 클래스에 접근할 수 없는 줄 알았습니다. 왜냐면 바깥 클래스와 내부 중첩 클래스는 무관한 클래스라고 들었던 것 같기 때문입니다. 그런데, 바깥 클래스에서 내부 중첩 클래스의 인스턴스를 생성하고, 내부 중첩 클래스에 접근할 수 있는 이유는 무엇인가요?
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
h2데이터베이스 테이블생성 질문입니다.
h2데이터베이스 생성하고 간단하게 member클래스를 생성해서 h2데이터베이스에서 Member 테이블이 생성되는것을 보려고하는데 코드상으로는 create table로 생성되었다고 뜨는데 db에는 테이블이 생성이안되어있습니다 ㅠㅠ이유가뭘까요?
-
미해결
타임리프 설정 질문드립니다.
spring: thymeleaf: prefix: classpath:/templates/ suffix: .html datasource: url: jdbc:h2:tcp://localhost/~/jpashop username: sa password: driver-class-name: org.h2.Driver jpa: hibernate: ddl-auto: create properties: hibernate: # show_sql: true format_sql: true logging.level: org.hibernate.SQL: debug org.hibernate.orm.jdbc.bind: trace # org.hibernate.type: trace 스프링 부트 타임리프 기본 설정spring: thymeleaf: prefix: classpath:/templates/ suffix: .html 강의 교재에 위와 같이 적혀져있는데 위 코드가 타임리프 설정 맞게 한 것인가요?
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
스프링 부트 메시지 소스 설정 부분 궁금한 점 있습니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]이 의미를 제가 이해한 대로라면application.properties에 제가 아무 것도 추가하지 않으면스프링 부트가 알아서 application.properties에spring.messages.basename=messages 이걸 추가하고, 이렇게 messages만 지정되어도 부가적으로 messages_en.properties, messages_ko.properties 이것들도 인식되는 거로 이해했습니다. 꼭 ko나 en 말고도messages_temp.properties 또는 messages_sdfsdf.properties 이것들도 다 인식된다고 보면 되나요? 아니면 _ 뒤에 와야 하는 건 kr이나 en 등 몇 가지가 따로 지정되어 있는 걸까요? 2) 또 하나 궁금한 점이 있습니다. 스프링 부트를 쓰지 않고@Bean public MessageSource messageSource() { ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource(); messageSource.setBasenames("messages"); messageSource.setDefaultEncoding("utf-8"); return messageSource; }이 코드를 쓴다고 한다면, 이때도 messageSource.setBasenames("messages"); 이렇게 messages만 지정하면 messages_en.properties , messages_ko.properties 다 인식할 수 있나요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-J 반례
안녕하십니까 큰돌님코드를 작성했었는데 틀렸다고 하는데 반례 어떤게 있을까요 ??반례와 왜 안 되는지도 설명 한 번 부탁드립니다 ㅜㅠhttp://boj.kr/4eae857b9f4243aa90c9206ce1aabd15
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
포인터vs배열 질문있습니다
제가 이해한게 정확한지 궁금해서 그러는데요예를들어 배열로 char[] a = "abcef";를 만들어 줬다고하면배열은 모든 문자를 한글자씩 밀어넣는다고 하면 char이 1바이트니까 제가 만든 배열은 NULL값도 포함해서 총 6바이트가 되는게 맞는건지 궁금하고요 만약 맞다면 그러면 int타입의 배열로 선언하면 예를 들어 char[] b = {1, 3, 4}로 선언하면 int는 4바이트니까 총 NULL값까지 16바이트의 크기가 되는건가요? 그리고 포인터는 32비트 혹은 64비트냐에 따라 무조건 4바이트 혹은 8바이트 고정크기인데이유는 포인터를 이용해서 문자열을 만들면 예를들어 "Hello World"를 넣는다고하면 먼저 데이터 영역 어딘가에 Hello World의 배열이 만들어지고 그 배열 첫번째 요소인 H의 주소를 가리키는 포인터다라고 해석했는데 맞을까요??
-
미해결
oAuth2.0 로그인 후 쿠키 생성 질문
@Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { // CSRF 설정 http.csrf((csrf) -> csrf.disable()); http.authorizeHttpRequests((authorizeHttpRequests) -> authorizeHttpRequests .requestMatchers(PathRequest.toStaticResources().atCommonLocations()).permitAll() .requestMatchers("/").permitAll() .anyRequest().authenticated() ); http.oauth2Login((oauth2Login) -> oauth2Login .loginPage("/login") .userInfoEndpoint(userInfoEndpoint -> userInfoEndpoint .userService(principalOauth2UserService)) .defaultSuccessUrl("/", true) .permitAll() ); return http.build(); } 현재 위와 같이 우선 oAuth2.0 인증 기반을 구현했습니다.이 상태에서 로그인을 하면웹 브라우저 쿠키에JSESSIONID : 0C3706243FE7B32FF2A3C757013B164C 형식의 값이 삽입됩니다. 이후 test 용으로 작성한 "/user" 경로로 접근을 시도하면 접근이 가능하게 됩니다.만약 쿠키를 지우고 "/user" 로 접근하면 "/" 로 튕기고, 다시 로그인을 해야합니다. 여기서 궁금한 게 저는 별도의 쿠키 생성 로직을 작성하지 않았는데 oAuth 로그인 후JSESSIONID : 0C3706243FE7B32FF2A3C757013B164C이 녀석이 어떻게 생성된 것인지 궁금하며,어떻게 저 녀석으로 인증이 필요한 자원에 접근이 가능한 것인지 원리가 궁금합니다.검색해보니 톰캣 컨테이너에서 세션을 유지하기 위해 발급하는 키라고 하는데,이게 그냥 인덱스 페이지에 최초 접속할 때도 생기더라구요 ?oAuth 로 로그인하면 값이 바뀌긴 하지만,,, 구글링 해보면 세션 만들고 쿠키 만들고 하던데, 그럴 필요가 없는 거 아닌가요 ?+ 추가질문http.sessionManagement( (sessionManagement) -> sessionManagement .sessionCreationPolicy(SessionCreationPolicy.IF_REQUIRED) .maximumSessions(1) // 최대 허용 가능 세션 수 .maxSessionsPreventsLogin(false) // 멀티로그인 차단, false : 기존 세션 만료(default) .sessionRegistry(sessionRegistry()) ); 이와 같이 또 세션 정책을 세웠는데, 네이버 웨일로 로그인하고, 크롬으로 로그인 하면 둘 다 로그인 상태가 유지되는데 왜 이러는 걸까요...
-
미해결모두를 위한 대규모 언어 모델 LLM(Large Language Model) Part 1 - Llama 2 Fine-Tuning 해보기
checkpoint 파일이 안생겨요
제가 강의에 LLaMA 파인튜닝 코드를 변형해서 한 => 영 번역기를 만들고 있는데요. 몇일 전까지만 해도 zip파일을 해제하면 checkpoint-875 이런식으로 체크포인트가 저장된 파일이 생겼는데 갑자기 안생기네요.. 이유가 뭘까요 선생님!autotrain llm --train \ --project-name "conversational-finetuning" \ --model "TinyPixel/Llama-2-7B-bf16-sharded" \ --data-path "conversational-prompt" \ --text-column "text" \ --peft \ --quantization "int4" \ --lr 3e-4 \ --batch-size 8 \ --epochs 5 \ --trainer sft \ --model_max_length 80 import zipfile import shutil from google.colab import files folder_name = "conversational-finetuning" zip_file_name = "conversational-finetuning1.zip" shutil.make_archive(zip_file_name[:-4], "zip", folder_name) files.download(zip_file_name) extract_folder_name = '.' # 현재 디렉토리 with zipfile.ZipFile(zip_file_name, 'r') as zip_ref : zip_ref.extractall(extract_folder_name)
-
미해결스프링 핵심 원리 - 기본편
빈 충돌이 일어나는 테스트 오류를 못잡겠습니다ㅠㅠ
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 아니오3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]섹션7의 옵션처리 강의를 보며 테스트 코드를 같이 수정하고 있습니다.CoreApplication을 Run 했을 때 발생하는 오류입니다. *************************** APPLICATION FAILED TO START *************************** Description: Parameter 0 of constructor in hello.core.member.MemberServiceImpl required a single bean, but 2 were found: - memoryMemberRepository: defined in file [C:\Users\hotay\OneDrive\바탕 화면\study\core\core\out\production\classes\hello\core\member\MemoryMemberRepository.class] - memberRepository: defined by method 'memberRepository' in class path resource [hello/core/AppConfig.class] 이 부분을 보고 MemoryMemberRepository 와 AppConfig와 AutoAppConfig 코드를 봤는데 뭐가 문제인지 모르겠습니다.package hello.core.member; import org.springframework.stereotype.Component; import java.util.*; @Component //빈등록될때는 앞에가 소문자로, memoryMemberRepository로 등록된다. public class MemoryMemberRepository implements MemberRepository{ private static Map<Long, Member> store = new HashMap<>(); @Override public void save(Member member) { store.put(member.getId(),member); } @Override public Member findById(Long memberId) { return store.get(memberId); } }package hello.core; import hello.core.discount.DiscountPolicy; import hello.core.discount.FixDiscountPolicy; import hello.core.discount.RateDiscountPolicy; import hello.core.member.MemberService; import hello.core.member.MemberServiceImpl; import hello.core.member.MemoryMemberRepository; import hello.core.order.OrderService; import hello.core.order.OrderServiceImpl; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; //애플리케이션 전체 동작 방식을 구성(config)하기 위해 // 구현객체를 생성하고 연결하는 책임을 가지는 별도의 설정 클래스 //메서드마다 역할이 드러나게끔 한다. @Configuration //설정정보에 적어주는 어노테이션 public class AppConfig { @Bean //스프링 컨테이너에 등록이 된다. public MemberService memberService(){ return new MemberServiceImpl(memberRepository());//생성자 주입 //MemberServiceImpl이 필요로 하는 MemberRepository 의존성을 외부에서 주입 } @Bean public MemoryMemberRepository memberRepository() {//구현객체를 반환해주는 역할 return new MemoryMemberRepository(); } @Bean public OrderService orderService(){ return new OrderServiceImpl(memberRepository(),discountPolicy());//생성자 주입 } @Bean public DiscountPolicy discountPolicy(){ return new RateDiscountPolicy(); } } package hello.core; import hello.core.member.MemberRepository; import hello.core.member.MemoryMemberRepository; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.FilterType; @Configuration //설정정보 어노테이션 @ComponentScan( basePackages = "hello.core", excludeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION, classes = Configuration.class)//AppConfig를 등록하지않도록 필터링 ) //컴포넌트 스캔 일일이 @bean 등록안해도됨 public class AutoAppConfig { //수동으로 빈을 등록하면 자동 빈보다 우선권을 가지게되어 오버라이딩 된다. (충돌오류X) //최근 스프링 부트에서는 수동 빈 등록과 자동 빈 등록이 충돌나면 오류가 발생하도록 기본 값을 바꾸었다. // application.properties에 spring.main.allow-bean-definition-overriding=true를 등록하면 오버라이딩 할 수 있다. /* @Bean(name = "memoryMemberRepository") public MemberRepository memberRepository() { return new MemoryMemberRepository(); }*/ } AutoAppConfig에 강사님 말씀 처럼 빈 충돌 테스트 한 부분을 주석처리해줬고 AppConfig를 등록하지 않도록 필터링 했는데도 어디에서 오류를 잡아야할지 모르겠습니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
강의 질문있습니다.
강의 HandlerExceptionResolver 시작을 듣는데public class ApiExceptionController { }에서 괄호 부분에서 빨간줄이 나오는데 강의코드랑 같은데 왜 나오는건가요?
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
boolean 변수가 변경되는 이유를 모르겠습니다.
<#include "Item/ABItemBat.h"#include "Components/BoxComponent.h"#include "Components/StaticMeshComponent.h"#include "Particles/ParticleSystemComponent.h"#include "Physics/WMACollsion.h"#include "Interface/ABCharacterItemInterface.h"#include "Character/WMACharacterPlayer.h"#include <GameData/WMAGameInstance.h>#include "Blueprint/UserWidget.h"#include "Components/WidgetComponent.h"#include "UI/WMAItemInteractionWidget.h"#include "Interface/ABCharacterItemInterface.h"// Sets default valuesAABItemBat::AABItemBat(){ Trigger = CreateDefaultSubobject<UBoxComponent>(TEXT("TriggerBox")); Mesh = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Mesh")); Effect = CreateDefaultSubobject < UParticleSystemComponent>(TEXT("Effect")); TextE = CreateDefaultSubobject<UWidgetComponent>(TEXT("TextE")); Item = CreateDefaultSubobject<UABItemData>(TEXT("ItemBat")); static ConstructorHelpers::FClassFinder<UUserWidget>InputE(TEXT("WidgetBlueprint'/Game/UI/WBP_ItemInteraction.WBP_ItemInteraction_C'")); if (InputE.Succeeded()) { InteractionItemWidgetClass = InputE.Class; } RootComponent = Trigger; Mesh->SetupAttachment(Trigger); Effect->SetupAttachment(Trigger); Trigger->SetCollisionProfileName(CPROFILE_WMATRIGGER); Trigger->SetBoxExtent(FVector(11.0f, 10.0f, 110.0f)); Trigger->OnComponentBeginOverlap.AddDynamic(this, &AABItemBat::OnOverlapBegin); Trigger->OnComponentEndOverlap.AddDynamic(this,&AABItemBat::OnOverlapEnd); static ConstructorHelpers::FObjectFinder<UStaticMesh> BoxMeshRef(TEXT("/Script/Engine.StaticMesh'/Game/Item/Bat/Batfbx.Batfbx'")); if (BoxMeshRef.Succeeded()) { TempBoxMesh = BoxMeshRef.Object; Mesh->SetStaticMesh(BoxMeshRef.Object); } Mesh->SetRelativeLocation(FVector(0.0f, -3.5f, -20.0f)); Mesh->SetCollisionProfileName(TEXT("NoCollision")); bInteractionItem = false; PrimaryActorTick.bCanEverTick = true;}void AABItemBat::Tick(float DeltaTime){ Super::Tick(DeltaTime); //UE_LOG(LogTemp, Warning, TEXT("Character is Die :: %s"), bInteractionItem ? TEXT("true") : TEXT("false")); if (bInteractionItem) { Trigger->OnComponentBeginOverlap.AddDynamic(this, &AABItemBat::OnOverlapBegin); UE_LOG(LogTemp,Warning,TEXT("NO item Attach")) }}void AABItemBat::OnOverlapBegin(UPrimitiveComponent* OverlappedComponent, AActor* OtherActor, UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepHitResult){ //TextE->SetHiddenInGame(false); if (InteractionItemWidgetClass) { ItemText = CreateWidget<UUserWidget>(GetWorld(), InteractionItemWidgetClass); if(ItemText) ItemText->AddToViewport(); } if (nullptr == Item) { Destroy(); return; } //UE_LOG(LogTemp, Warning, TEXT("Character is Die :: %s"), bInteractionItem ? TEXT("true") : TEXT("false")); if (bInteractionItem) { IABCharacterItemInterface* OverlappingPawn = Cast<IABCharacterItemInterface>(OtherActor); if (OverlappingPawn) { OverlappingPawn->TakeItem(Item); //TextE->SetHiddenInGame(true); } //Effect->Activate(true); Mesh->SetHiddenInGame(true); SetActorEnableCollision(false); Effect->OnSystemFinished.AddDynamic(this, &AABItemBat::OnEffectFinished); Trigger->OnComponentBeginOverlap.RemoveDynamic(this, &AABItemBat::OnOverlapBegin); }}void AABItemBat::OnOverlapEnd(UPrimitiveComponent* OverlappedComp, AActor* OtherActor, UPrimitiveComponent* OtherComp, int32 OtherBodyIndex){ if (ItemText) { ItemText->RemoveFromViewport(); ItemText = nullptr; }}void AABItemBat::OnEffectFinished(UParticleSystemComponent* ParticleSystem){ Destroy();}void AABItemBat::StartInteractionItem(){ bInteractionItem = true;}void AABItemBat::StopInteractionItem(){ //bInteractionItem = false;}> 일단 WMACharacterplayer.cpp에서 StartInteractionItem()을 호출하는데는 문제가 없습니다. StartInteractionItem() 함수 내부에서 로그를 출력해보면 bInteractionItem이 true로 잘 출력이 되는 것을 확인할 수 있습니다. 문제는 Tick함수 내부와 OnOverlapBegin()함수 내부에서 로그를 찍어보면 bInteractionItem이 false로 변경되어서 OnOverlapBegin()함수를 호출하지 못하고 있는 상황입니다. 혹시 어느 부분이 문제가 되어 bool값이 변경되는지 여쭐수 있을까요?
-
미해결
Why take Spoken English classes in Pune from the IT Education Centre?
Technology has changed almost every aspect of our lives, including how we communicate. From smartphones and laptops to voice recognition software and virtual assistants, technology has revolutionized the way we interact with one another.One of the most notable changes technology has brought to communication is how we treat spoken English. From the way we use idiomatic expressions to the rise of slang and textspeak, technology has completely changed the way we communicate with each other.Let’s take a look at some of the ways technology is changing how we treat spoken English. 1. Slang and Textspeak: Technology has made it easier for us to communicate quickly and accurately. This has led to the rise of slang and textspeak, which are abbreviated versions of words and phrases used in spoken English. We’ve all seen examples of this in text messages and on social media.2. Idiomatic Expressions: Technology has also made it easier for us to use idiomatic expressions in spoken English. Idioms are phrases that can’t be taken literally, but instead convey a deeper meaning. For example, “It’s raining cats and dogs” is an idiom used to describe heavy rain.Moreover, technology has made it possible for people to practice their English with native speakers from all over the world. Platforms such as italki, Verbling, and Englishtown offer language exchange services that connect students with native speakers. This allows them to practice their spoken English and gain valuable insights into the culture and customs of the language.Additionally, technology has changed how we use English in everyday situations. With the advent of social media, it is now easier to communicate with people from different parts of the world. This has led to the development of a form of English known. technology has also made it possible for people to take Spoken English courses in Pune. These courses allow students to learn more about the language, as well as practice their speaking skills.Spoken English classes in Pune, is becoming increasingly popular. Students can easily access online courses and tutorials to learn and practice spoken English. Online classes allow students to access course material, practice exercises, and even engage in live conversations with native speakers. This makes it much easier for students to gain confidence in their spoken English skills and improve their fluency. Spoken English courses in Pune are designed to give students a comprehensive understanding of the language. These courses cover topics such as pronunciation, grammar, and vocabulary. They also provide students with tips and techniques to help them become more confident in their speaking abilities. It is important for students to practice their speaking skills regularly in order to make progress.IT Education Centre offers comprehensive spoken English training in Pune to help you improve your fluency and confidence in the language. We offer classes taught by experienced and qualified instructors who will help you develop your spoken English skills through engaging activities and interactive assignments. Our classes focus on grammar, pronunciation, vocabulary and communication skills. Our aim is to help you become a confident and competent speaker of English, so that you can express yourself effectively in any situation. Our classes are tailored to suit the individual needs of each student, so you can be assured that you will receive the best possible training. So Don’t look further, enroll yourself with IT Education Centre.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
failed to lazily initialize a collection of role 에러질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]컨트롤러@RestController @RequestMapping("/api/members") @RequiredArgsConstructor @Slf4j public class PetController { private final PetService petService; @PostMapping("/pets") @PreAuthorize("isAuthenticated()") public ResponseEntity<Long> createPet( @RequestBody PetCreateRequestDto petCreateRequestDto, @AuthenticationPrincipal PrincipalDetails principalDetails){ Member member = principalDetails.getMember(); Long savedId = petService.addPetToMember(petCreateRequestDto, member); return ResponseEntity.ok(savedId); } } 서비스@Service @RequiredArgsConstructor public class PetService { private final PetRepository petRepository; @Transactional public Long addPetToMember(PetCreateRequestDto request, Member member) { Pet pet = Pet.builder() .nickname(request.nickname()) .gender(request.gender()) .age(request.age()) .photoUrl(request.photoUrl()) .description(request.description()) .likesCount(0) .region(request.region()) .neighborhood(request.neighborhood()) .build(); pet.setPetOwner(member); Pet savePet = petRepository.save(pet); return savePet.getId(); } }연관관계 편의 메서드(Pet 엔티티에 있음)public void setPetOwner(Member member){ this.member = member; member.getPets().add(this); // 해당 코드에서 오류발생 }해당 코드에서 failed to lazily initialize a collection of role: com.gdsc.petwalk.domain.member.entity.Member.pets: could not initialize proxy - no Session가 발생하는 이유가 뭘까요?제가 하고싶었던 건 member를 먼저 만들고, 1:N에서 N쪽인 pet에 member를 add해주고 save하면 될거라 생각했는데 아무리 생각해봐도 모르겠네요... Pet에서 Member는 @ManyToOne(fetch = FetchType.LAZY)입니다
-
해결됨[리뉴얼] 맛집 지도앱 만들기 (React Native & NestJS)
AOS 플랫폼 문제 [해결]
안드로이드 실행시마다, GooglePlay Services keeps stopping이라는 현상이 매초 간격으로 발생하고, 제대로 지도 또한 실행하지 않는 것 같습니다. 혹시 이런 문제를 해결할려면, 어떻게 해야할까요?ios는 정상적으로 실행됩니다!AOS 같은 경우 Matzip isn't responding 하면서, 로그인 회원가입도 잘 동작하지 않습니다. 아래 방법으로 진행해봐도, 제대로 동작하지 않습니다!https://stackoverflow.com/questions/50313967/google-play-services-are-updating-error-on-release-not-emulator-google-play/50327544#50327544몇시간 찾아봤는데...특정 기기에서는 동작하지 않는 것 같습니다. 기기를 바꾸니 동작하네요!! 정확한 이유가 궁금하긴 합니다...ㅠㅠ