묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part9: MMO 컨텐츠 구현 (DB연동 + 대형 구조 + 라이브 준비)
아이템 슬롯 중복문제 질문드립니다.
몬스터를 한 번에 여러마리를 잡을 경우 이런 식으로 슬롯이 중복되는 문제가 자주 발생해서 아래 사진처럼 PushAfter로 타이밍을 조절해서 해결은했는데.. 맞는 방법인지 궁금합니다. 아니면 다른 해결 방법도 있을까요?
-
미해결
주피터노트북 오류
이렇게 했는데 왜 실행을 해도 결과가 않나오나요? 주피터노트북은 처음이라서..
-
미해결초보를 위한 도커 안내서
질문이 있습니다.
터미널 어떤거 사용하시나요..? 너무 깔끔하게 잘되어있어서 저도 똑같이 세팅하고싶은데 참고할만한 사이트가 있을까요~? 전 iterm2 사용하고 있습니다!
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
세션 로그인 인증 관련 질문
Rest api에서 세션 인증 방식을 사용한다고 할때, 이와 관련해서 몇몇 질문사항이 있습니다. 1. 세션의 저장 - 별도의 세션 레포지토리를 구성하고, 클라이언트의 요청이 올때 세션 레포지토리로부터 유저의 정보 조회해야 하는지 - 톰켓이 세션 저장소를 보유? 해서 request.getSession & session.getAttribute 사용 2. 로그인 당시 응답 - 클라이언트한테 response에 세션 아이디를 같이 넣어서 보내줘야 하는지 - 그럴 필요없이 톰켓이 세션 내부 저장소를 가져, 항상 세션 아이디를 보내주는지 postman으로 테스트 해볼때는 sessionId를 쿠키(postman이 가지고있는?)에 저장해서 보관하고이 값을 갱신해주기 전까지는 같은 값을 보유하고 있는데 세션을 별도로 저장하고 응답으로 주어야 하는지, 그럴 필요가 없는지 헷갈려서 질문드립니다. 3. 예를 들어 유저가 상품을 구매하는 request를 rest api를 통해 날리면, 백엔드와 프론트엔드가 통신할때 userId 혹은 username으로 회원의 정보를 보내는게 아니라,sessionId(인증에 필요한 정보, 토큰이던지)와 상품 정보를 보내주고,백엔드에서는 세션 id를 통해 세션 저장소에 저장되어있는 유저의 정보를 얻고, 이를 기반으로 상품 구매 처리를 해야 할 것 같은데,이 경우 강의에서 말씀하신대로 여러 유저의 요청이 많은 경우, 서버에 부하가 오는 것 같아 별로인 것 같기도합니다. 그래서 어떻게 처리하는게 맞는지 더 헷갈리는 것 같습니다.이렇게 처리하는 방식으로 하는게 맞는 지 ( 세션이나 jwt 토큰을 사용할 경우) 궁금 합니다. - 이게 맞다면, 모든 컨트롤러에서 매번 세션 레포지토리를 조회해야하는데 번거로운걸 보니 맞는 방법이 아닌것 같고요.. - Config에 bean으로 세션 체크하는 로직을 등록해서 사용하는 방법을 채택할수도 있는것 같고, 리턴값으로 적어도 회원의 아이디는 줘야 하니 4. 또한 jwt 토큰 방식으도 있어스프링 시큐리티를 사용하지 않고 구현을 해보고 싶은데 이 경우에는 jwt 토큰 레포지토리를 구성해서 해보는게 맞는지 궁금합니다.정확한 답이 아니라, 어떤걸 찾아보면되는지 힌트 방식이여도 좋으니 알려주시면 감사드리겠습니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
h2 질문드려요
jpashop으로 하면 파일도 만들어지고 연결성공하는데요 여기까지오면 연결이 되지않고 아래와 같은 오류가 뜹니다 뭐가 문제일까요 영상에서 했던 것과 다르게 실시햇던 것은 다운은 받았으나, 터미널로 진행하는 부분을 정확하게 인지하지 못해서 주소창에 localhost:9092(제포트)/h2-console 로 접근해서 jdbc:h2:~/jpashop 연결했습니다. 추가 ++) 위와 같이 실행해서 h2 페이지를 연 후에도 같은 오류가 나더라고요. 전에 다른 강의에서 썼던 db입니다. 해당 데이터 베이스로는 잘 접속이 되는데 이걸로 application에 url설정 넣고 사용해도 되는건가요?
-
해결됨따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
[34강] 로그인, 로그아웃 자체는 잘 되는데 콘솔에서 에러가 뜹니다.
안녕하세요 :) 좋은 강의 잘 듣고 있습니다. 로그인, 로그아웃 자체는 잘 되는 것 같은데 콘솔창에서 /api/users/auth가 존재하지 않는다는 에러가 떠서 질문드립니다. 동일한 현상의 다른 질문들을 찾아보았는데, 딱히 제 코드에 맞는 해결방안이 아니어서 질문드립니다. 에러 현상은 아래와 같습니다. 맨 처음 시작페이지를 열 때부터 404 에러는 떴으며, 로그인을 하려 하는 순간 Uncaught (in Promise) Error: Request failed with status code 404 에러가 뜹니다. 같은 에러인지 모르겠는데 404 에러가 뜨니까 답답하네요... 로그인을 한 후에, 재로그인하려 하니 로그인이 이미 된 상태라고 뜨는걸 보아, 로그인에 성공한 것같긴 한데 (LandingPage에서 res.data.isAuth로 추가로 확인하는 코드를 작성하여 확인해봤습니다.) 에러의 원인이 궁금합니다. 제 깃헙 주소는 https://github.com/kth990303/boiler-plate-prac 입니다. 필요하신 코드나 장면이 있으시다면 댓글 달아주세요. 오늘도 감사드립니다.
-
미해결실전! 스프링 데이터 JPA
사용자 정의 리포지토리 구현 방법 관련 질문
안녕하세요? 김영한 강사님.제가 Windows 계열의 웹개발만 하다가 이번 Java 웹개발을 시도하면 강의를 접하게 되었는데.. 이렇게 좋은 강의를 들을 수 있게 해주셔서 무한한 감사드립니다. ㅎㅎㅎ 강의를 듣고 사용자정의 레포지토리 구현방법에 대한 궁금증이 생겨서 이렇게 글을 남김니다. 강의에서 JpaRepository 인터페이스를 상속받은 인터페이스에 일부 확장 쿼리문을 만들고querydsl, native query등의 확장은 xxxxImpl 식으로 확장해서 만들고 있습니다. 이점이 제가 보기에는 많이 번거롭다는 느낌이 들었습니다. JpaRepository 인터페이스의 구현체인 SoleoSimpleJpaRepository 클래스를 직접 상속받아서 확장하면 더 편리하지 않을까 하는 생각이 들었습니다. 구현체가 다양한 것도 아닌듯 하고 Hibernate로 거의 고정되어 있는 듯한데 편리성을 고려해서 이렇게 진행한다면 제가 생각하지 못한 문제점 들이 있는지 문의 드립니다. 제가 아직은 지식이 짧아서 질문이 적절한지는 모르겠으나 시간 허락되시면 답변 부탁드리겠습니다. 감사합니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
1차캐시 질문드립니다.
1차캐시관련 질문이 생깁니다. 서버 A와 B가 있습니다. 1. A가 C테이블에 123을 추가합니다. 2. B가 C테이블에 123을 수정합니다. 3. A가 C테이블에 123을 조회합니다, 이런경우 1차캐시로 인하여 수정되기 전 데이터가 조회되는것인가요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
빌드 에러 질문입니다.
npm run build하면 이런 에러가뜨는데 도통ㅇ 머가문젠지 모르겠습니다..ㅠㅠ stringify 를 쓰면 나는 에러같은데 저는 안쓰고있는데 이러네요..
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
질문
만약에 df_seoul["상호명_소문자"] = df_seoul["상호명"].str.lower()여기서 상호명을 소문자로 적용안시키고 그대로 진행할꺼면 df_seoul로 진행하게 되는데 df_seoul[df_seoul["상호명_소문자"].str.contains("이디야|이디아|ediya")원래는 이렇게 적혀있었는데 위에 말한거처럼 소문자로 적용안시키고 df_seoul에서 이디야인 데이터를 뽑아올려면 그대로 df_seoul[df_seou.str.contains("이디야|이디아")]이런식으로 적는게 아닌가요?? AttributeError Traceback (most recent call last) <ipython-input-52-b4b802b725ae> in <module> ----> 1 df_seoul[df_seoul.str.contains("이디야")] ~\anaconda3\lib\site-packages\pandas\core\generic.py in __getattr__(self, name) 5463 if self._info_axis._can_hold_identifiers_and_holds_name(name): 5464 return self[name] -> 5465 return object.__getattribute__(self, name) 5466 5467 def __setattr__(self, name: str, value) -> None: AttributeError: 'DataFrame' object has no attribute 'str' 이러한 오류가 뜹니다
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
postman sending request...
안녕하세요 선생님 제가 pc를 껐다가 다시 강의를 듣게 되서 그런지 잘모르겠는데 똑같이 코드도 작성하고 npm run start를 시작하고 postman에서 send를 했는데 sending request가 계속 되고 있어서 그렇습니다. 혹시 짐작가는 사유가 있는 지 여쭙고자 질문드립니다.
-
해결됨스프링 핵심 원리 - 기본편
final 이 붙으면
안녕하세요 영한님 강의 너무 잘보고 있습니다! 다름아니라 private final MemberRepository memberRepository; 에서 final 처리 덕분에 memberRepository 인스턴스가 초기화되기 전까지는 이를 사용하지 못하게 하기 때문에, 생성자를 통해this.memberRepository 즉 final로 선언한 memberRepository 인스턴스안에 값이 들어오게끔하여 비로소 사용이 가능하게 되는 것인가요? public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicy discountPolicy) { this.memberRepository = memberRepository; this.discountPolicy = discountPolicy;}
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
MVC 패턴에서 Model 의 정의
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(http://bit.ly/3fX6ygx)을 먼저 확인해주세요. 3. 질문 잘하기 메뉴얼(http://bit.ly/2UfeqCG)을 먼저 읽어주세요. 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요 항상 강의 너무 잘 듣고 있습니다. 강의를 듣고 Servlet -JSP를 이용한 MVC 패턴에서 Controller = Servlet View = JSP Model = Request(Attribute) 라고 이해했는데요, 이 때 Controller 와 View 가 서로 Model(Attribute) 을 통해 데이터를 주고받는다고 이해했습니다. 그리고 이 Controller 를 좀 더 객체지향적으로 만들기 위해 Service 와 Repository로 레이어를 나누어 역할을 분리한다고 이해했는데요. 그런데 최근 후배에게 MVC 개념을 설명해주다가 이상한 걸 발견했습니다. 저희 회사 신입사원 교재에 MVC 패턴의 정의가 이렇게 나와있는 겁니다. - Model : 비즈니스 로직(클라이언트 요청에 대한 업무 처리) 및 데이터 담당 >> 비즈니스 로직 = business service(biz) + data access object(dao) 이걸 보면 Service 와 Repository는 Model 에 해당하는 개념처럼 보입니다. 또한 해당 교재에서는 이처럼 비즈니스 로직을 Controller(Servlet)와 분리하는 것이 곧 MVC 패턴이라고 설명하고 있는데요, 제가 이해하는 "Controller(Servlet)와 View(Jsp) 를 분리하고 Model(Attribute)로 데이터를 전달하는 것이 곧 MVC 패턴이다" 라는 개념과 사뭇 다른 것 같습니다. 제가 뭔가 잘못 이해하고 있는 걸까요?
-
미해결타입스크립트 입문 - 기초부터 실전까지
index.ts 파일에 밑줄이 안뜨네요...
아래 마지막글 참고해서 setting.json파일에 문구 추가하고 했는데 index.ts파일에 밑줄이 뜨지 않는데 어떻게 해결해야 하나요?? ㅠㅠ
-
미해결Vue로 Nodebird SNS 만들기
nuxtServerInit 이후로 오류가 뜹니다 ㅜ
안녕하세요 제로초님 기존 질문 확인해봤는데 해결하는데 어려움이 있어 질문드립니다. store/index.js에 export const state = () => ({}); export const mutations = {} export const actions = { nuxtServerInit({commit, dispatch, state}, {req}) { return dispatch('users/loadUser') } } 이렇게 넉스트서버 인잇 한 이후에 이렇게 콘솔과 터미널에 에러가 뜸니다 ㅜ store/users.js async loadUser({state, commit}) { try { const res = await this.$axios.get('/user', { withCredentials: true, }) console.log(res.data); commit('setMe', res.data) console.log(state) } catch (err) { console.error(err) } }, 이 코드 보시면 loadUser 액션에서도 틀린 부분은 없는것 같은데 무슨 문제인지 해결하는데 어려워서 질문드립니다ㅜㅜ!! 근데 오류가 뜨긴 하지만 새로고침하면 로그인 상태 유지도 되고 이상은 없어 보이긴 합니다. 근데 그냥 내비 두는게 나중에 큰 문제를 발생시킬거 같아서 질문드려요!ㅜ
-
미해결mongoDB 기초부터 실무까지(feat. Node.js)
post 요청시 content-type 설정
다음 강의에서 추가 안내가 있었으면 합니다. 위치 : Node.js & Express를 활용한 REST API 만들기 / Express Middleware post 전송시 header 정보에 content-type=application/json 을 명시하지 않으면 데이터가 넘어가지 않습니다. 간단한 header 정보의 설명도 있었으면 합니다.
-
미해결파이썬 증권 데이터 수집과 분석으로 신호와 소음 찾기
질문 7.pyplot의 subplots로 서브플롯 그리기
강의 잘 듣고 있습니다. 7번 코드 관련해서 질문이 있는데요, 왜 Plt.subplots(1, 2, figsize = (15,4)) 를 fig, axes 두 변수에 할당한 것인지 잘 이해가 안됩니다. 이 부분 설명 부탁드립니다. 감사합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
InputManager와 PointerEvent와의 관계에 대해 질문이 있습니다.
해당 강의를 보고 InputManager 를 통해 키입력, 마우스 포인터 입력에 대해 정의를 하고 사용했는데 UI로 넘어가면서 드래그 앤 드랍이나 더블클릭 같은 경우 PointerEvent를 사용하는 것이 더 편리하다는 생각이 들었습니다. 이럴 경우 계속 InputManager를 사용해 구현하는건지 아니면 UI 구현부에서는 EventHandler를 혼용해도 되는지 궁금합니다.
-
미해결Vue.js 제대로 배워볼래?(Vue.js 프로젝트 투입 일주일 전)
질문있습니다.
먼저 좋은 강의 만들어주셔서 감사하다는 말씀드립니다. 해당 강의 들으면서 커스텀 디렉티브를 사용하지 않고 포커스를 주려면 어떻게 해야하지? 라는 의문점이 들어서 해봤는데 options api를 사용할때 input 에 ref 속성을 추가해서 methosds 에 this.$refs.이름.focus() 이런식으로 접근하잖아요? 근데 compotions Api 를 사용할 경우에는 어떤식으로 해야하는지 궁금합니다. onMounted를 선언하고 그 안에 this.$refs 를 해도 this 자체를 참조하지 못하더라구요. 물론 vue를 사용하는 이상 직접적으로 돔을 참조해야하는 경우는 별로 없겠지만 다방면으로 공부하고 싶어서요 이런 경우에는 options api 의 방식으로만 가능한건지 다른 방법이 있는지 궁금합니다. (요점 : setup 함수에서 커스텀 디렉티브를 사용하지 않고 input 과 같은 돔에 직접 참조하여 focus 같은 이벤트를 주는 방법?)
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
th:field="*{item.itemType}" 정상 출력
안녕하세요. item.html은 객체가 넘어오지 않으니 th:field="${itemType}"에서 th:field="${item.itemType}"으로 변경해야 한다고 알려주셨는데요. 이 부분은 아주 잘 이해가 갔는데 제가 우연찮게 실수로 th:field="${item.itemType}"으로 변경해야 하는 것을 th:field="*{item.itemType}"으로 변경했는데 th:field="${item.itemType}" 변경한 것과 똑같은 값을 출력합니다. '*' 연산자는 object를 부모 태그에서 받았을 때, 해당 오브젝트의 프로퍼티 값에 접근하는 기능을 한다고 배웠는데. th:field="*{item.itemType}"을 해도 왜 되는 건가요?