묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨스프링 핵심 원리 - 기본편
싱글톤빈에 항상 새로운 프로토타입빈을 주입하는 방법
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요. 싱글톤빈에 항상 새로운 프로토타입빈을 주입하는 방법에 대해 생각해보았는데요. 혹시 이 방법은 사용하면 안되는걸까요??logic을 실행하기 전 new PrototypeBean이 생성돼서 항상 1이 반환됩니다.static class ClientBean { private PrototypeBean prototypeBean; public int logic() { this.prototypeBean = new PrototypeBean(); this.prototypeBean.addCount(); return this.prototypeBean.getCount(); } }
-
미해결[중급편] 친절한 JETPACK 개론 <상> (Android Kotlin)
Json 형식 데이터 모델 설계 질문드립니다 :)
안녕하세요! 항상 좋은 강의 찍어주셔서 감사하다는 말씀부터 드립니다 :)다름이 아니라 제가 강의를 보고 혼자서 따라하고 있는데 막히는 부분이 있어서 질문 드립니다 !제가 막히는 부분은 Open RestAPI(https://restcountries.com/v3.1/all)를 이용을 하여 데이터를 가지고 오려고 하는데 이걸 가지고 오게 해주는 데이터 모델 설계 부분에서 막힙니다. !!제가 설계한 데이터 모델 설계은 Json 형식으로 되어 있는것을 자동으로 변환해주는 안드로이드 스튜디오 플러그인(Json to Kotlin class)을 이용을 하게 되는데요! 간단한 Json 형태로 되어 있다면 문제가 없이 잘 설계를 해주더라구요!EX) 제가 생각한 간단한 Json 형태{ "student" : [ { "student_id": 30410, "name" : "홍길동", "phone" : "010-12345-1234" }, { "student_id": 30411, "name" : "고길동", "phone" : "010-53455-1256" }, { "student_id": 30413, "name" : "둘리", "phone" : "010-35243-5345" }, { "student_id": 30414, "name" : "아이유", "phone" : "010-13352-5343" } ] }위와 같은 형식은 예를들어 respose.body.studuent.student_id 이렇게 모든 값들이 찍히는것을 알 수 있습니다.하지만 제가 사용하려는 Json 형식의 데이터 형태들은 간단하지 않고, 특정 값을 입력을 해야하는데 이 값이 특정되게 입력해줄 수 없는 형태인데요! 제가 안드로이드 스튜디오 플러그인(Json to Kotlin class)을 이용을 하여 제가 사용하려는 JSON 형태를 data class로 변환을 하여 만들었는데 엄청나게 많은 클래스(500개)가 생겨났습니다. 이유는 모든 데이터 클래스를 생성하여 그에 따른 가능성을 모두 생성하여 대입해줬기 때문입니다.제가 생각해본 방법은 Map을 이용하면 될 것 같은데 1주일동안 고민하고 해결해보려고 했지만 성공하지 못했습니다. 혹시 방법이 있을까요?EX) 내가 사용하려는 복잡한 구조의 Json 형태[ { "name": { "common": "Saint Pierre and Miquelon", "official": "Saint Pierre and Miquelon", "nativeName": { "fra": { "official": "Collectivité territoriale de Saint-Pierre-et-Miquelon", "common": "Saint-Pierre-et-Miquelon" } } }, "currencies": { "EUR": { "name": "Euro", "symbol": "€" } }, "translations": { "ara": { "official": "سان بيير وميكلون", "common": "سان بيير وميكلون" }, "bre": { "official": "Sant-Pêr-ha-Mikelon", "common": "Sant-Pêr-ha-Mikelon" }, "ces": { "official": "Saint-Pierre a Miquelon", "common": "Saint-Pierre a Miquelon" } }, "languages": { "fra": "French" } } ]위는 제가 현재 사용하려는 Json 형태의 일부분 입니다. name-common 같은 부분은 it.name.common을 사용하게 되면 문제없이 사용이 가능하고 생성되는 data class도 적습니다. 이유는 name-common 이라는 필드가 모든 나라에 대해서 공통으로 사용하고 있어서 고정값으로 사용할 수 가 있기 때문입니다.하지만 name-nativeName - "fra" 필드를 보게되면 특정한 값인 fra(위의 예시의 경우)를 특정되게 입력을 해줘야 값을 받아올 수 있습니다. 이러한 "fra"라는 값은 이 나라의 고유의 값이 아니라 모든 나라에서 사용하는 언어 중 한 개 입니다. 그래서 @Path를 이용해 매개변수에 정확하게 입력해줄 수 있는것이 아니라 가능성(모든 나라의 언어)에 대해 모든것을 대입해야만 했습니다. 모든것을 대입해야만 했기 때문에 data class가 매우 많이 생성되는것을 겪었습니다. ( nativeName 필드뿐 아니라 languages 필드를 보더라도 특정되게 "fra"를 찝어야 가져 올 수 있습니다. )아래는 제가 생성한 data model class 입니다.구조는 Country_Response_Detail - Country-ResponseItem)Detail - [ capital, cioc, currencies, languages, name, population, region] 으로 해서 뻗어 나가는 구조입니다 !. if(it.capital==null) { val capital = "" } else { val capital = it.capital.toString().substring(1,it.capital.toString().length-1) //activity_countries_detail.xml 사용 할 capital(수도) 변수 capital_Input_Detail.text = capital //capital_Input_Detail이라는 TextView와 capital 변수 연결 } if (it.currencies==null) { currency_Input_Detail.text = "" //currency_Input_Detail이라는 TextView와 currency 변수 연결 } else { val currency_Index1 = it.currencies.toString().indexOf("name") + 5 val currency_Index2 = it.currencies.toString().indexOf(",",currency_Index1) val currency_Index3 = it.currencies.toString().indexOf("symbol") + 7 val currency_Index4 = it.currencies.toString().indexOf(")",currency_Index1) val currencies_Name = it.currencies.toString().substring(currency_Index1,currency_Index2) val currencies_Symbol = it.currencies.toString().substring(currency_Index3,currency_Index4) val currency = StringBuilder().append(currencies_Symbol).append("(").append(currencies_Name).append(")").toString() //activity_countries_detail.xml 사용 할 currency(화폐) 변수 println("currency_Input : ${currency}") currency_Input_Detail.text = currency //currency_Input_Detail이라는 TextView와 currency 변수 연결 }위에서 만든 data class를 통해 데이터를 받아오면 null 값도 전부 받아오기 때문에..이렇게 데이터를 정제해서 쓰고 있습니다.. 혹시 편하게 그냥 null 값이 아니면 그 데이터의 값만 나오게 가능할 지도 궁금합니다.. 저는 이러한 문제에 직면을 하고 있습니다..두서없이 적어서 이해가 안되실것입니다 ㅜㅜ.. 도움을 주시면 정말 감사하겠습니다 :)
-
미해결
Vivado 설치 중 java.lang.UnsatisfiedLinkError 문의드립니다.
2020.1, 2022.2 버전 모두 이렇게 뜨면서 Vivado 설치가 안됩니다 ㅠㅠ. /home/wonchan/tools에도 설치를 해보았고 /tools에도 설치를 해보았습니다. 그래도 되지 않아서 인터넷에도 가볍게 검색해서 관련 라이브러리를 깔아서 시도해보았지만 잘 안되어서 결국 질문 드립니다..
-
미해결마케터를 위한 구글 애널리틱스 실무
pdf강의북 받고싶습니다 ^^
유익하게 강의 잘 듣고 있습니다. 강의 후에도 따로 공부를 하고 싶기에,PDF강의북 공유 부탁드립니다 ^^ kimjaemin0429@naver.com
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
flutter doctor 실행시 zsh: command not found: flutter가 떠요
어떡해야 하나요? ㅠ인터넷보고 ~/.zshrc 파일을 수정도 해봤는데 안되네요 - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.코드팩토리 디스코드https://bit.ly/3HzRzUMFlutter 강의를 구매하시면 코드팩토리 디스코드 서버 플러터 프리미엄 채널에 들어오실 수 있습니다! 디스코드 서버에 들어오시고 저에게 메세지로 강의를 구매하신 이메일을 보내주시면 프리미엄 채널에 등록해드려요! 프리미엄 채널에 들어오시면 모든 질의응답 최우선으로 답변해드립니다!
-
해결됨스프링 핵심 원리 - 기본편
스프링 컨테이너 라이프사이클 질문입니다.
10: 07초에 보시면스프링 컨테이너는 크게 두가지 라이프사이클 있다라고 말씀하셨는데1. 스프링 빈 등록 단계- 생성자에 @Autowired는 이때 자동적으로 의존관계 주입2. 의존관계 설정 단계 (Autowired가 걸린애를 자동으로 주입)- 수정자에(setter) @Autowired는 이때 자동적으로 의존관계 주입이렇게 이해를 했는데 맞는지 궁금합니다.답변주시면 정말 감사하겠습니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
오큰수 질문입니다.
http://boj.kr/4ead9c34eb8b401bbe829602497dd516arr은 값을 arr2는 입력받은 순서를 담아놓는 배열인데 어디가 틀린것인지 모르겠습니다.
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
bottomsheet 사용하기중 ios simulator에서 키보드가 보이지 않아요~
올려주신 강의는 이렇게 하단에 키보드가 보이는데저는 보이지가 않네요 혹시 버전차이 때문인지 아니면이 키보드도 활성화하는 문법이 있는지 궁금합니다!
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
@RequiredArgConstructor를 붙이면 클래스 캐스트 예외가 발생하고 붙이지 않으면 발생하지 않습니다
저처럼 습관적으로 RequiredArgConstructor 붙이시다가 초반부터 못 넘어가는 분 계실까봐 글 남깁니다생성자 따로 만들어도 저게 있으면 Enviroment만 있는 생성자로 빈을 만들기 때문에 계속 에러납니다.
-
미해결따라하며 배우는 리액트, 파이어베이스 - 채팅 어플리케이션 만들기[2023.12 리뉴얼]
redux, reducer 정의/왜 사용하는지 등등 간단한 설명이라도 있으면 좋겠습니다.
왜 이 라이브러리를 사용하는지 사용목적과 이유를 간단하게라도 설명해주시는게 좋을 것 같습니다.처음 듣는 사람도 있으니까요
-
해결됨스프링 핵심 원리 - 기본편
@Autowired 관련 질문입니다.
다른분 질문에서안녕하세요. g g님, [공식 서포터즈](https://www.inflearn.com/blogs/617) David입니다.자동 빈 등록, 자동 의존관계 주입은 수동 빈 등록, 수동 의존관계 주입을 애노테이션 몇가지를 통해 대체해 주는 게 핵심입니다.이 과정에서 @ComponentScan, @Component, @Autowired 같은 애노테이션이 사용되거나 필요로 합니다.그 중 @Autowired 는 자동 빈 등록에 해당합니다.이런 글이 있었는데 (아래 코드를 예시로 들겠습니다)@Component public class MemberServiceImpl implements MemberService{ //구현 객체를 선택해줘야함 아님null값 private final MemberRepository memberRepository; @Autowired //ac.getBean(MemberRepository.class) 와 비슷(Autowired가 더 기능이 있음) public MemberServiceImpl(MemberRepository memberRepository) { this.memberRepository = memberRepository; }저는 @ComponentScan 이 @Component 가 붙은 MemberServiceImpl 클래스와 memberRepository를 스프링 빈으로 등록하고 그 다음에 생성자에 @Autowired가 자동으로 MemberServiceImpl 과 의존관계를 가지는 memberRepository(스프링 빈)을 타입으로찾아서 의존 관계를주입한다.getBean(MemberRepository.class) 와 비슷(Autowired가 더 기능이 있음)라고 이해하고 있었는데 @Autowired도 빈을 등록하는 것인가요?제가 예시로 든 코드에서 생각하는 과정이 맞는건가요??
-
미해결[핵집] 2025 빅데이터 분석기사(필기)_과목 1~2
강의자료 요청
안녕하세요, 다른 분들과 마찬가지로 강의자료를 요청드립니다.빅데이터 분석기사 필기 1~4 강의 모두 신청하였습니다.pjinyr@nate.com으로 강의자료 부탁드립니다.감사합니다.
-
미해결예제로 공부하는 Python 100 문제풀이 Part.2
파이썬100제 part2 강의자료에서
파이썬100제 part2 강의자료에서37페이지 내용은 어디에서 확인할 수 있나요?영상도 없고 function 자료 폴더에도 없는데...
-
해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
강사님, 질문 하나 더 드립니다!
참조 강의 마지막 영상에 기존에 있던 참조를 끊어버리는 코드를 보여주셨는데요. null 할당 후, 다시 객체의 인스턴스 변수에 값을 입력해주려면 어떻게 해야하나요?다시 객체 생성부터 해서 진행하면 되는 것인지? 궁금해서 여쭤봅니다. cam1 = null; cam2 = null; cam1.name = "길동이"; cam2.name = "똥개"; System.out.println(cam1.name); System.out.println(cam2.name);이런식으로 코드를 작성해보니, NullPointerException이 에러가 발생해서, 어떻게 해야할지 궁금해 여쭤봅니다!
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
reverse 함수 관련 질문드립니다
n = int(input()) a = input().split() def reverse(x): x = str(x) return int(x[::-1]) def isPrime(x): for i in range(2, x+1): if x==i: return True elif x%i==0: return False for i in a: if isPrime(reverse(i)): print(reverse(i), end=" ")위처럼 슬라이싱으로 reverse함수를 작성해도 괜찮을까요?
-
미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
AuthRepository 클래스 token() 함수는 Dead Code 아닌가요?
AuthRepository 클래스에서 token() 함수는 전혀 호출되지 않는거 같은데, Dead Code인가요? (Dead Code가 아니라면, 어디서 호출 되는지 설명 부탁드립니다) Dead Code 가 맞다면, 아래 2개 파일도 필요가 없어서 삭제해도 되는 걸까요?token_response.darttoken_response.g.dart
-
미해결
Maximum call stack size exceeded 왜 오류 나는건가요?..
<div class="n_way_box"> <a id="naver_w" href="https://map.naver.com/v5/directions/-/14365775.444474075,4185359.7991159186,%EC%98%A8%EC%A2%85%ED%95%A9%EB%B3%91%EC%9B%90,13345094,PLACE_POI/-/transit?c=14122828.6708211,4515503.7589505,15,0,0,0,dh"> <div class="way_img_box"> <img src="../img/guide/naver_2.png" alt=""> </div> <a href="https://map.naver.com/v5/directions/-/14365775.444474075,4185359.7991159186,%EC%98%A8%EC%A2%85%ED%95%A9%EB%B3%91%EC%9B%90,13345094,PLACE_POI/-/transit?c=14122828.6708211,4515503.7589505,15,0,0,0,dh"class="naver_text">네이버 길찾기</a> </a> </div> <div class="k_way_box"> <div class="way_img_box"> <a id="kakao_w" href="https://map.kakao.com/?map_type=TYPE_MAP&target=car&rt=%2C%2C492877%2C1130243&rt1=&rt2=%EC%98%A8%EC%A2%85%ED%95%A9%EB%B3%91%EC%9B%90&rtIds=%2C&rtTypes=%2C"> <img src="../img/guide/kakao_2.png" alt=""> </a> </div> <a id="kakao_w" href="https://map.kakao.com/?map_type=TYPE_MAP&target=car&rt=%2C%2C492877%2C1130243&rt1=&rt2=%EC%98%A8%EC%A2%85%ED%95%A9%EB%B3%91%EC%9B%90&rtIds=%2C&rtTypes=%2C" class="kakao_text">카카오 길찾기</a> </div> $('.n_way_box').click(function(){ $('#naver_w').trigger("click") console.log("naver 강제 클릭 a") }) $('.k_way_box').click(function(){ $('#kakao_w').trigger("click") console.log("kakao 강제 클릭 a") }) 이렇게 썼는데 jquery-2.1.4.min.js:3 Uncaught RangeError: Maximum call stack size exceeded 라고 오류 나네요...ㅠㅠ
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
th:value="${region.key}" 질문
안녕하세요. 강의 잘 듣고 있습니다. addForm.html을 공부하다가이 부분에서 궁금한 점이 생겼는데요.th:field는 id, name, value를 채워주니까th:value= "${region.key}" 를 지우고 실행해보니아예 화면 자체가 오류창으로 나오더라구요.위에 체크박스를 공부했을 때는 자동으로 value = "true"가 들어가던데 여기서는 왜 문제가 생기는건가요?추가로 checkbox는 value값과 상관없이선택이 되면 regions=on 이렇게 가야하는 것 같은데여기서는 왜 value값이 대입이 되어서regions=SEOUL, regions=BUSAN 이렇게 들어가는지 헷갈리네요 ㅠ
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
모바일 2d 캐쥬얼 게임
Rookiss 님을 멘토 삼아 게임 개발을 위해 달리고있는 청년입니다 ! 모바일 2d 캐주얼 게임 제작을 목표로 두고있는데 ,결제와 관련된 중요한 장비나 캐릭터 정보같은건 서버에서 처리할까요? 혹시 서버를 따로 공부 해야한다면 루키스님 강의중 게임서버 , 웹서버 둘중 어떤걸 들어야할까요??
-
미해결작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지
python manage.py makemigrations가 안됩니다.
python manage.py makemigrations명령어를 치면ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?라고 뜨면서 안됩니다.어떻게 해야 되나요?환경변수도 수정하고 했는데 안되네요