묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Spring Boot JWT Tutorial
findOneWithAuthoritiesByUsername로직
삭제된 글입니다
-
미해결스프링 핵심 원리 - 기본편
생성자, setter 주입 시 빈 생성
안녕하십니까 선생님 해당 '다양한 의존관계 주입 방법' 강의에서 강사님이 setter주입은 단계가 나눠져있고, 생성자 의존관계 주입은 빈을 등록하면서 의존관계 주입이 동시에 일어난다고 말씀해주셨습니다. 단계로 나눈다는 말씀은 빈을 등록하고, 의존관계 주입을 할 때, 컨테이너에서 빈을 조회하여 주입시킨다. 이 부분은 이해가 됩니다. 그런데 제가 이걸 강의를 두 번째 들으면서 너무 깊이 생각한건지 만약에 OrderServiceImpl을 빈으로 등록할 때, 자동으로 의존관계 주입이 일어난다고 하시지 않으셨습니까? 그러면 MemberRepository와 DiscountPolicy가 아직 빈에 등록이 안될 경우가 있나요?? 이럴 경우에 어떻게 실행과정이 이뤄지는지 궁금하여 QnA를 찾아보았습니다. https://www.inflearn.com/questions/89770 위의 답변을 보고 제가 이해한 내용은 빈 등록과 의존관계 주입이 동시에 일어나게 될 때, 1. MemberRepository가 아직 빈에 등록되지 않으면 스프링은 위의 빈을 찾아 등록하고 OrderServiceImpl의 의존관계 주입에 사용 2. DiscountPolicy도 1번과 같이 실행이 된다. 라고 생각하면 될까요?? 결국에는 setter 주입은 단계가 나눠지고, 생성자 의존관계 주입은 동시에 일어난다 이렇게 구분지어 말씀하신게 이해를 쉽게 하기 위해서 강의하신건지,, 아니면 setter주입과 생성자 주입에 상관없이 1,2번 처럼 되는지 궁금합니다. ------------------------------------------------ 14:33에 말씀하시는 생성자에서 의존관계 주입할 때 생성자 파라미터를 가리키시면서 가급적 필수값이라고 말씀하셨는데 인자가 필수라는 말씀이신건지, 객체가 무조건 있다는 말씀이신지 궁금합니다! ------------------------------------------------- setter주입은 선택, 변경 생성자 주입은 불변, 필수 라고 말씀하셨습니다. setter주입은 setXXX 메서드를 통하여 변경할 수 있고, 파라미터마다 setXXX를 만들면 선택적으로 주입할 수 있다.라고 생각이 들어 선택, 변경은 이해가 됐습니다. 생성자 주입은 생성자가 1번 호출 되는 것이 보장되기 때문에 불변도 이해가 됐습니다. 그러나 필수 이 부분은 어느 부분때문에 필수라고 말할 수 있는지 궁금합니다!! 긴 글 읽어주셔서 감사합니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat
JDK 11버전 사용중이고, 무료버전은 war를 사용할 때 톰켓 문제가 발생할 수 있다고 하셔서 gradle로 설정창에서 설정했습니다. 그리고 build.gradle에서 tomcat관련된 한 줄 삭제까지 했는데 톰캣 문제가 발생해요 ㅠㅠ
-
미해결Node.js에 TypeScript 적용하기(feat. NodeBird)
nodemon
저 혹시 node typescript 에서 nodemon 을 설치해서 실행시킬려고하는데여 설치는 npm install -D nodemon 했구 package.json 에선 설정을 "scripts": { "dev": "nodemon", "start": "tsc && node index" }, 으로 했는데여 실행을 npm run dev 로 하니깐. cannot find module index.js 라고 나오더라구요. npx ts-node index.ts 로는 실행이 되는데 , 어디가 잘못됬을까요 ?
-
미해결실전! 스프링 데이터 JPA
RequestBody 내부에 List가 들어가는 경우
공부하다가 이해가 안되는게 있어서 남겨봅니다. 만약 post API가 다음과 같은 RequestBody를 받도록 설계하고 싶다고 가정해보겠습니다. // Item entity { "name": "string", "type": "string", "count": 999, "infoList": ["aaa", "bbb", "cc"], "remark": "string" } 질문 1. 강의를 통해 배운 방법으로 infoList를 만든다면 Info Entity를 별도로 만든 다음Item과 Info를 Join하는 방법이 있을 것입니다.그런데 info는 문자열만 있으면 되기 때문에 굳이 뎁스가 있게 구성하고 싶지 않았습니다.Info entity 없이 단순히 Item 엔티티에 배열만 넣는 방식은 무엇이 있을까요?@ElementCollection가 있다는 것은 아는데 이것만으로도 충분한지 궁금해서 질문을 남겨봅니다. 질문 2. 만약 Info entity를 만든다고 가정하고... 위 json처럼 리스트에는 문자열만 넣을 수 있을까요?@JsonUnwrapped라는 것이 있길래 이것으로 가능할까 궁금해서 질문을 남깁니다.
-
미해결따라하며 배우는 TDD 개발 [2023.11 업데이트]
beforeEach 사용 이유에 관해 질문드려요~
``` let req, res, next;beforeEach(() => { req = createRequest(); res = createResponse(); next = null;}); ``` beforeEach 강의 에서 전역 컨텍스트에 대해 위 코드처럼 하라고 말씀해주셨는데, 특정 describe 안에서만 공유 되는 값에 어떤 동작을 해야할 땐 beforeEach를 사용해야 하지만 위 코드처럼 단순히 '모든 테스트에서 공유해야 하는 값' 을 정의하는건 ``` const req = createRequest();const res = createResponse();const next = null; ``` 그냥 이렇게 상수로 정의하면 되지 않나요? beforeEach를 사용해야만 하는 이유가 있는지 궁금해서 질문드려요. 좋은 강의 잘 보고 있습니다 감사합니다.
-
미해결
백엔드 개발자 커리큘럼이 어떻게 되나요?
강의가 다양해서 어느 순서로 공부해야하는지 잘 모르겠습니다. 구글에 검색하면 프론트부터 맛보고 넘어가라는 분들도 있어서 인프런내에서 들을 수 있는 강의로 커리큘럼을 짜고싶습니다
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part2: 자료구조와 알고리즘
플레이어 이동이 이상한 것에 관한 질문
두번째 while문 parent좌표를 꺼내올때 코드에서의 질문입니다. while(parent[y, x].Y != y || parent[y,x].X != x) { _points.Add(new Pos(y, x)); y = parent[y,x].Y; x = parent[y,x].X; } 저는 위와 같이 Y와 X에 parent[y,x]에서 바로 Y와 X를 가져와서 대입하는 식으로 코드를 작성하였습니다. 하지만 이 방식으로 코드를 작성하니 문제가 생겼습니다. 위 그림과 같이 플레이어가 모든 코너에서 그러는 것은 아니지만, 중간중간 코너를 지나갈때 코너를 거치지 않고 화살표 방향(대각선)으로 바로 이동하는 문제입니다. (미로는 잘 찾아갑니다) while(parent[y, x].Y != y || parent[y,x].X != x) { _points.Add(new Pos(y, x)); Pos pos = parent[y, x]; y = pos.Y; x = pos.X; } 그래서 혹시나 싶어서 선생님이 작성하신대로 위와 같이 변수 pos를 선언후에 parent[y,x]를 저장하여 y와 x에 대입하는 식으로 코드를 변경하였더니 모든 코너를 찍고 지나가며 정상적인 이동을 보여주었습니다. 위 코드와 아래 코드의 차이점이 무엇이고 왜 문제가 발생 하는것인가요? 과정의 차이일 뿐 결과는 같아야 하는것 아닌가요?
-
해결됨홍정모의 따라하며 배우는 C++
20.6 nanogui 실습 중 오류 발생 문제입니다.
영상에서 설명해주신 것과 같이 properties를 설정하고 빌드했습니다. exe파일 실행 시 abort() has been called 오류 팝업이 출력 됩니다.디버그 시도 시 bad allocation execption이 발생하네요. 해결할 방법을 찾지 못해 도움 부탁드립니다.
-
미해결초보자도 간단히 단숨에 배우는 파이썬 프로그래밍
주피터 창이 뜨지 않습니다
주피터를 실행하면 말씀하신 것처럼 홈페이지가 뜨는데, new>python3를 누르면 계속 새로고침 상태가 돌아가다가 제목없음이 뜨고 blank라고만 나옵니다. 시간을 두고 기다려봐도 나오지가 않는데, 어떻게 해결해야할까요?
-
미해결초보자도 간단히 단숨에 배우는 파이썬 프로그래밍
pip 설정
cmd를 열어서 pip --version을 치면 'pip'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 라고 뜹니다. 어떻게 해야할까요?
-
미해결초보자도 간단히 단숨에 배우는 파이썬 프로그래밍
if문 elif 사용
숫자맞추기 게임에서 while문 뒤에 if가 두 번 오는데 if, elif, else로 쓰지 않고 if로 두 번 써도 되는 것일까요? elif도 다른 조건이 있을 때 쓰는 것은 아닌지 궁금합니다!
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
2분3초에 data=df_last
삭제된 글입니다
-
미해결스프링 핵심 원리 - 기본편
스프링부트 사용 방법
스프링 부트를 사용하면(@SpringBootApplication를 사용하면) 설정 파일을 따로 만들지않고 클래스에 @Repository, @Service, @Controller를 붙여서 자동으로 빈을 등록하고 주입받는 방식으로 개발을 하는건가요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
엔티티 분석에 관하여
안녕하세요 강사님 강의를 바탕으로 개인적으로 개발을 위해 엔티티를 짜고 있는 와중에 궁금한 점이 생겨 문의드립니다! Member 엔티티와 Order 엔티티 간의 관계에서 Member 엔티티에서는 orders로 list타입으로 이용하였는데 Order 엔티티에서는 member는 list타입이 아닌 Member 타입으로 되어있는 것을 보고 list타입과 필드타입이 서로 어떤때에 쓰이는지 왜 list타입으로 쓰였는지 궁금합니다!
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
GThreadManager 전역변수의 이유
CoreGlobal의 멤버변수가 아닌 전역변수로 선언한 이유는 무엇인가요? 다른 클래스(예를들어 CoreGlobal2)가 생겼을 때 같이 CoreGlobal2도 GThreadManager에 접근할 수 있기 때문인가요? extern class ThreadManager* GThreadManager;
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
vue3에서 eventBus 사용시 문의
vue3에서는 event bus($emit, $on)를 지원하지 않아 외부 플러그인 mitt를 사용하여 구현하고 있었습니다. mitt은 main.js에서 등록을 하는데 기존 컴포넌트에서는 무리 없이 사용하여 구현을 따라갈 수 있었으나, routes/index.js에서는 this.emiiter가 undefined로 나오고 있습니다. vue3에서 이벤트 버스를 사용하는 가이드를 받을 수 있을까요? 그리고 외부 mitt 플러그인을 사용할 경우 routes/index.js에 undefined 나오는걸로 봐선 제가 appContext 등록 흐름을 잘못 이해하는거 같네요 ㅠㅠ main.js에서 store도 등록하고, emitter도 등록하는데 routes/index.js에서 달리 동작하는 이유를 문의 드립니다. 감사합니다.
-
미해결TensorFlow Object Detection API 가이드 Part1 - 코드 10줄 수정으로 물체검출하기
Average Recall 질문
마지막 슬라이드 Average Recall 부분 설명 부탁 드립니다 AR given 1/10/100 detections per image의 의미가 이해되지 않습니다
-
미해결작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지
form_valid에 관해서 질문드립니다!
안녕하세요! 수업 일정 차수들을 수강하고 참고하여 개인적으로 다른 서비스를 만들어보고있는 와중에 질문드립니다! ArticleCreationForm을 구현하실때 writer는 서버내에서 설정해주신다고 하시면서 view단에서 temp_article.writer = self.request.user 라고 적어줘서 완성해주신 것 같습니다. 이것을 토대로 사진과 같이 view를 짜봤습니다. 모델의 빨간색 체크부분인 target을 form단에서 처리하지않고 view단에서 서버내에서 설정해주고 싶은데 view단의 체크부분 temp_review.target = 이후에 어떤 코드를 입력해줘야 모델 Riview의 target을 가져와서 user와 같은 뉘앙스로 처리할수있을지를 모르겠습니다. 구글링을 해도 잘 모르겠어서 질문올립니다!
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
netlify 대신해서
netlify 사용하지 않고 그냥 호스팅에 파일업로드는 하면 안되나요? 제 호스팅에 올리고 싶으면 어떻게 해야하나요?