묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨파이썬 알고리즘 트레이딩 파트1: 알고리즘 트레이딩을 위한 파이썬 데이터 분석
안녕하세요 선생님! 왜 Log를 취해주는지 궁금합니다.
선생님 안녕하세요! 앞에서, 하루 단위의 종목의 ratio같은 경우는 Log를 씌어주지 않았는데, 5분 단위의 data는 왜 log를 씌어주는지 궁금합니다! (scale이 큰것도 아닌데 왜 앞이랑 차이가 나는지 궁금하네요!)
-
해결됨유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지
스트링을 말아서 로그 쏘실 때 두가지 방식 차이
학습 관련 질문을 남겨주세요.먼저 유사한 질문이 있는지 검색 부탁 드립니다.질문 내용이 상세할수록 명확한 답변을 드릴 수 있습니다.진행에 문제가 있는건 아니구요.강사님께서 스트링을 말아서 로그 쏘실 때 두가지 방식으로 나뉘더라구요.Logger.Log($"SerialNumber: {item.SerialNumber} ItemId: {item.ItemId}"); Logger.Log("Load failed (" + e.Message + ")"); 강사님은 역할이 구분되어 있던데 어떤 차이를 두고 사용하시는지 단순 궁금합니다.메시지는 무조건 string이니까 그런건지.. 가독성 측면에서 이점이 있는건지.. 유지보수에서 도움이 되는건지..
-
해결됨MFC Windows 프로그래밍 - 기본
MainFrame 에서 LButtonDown 이벤트 처리 질문
WM_LBUTTONDOWN 메시지는 View로 밖에 안가는 것 같은데, 해당 이벤트를 MainFrame에서 처리할 수 있는 방법은 없는걸까요? MainFrame 에 OnLButtonDown 핸들러를 아무리 설정해놓아도, MainFrame윈도우로는 버튼클릭 메시지가 안오는 것 같습니다.이렇게, 윈도우에 따라 처리할 수 있는 메시지도 차이가 있는 것일까요??
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
지금까지 배운 내용을 정리 했는데 맞게 정리한건지 궁금합니다.
엔티티 매니저 팩토리사용자가 설정한 정보에 따라 엔티티 매니저 팩토리를 생성합니다. 이 엔티티 매니저 팩토리는 오직 애플리케이션이 실행될 때 하나만 존재해야 합니다. 엔티티 매니저 팩토리의 주요 기능은 엔티티 매니저를 생성하는 겁니다. 사용자의 요청이 디비로 쿼리를 보내는 경우라면 요청과 1:1로 매핑 되는 엔티티 매니저를 생성합니다.엔티티 매니저엔티티 매니저의 핵심 기능은 엔티티를 관리하는 것입니다.엔티티 매니저에는 영속성 컨텍스트라는 논리적 공간이 존재합니다. 여기서 엔티티를 관리합니다.저장persist()를 할 경우 엔티티 매니저에 엔티티를 저장합니다. 이때 1차 캐시에 키는 엔티티의 pk값, 값은 엔티티를 값으로 저장 합니다. 저장 시 전략이 identity인 경우 insert 쿼리를 DB로 바로 전송합니다. 그 외는 쓰기 저장소에 보관합니다.조회find()를 할 경우 처음에는 1차 캐시에서 조회하고 없으면 DB에서 조회합니다. 주의할점은 즉시로딩과 지연로딩입니다.즉시로딩은 A 조회시 A와 연관관계에 있는 데이터들도 한번에 조회하는 방식입니다.지연로딩은 A 조회 후 A와 연관관계에 있는 데이터 사용 시 조회하는 방식입니다.수정더치 체킹 덕분에 값만 변경해도 JPA가 알아서 update 쿼리를 보냅니다.플러시플러시가 발생 시 우선 더티 체킹이 발생합니다.값이 변경된 부분이 있으면 update, delete 쿼리를 생성하여 쓰기 저장소에 저장합니다. 더티 체킹이 끝나면 쓰기 저장소에 보관했던 SQL문들을 DB로 한번에 전송합니다.쓰기 저장소em.persist()에 의해 발생한 insert 쿼리더디 체킹에 의해 발생한 update 쿼리em.remove()에 의해 발생한 delete 쿼리위 상황에서 발생한 쿼리들을 보관하는 저장소입니다.플러시 발생 시 위 쿼리들을 DB에 한번에 전송합니다. 감사합니다.
-
해결됨스프링 핵심 원리 - 고급편
유틸성 클래스의 경우 어떻게 LogTrace를 적용할 수 있을까요?
스프링 빈으로 등록하여 사용하지 않는 예를 들어 유틸성 클래스 혹은 직접 인스턴스를 생성하여 사용하는 클래스 등의 경우 LogTrace를 적용시키는 요구사항을 어떻게 만족시킬 수 있을까요? 지금까지 배운 방법은 사용하는 클래스를 빈으로 등록하여서 Proxy로 바꿔치기 하는 방법인데 그렇다면 LogTrace를 적용하고 싶은 모든 클래스를 빈으로 등록해주어야 하나요?
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
IAM 역할 부여
sec3에서 IAM 역할 실습을 해보고 있는데 강의와 동일하게 역할을 생성하고 EC2에 연결을 해주었는데 여전히 아래의 명령어를 통해서 iam 사용자 리스트에 접근이 불가합니다. aws iam list-users IAM 역할을 생성했을 때 역할에 대한 새 인스턴스 프로파일을 생성하지 못했습니다. Instance Profile EC2_IAM_ReadOnly_Role already exists. 역할 EC2_IAM_ReadOnly_Role이(가) 생성되었으나 몇 가지 오류가 있습니다. 아래 오류 설명을 참조하세요와 같은 에러가 떴었는데 어느 부분이 잘못된지 모르겠습니다
-
미해결3. 웹개발 코스 [Enterprise Architecture(EA) X 전자정부프레임워크]
현강의 및 국비지원 수강생입니다.
다름이아니라 3차과제로 saas를 만들려고합니다. 전자정부프레임에서 제공해주는 것들을 이용해서 작업하려고합니다. 문제는 전자정부프레임에서 기본적으로 다운되는 프로젝트 파일을 그대로 런칭하면, 홈페이지이지saas는 아니지 않나하는 생각에 걱정이되어서 이 전자정부프레임을 saas형태로 어떻게 바꿀 수 있을까 하는 생각이 들었습니다. 1차로는 개발자가 코드로 입력하는 이미지 등등의 부분을사용자가 입력하는 분으로 바꾸면되지않을까 하다가너무 일이 커지고 가능하기는 할까? 하는 생각도 들어서 전문가분께 염치 불구하고 문의드립니다. 어떻게 하면 가능할까요? 전자정부프레임 워크 깃허브에 들어가봤습니다. 혹시 이것 외에 saas형식으로 바꾸어서 사용하고 있는 예제가 있거나 찾을 수 있는 방법이 있을까요?
-
미해결워드프레스(WordPress) 완전정복
16강 브라우저에서 출력되는 var_dump() 데이터 자동정렬 툴
16강에서 4분 28초쯤에 강사님이 var_dump() 함수로 데이터를 브라우저 화면에서 출력하셨는데, 화면에 데이터가 정렬되어서 나오던데, 저는 줄글로 표시가 되네요..크롬 브라우저에서 JSON Viewr랑 JSON Formatter외에도 2개나 더 확장팩을 깔았는데도 강사님처럼 안나와서.. 혹시 강사님은 무슨 확장팩을 쓰시길래 데이터가 저렇게 정렬되어서 나오나요?
-
미해결부트스트랩 5(Bootstrap 5) - 기초부터 웹 프로젝트 만들기
부트스트랩 + *.css 함께 사용하는 이유와 분리 기준이 궁금합니다.
안녕하세요. 현재 강의 중 프로젝트 1 단계를 진행중에 궁금점이 생겨 질문 드립니다.index.html 파일 디자인에 부트스트랩 만으로 작업 하지 않고 순수 css 를 함께 이용하시는데요.분류 원칙이 따로 있으신가요? 예를 들면 section 요소에 배경이미지는 *. css 파일에 position : relative, position : absolute 처리도 *.css 에서 처리를 하시네요.
-
미해결Next + React Query로 SNS 서비스 만들기
next-auth 버전을 낮추고 vercel 배포 시 빌드 과정에 에러
안녕하세요, next-auth 5 베타를 사용하다가 "r is not a function"이라는 에러 메시지 때문에 next-auth 버전을 "^4.24.5"로 낮추었더니 해결되었습니다. 그런데 vercel에 배포하려하니 자꾸 아래의 사진과 같은 에러 때문에 어려움을 겪고 있습니다...ㅜ 해당 에러 구글에 찾아봐도 해결방법을 모르겠던데 도와주실 수 있으실까요ㅠㅠㅠ
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
split() 함수에서 pos변수타입을 long long 으로 선언한 이유
안녕하세요 큰돌님 강의 잘듣고있습니다. 위 사진은 교안에 나온 split함수 예시입니다while 조건문에서 사용되는 find함수는 size_t 타입을 반환한다고 하는데 pos도 이에 맞춰서 size_t라는 타입으로 일치해줘야 하지 않나 하는 궁금증이 생겼습니다. 변수 pos를 size_t로 받지않고 longlong으로 받으시는 이유가있는걸까요?
-
미해결스프링 핵심 원리 - 기본편
TestConfig에서 메서드와 return에 관한 질문입니다.
@Configuration static class TestConfig { @Bean public DiscountPolicy rateDiscountPolicy() { return new RateDiscountPolicy(); } @Bean public DiscountPolicy fixDiscountPolicy() { return new FixDiscountPolicy(); } }1. 여기서 메서드와 return의 관계는 DiscountPolicy rateDiscountPolicy = new RateDiscountPolicy(); 와 같이 다형성을 동반한 관계로 보면 될까요?2. 일반적으로 @Bean이 붙은 메서드의 이름으로 빈 이름이 지정되어 올라가는 것으로 알고 있는데 구현체도 빈 안에 같이 구현된다고 보면 될까요...?타입으로 빈을 조회하는 경우에 메서드의 타입으로 생각을 해서 DiscountPolicy.class 타입으로만 조회하는 줄 알았는데 @Test @DisplayName("특정 하위 타입으로 조회") void findBeanBySubType() { RateDiscountPolicy bean = ac.getBean(RateDiscountPolicy.class); assertThat(bean).isInstanceOf(RateDiscountPolicy.class); }여기선 RateDiscountPolicy.class 타입으로 빈을 조회하는 것으로 나와서 헷갈려서 질문드립니다...
-
미해결
index.js
개발자 모드에서 안보입니다live server 는 깔았습니다
-
해결됨스프링 핵심 원리 - 기본편
프로토타입에 프록시 적용해보기
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]강의 프로토타입 예시에 프록시를 적용해 보았습니다.의도한 대로 다른 인스턴스를 호출해주는 것 까진 되는 걸 확인했습니다.다만 로그에 CGLIB라는 라이브러리로 상속 받은 가짜 프록시 객체라고 나오지 않는 것 같고, addCount 로직이 적용이 되지 않는 것 같습니다프로토타입 빈에는 프록시를 적용하면 안되는 걸까요? 왜그런걸까요
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemberRepository와 MemberService 중복 관련
MemberRepository에 findAll과 findOne이 있는데 MemberService에 findMembers와 findOne의, 실상 같은 역할을 하는 메소드를 중복으로 만들어주는 이유가 뭔가요?
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
보드가 너무 뜨거워요
전원을 연결하면 led가 막 들어오면서 칩이 너무뜨거워져요. 다른 코드를 올리도 전원을 껏다 키면 다시 led불이 막 들어오면서 뜨거워지네요. 다이소에서 2000원짜리 5핀케이블을 사서 연결했는데 케이블 문제일까요??
-
미해결Practical Testing: 실용적인 테스트 가이드
잘못된 Interceptor 사용으로 인한 h2-console 접근 문제
안녕하세요. 강의에서 h2 db를 사용하시는 것을 보고 제 개인프로젝트에서 profile이 test일 경우에 h2 db를 써보기로 결정했습니다.그런데 제가 AuthInterceptor를 잘못 만들어서인지 localhost:8080/h2-console url로 접속하면 JSON 응답이 나와버립니다. 어떤 코드가 잘못되었는지, 어떻게 개선해야 하는지 봐주실 수 있으실까요..? 제가 작성한 코드와 설명을 남깁니다. application.ymlspring: profiles: default: local jpa: hibernate: ddl-auto: none mail: host: smtp.gmail.com port: 587 username: kanggi1997@gmail.com password: 보안을위해지웁니다 properties: mail: smtp: starttls: enable: true auth: true --- spring: config: activate: on-profile: local datasource: url: jdbc:postgresql://localhost:5432/forecast?useSSL=false driver-class-name: org.postgresql.Driver username: gunwoo jpa: properties: hibernate: dialect: org.hibernate.dialect.PostgreSQLDialect format_sql: true show-sql: true hibernate: ddl-auto: update --- spring: config: activate: on-profile: test h2: console: enabled: true # /h2-console 설정 datasource: url: jdbc:h2:mem:~/databasesByH2/forecastBE driver-class-name: org.h2.Driver username: sa password: jpa: properties: hibernate: format_sql: true show-sql: true hibernate: ddl-auto: create spring security를 사용하는데 어려움을 느껴 직접 인가를 구현하기 위해 AuthInterceptor와 WebConfig를 구성했고 사이트 회원만 api에 접근할 수 있게 만들었습니다. 로그인하지 않았을 경우 로그인이 필요하다는 메시지를 JSON형태로 전달합니다.AuthInterceptorpackage site.gunwoo.forecastBE.config; import com.fasterxml.jackson.databind.ObjectMapper; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import lombok.extern.slf4j.Slf4j; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; import org.springframework.stereotype.Component; import org.springframework.web.servlet.HandlerInterceptor; import site.gunwoo.forecastBE.dto.ResponseDTO; @Component @Slf4j public class AuthInterceptor implements HandlerInterceptor { private ObjectMapper mapper = new ObjectMapper(); @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { if ("OPTIONS".equals(request.getMethod())) { log.debug("preflight은 통과시킴"); return true; } String loggedInUserEmail = (String) request.getSession().getAttribute("loggedInUser"); if (loggedInUserEmail == null) { response.setContentType(MediaType.APPLICATION_JSON_VALUE); response.setCharacterEncoding("UTF-8"); response.setStatus(HttpStatus.UNAUTHORIZED.value()); ResponseDTO responseDTO = new ResponseDTO("로그인이 필요합니다.", null); String jsonResponse = mapper.writeValueAsString(responseDTO); response.getWriter().write(jsonResponse); return false; } return true; } } 아래의 addInterceptors 메서드에서 AuthInterceptor의 처리를 거치지 않아도 되는 uri를 정의했습니다. h2 콘솔 접근을 위한 uri인 "/h2-console"도 포함시켰습니다. 하지만 여전히 로그인이 필요하다는 응답이 JSON 형식으로 나타납니다.WebConfigpackage site.gunwoo.forecastBE.config; import lombok.RequiredArgsConstructor; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.CorsRegistry; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; @Configuration @RequiredArgsConstructor public class WebConfig implements WebMvcConfigurer { private final AuthInterceptor authInterceptor; @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**") .allowedOrigins("http://localhost:5173") .allowedMethods("GET", "POST", "PUT", "DELETE") .allowedHeaders("Authorization", "Content-Type") .exposedHeaders("Custom-Header") .allowCredentials(true) .maxAge(3600); } @Override public void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(authInterceptor) .addPathPatterns("/**") .excludePathPatterns("/user/join") .excludePathPatterns("/user/login") .excludePathPatterns("/test") .excludePathPatterns("/regions") .excludePathPatterns("/h2-console"); //적용이 안되는 듯 } }
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
api 요청도 안되고, 콘솔도 안떠요.
플레이 그라운드에 정보를 넣는데 이게 왜 오류가 뜨는지 모르겠어요. 분명 몇 주전에는 된 내용을 복사 붙이기로 몇십번 시도해도 안됩니다. 그리고 '섹션 04'부터 api 요청하는 부분 다 안돼요. 뭘 잘못했는지 모르겠습니다.코드만 몇십번 확인하고, 다시 강의 재생해서 봤는데도 Api 요청에만 문제가 있습니다.다른 섹션들도 'api 요청 부분'만 아무리 클릭해도 맨 마지막 이미지와 같이 아무것도 안떠요.구글에서 하라는대로 캐시도 다 지웠고, 확장프로그램도 지우고를 여러 번 했음에도 안됩니다.apollo/client 버전은 3.11.1입니다.api 요청만 다 실패해서 몇주째 잡고 있는데...너무 답답해요.
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
gaurd 에서 reflector가 undefined나옵니다...
안녕하세요. 강의대로 Guard에 대해 같이 진행하였지만, App.module.ts에 { provide: APP_GUARD, useClass: AccessTokenGuard, },를 넣으면,bearertokengaurd에서 isPublic이 항상 undefined로 나와서 exception이 나옵니다...dependency 오류는 안나오는걸로 보아 다른 문제인 것 같은데 도저히 못 찾겠습니다..@Injectable() export class BearerTokenGuard implements CanActivate { constructor( private readonly reflector: Reflector, private readonly authService: AuthService, private readonly memberService: MemberService, ) {}여기 디버깅 했을 때 reflector, authService, memberService 모두가 undefined으로 나옵니다.정확히 this.reflector.getAllAndOverride 가 터지고 있습니다...뭐가 문제 일까요?
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
쿼리를 보내는 부분은 따로 스레드를 만들어서 처리하는건지 궁금합니다.
public class JpaMain { public static void main(String[] args) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello"); EntityManager em = emf.createEntityManager(); EntityTransaction tx = em.getTransaction(); tx.begin(); try { Team team = new Team(); team.setName("TeamA"); em.persist(team); Member member = new Member(); member.setName("member1"); member.setTeam(team); em.persist(member); // team.getMembers().add(member); em.flush(); em.clear(); Team findTeam = em.find(Team.class, team.getTeamId()); List<Member> members = findTeam.getMembers(); System.out.println("==============="); for (Member m : members) { System.out.println("==========="); System.out.println("m = " + m.getName()); System.out.println("==========="); } tx.commit(); } catch (Exception e) { tx.rollback(); } finally { em.close(); } emf.close(); } }위 코드를 실행했을때 출력 결과는 아래와 같습니다.Hibernate: select t1_0.TEAM_ID, t1_0.name from Team t1_0 where t1_0.TEAM_ID=? =============== Hibernate: select m1_0.TEAM_ID, m1_0.MEMBER_ID, m1_0.USERNAME from Member m1_0 where m1_0.TEAM_ID=? =========== m = member1 =========== 제가 예상한 실행 결과는 findTeam.getMembers(); 로 인해 두 번째 select 쿼리문이 나오고 그 다음에 =============== 가 출력 될거라고 예상을 했습니다.근데 실행 결과는 =============== 가 먼저 출력 되고 두 번째 select 쿼리문이 출력 됐습니다.그래서 이걸 보고 든 생각이 main 스레드가 코드를 한줄 씩 실행하다가 findTeam.getMembers(); 부분에서 SQL문을 디비로 보낼 스레드를 만들어서 해당 스레드에게 그러한 역할을 넘기고 바로 다음줄을 실행하여 =============== 가 두번째 select 쿼리문 보다 먼저 출력되는건지 궁금합니다. 감사합니다.