묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실전! Querydsl
MyBatis vs JPA vs JPA + querydsl 질문이 있습니다.
JPA(ORM) 장점 1) RDB에 종류와 관계없이 사용 가능하다. 추후 DB 변경이나 코드 재활용에 용이하다. 2) 비지니스 로직에 집중할 수 있다. 3) 테이블 생성, 변경 등 엔티티 관리가 간편하다. 4) 쿼리에 집중할 필요 없어 빠른 개발이 가능하다. 단점 1) 어렵다. 단방향, 양방향, 임베디드 관계 등 이해해야할 내용이 많으며, MyBatis(SQL Mapper) 장점 1) JPA에 비해 쉽다. SQL 쿼리를 그대로 사용하기에 복잡한 Join, 튜닝 등을 좀더 수월하게 작성 가능하다. 2) SQL의 세부적인 내용 변경 시 좀 더 간편하다. 3) 동적 쿼리 사용 시 JPA보다 간편하게 구현 가능하다. 단점 1) 데이터 베이스 설정 변경 시 수정할 부분이 너무 많다. (Oracle의 페이징 쿼리를 MySQL에서 사용 불가능!) 2) Mapper작성부터 인터페이스 설계까지 JPA보다 많은 설계와 파일, 로직이 필요하다. 3) 특정 DB에 종속적이다. Querydsl 장점 1) 쿼리를 자바 코드로 작성 2) 문법 오류를 컴파일 시점에 잡을 수 있음. 3) 쉬운 SQL 스타일 문법(복잡한 쿼리 작성 용이) 질문 : Querydsl 초반부만 듣고 있는 수강생입니다. 1) 서비스가 MVC + MYBatis에서 JPA + querydsl 바꾸는 점에 있어 생기는 기본적인 문제들이 있을까요? 2) QueryDSL이 MyBatis를 대신해 커버 가능할까요?
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
ESLint 에러 관련 질문
EsLint 에러가 뜨지않아 다른 분들의 질문에 답을 남겨주신 것을 보고 .eslintrc.js파일을 추가하고 settings.json파일에 필요한 코드를 넣어주었습니다. 그런데 계속해서 아래와 같은 오류가 발생합니다. ESLint: Failed to load config "prettier" to extend from. Referenced from: C:\Users\DI-0148\Desktop\test\vue-news\.eslintrc.js. Please see the 'ESLint' output channel for details 해결 방법이 있을까요?
-
미해결스프링 부트 개념과 활용
안녕하세요 질문이 있습니다. :)
안녕하세요. 백기선님 :) 강의 잘 수강하고 있습니다. 이번 강의를 들으면서 궁금한 점이 있어 질문 남깁니다. 1. 강의 내용에서 application.yml 파일에 정의된 속성값을 starter 의존성 내 HolomanConfiguration 클래스에서 @ConfigurationProperties와 @EnableConfigrationProperties 사용하여 주입받는 것으로 이해했는데요. 만약 spring-getting-started 프로젝트에서 application.yml 파일에 holoman 속성값을 주지 않았을 경우, 디폴트 값을 starter 내부에 선언할 수 있는 방법이 있을까요? (가령 holoman.name="kim"이 생략되었을 경우, null 값이 name에 삽입될 텐데, 디폴트 값을 설정하여 "default-name"으로 초기화하는 식입니다.) 2. spring-boot-autoconfigure-processor 의존성의 역할이 무엇인지, spring-boot-autoconfigure 와의 차이점이 무엇인지 궁금합니다. (좀 광범위한 질문인 것 같습니다. ㅜㅜ processor 계통 의존성에 대해 이해할 수 있는 참고 자료가 있을지 궁금합니다.)
-
미해결모던 안드로이드 - Jetpack Compose 입문
ImageCard를 만들 때 질문입니다!!
강의 잘 듣고 있습니다!ImageCard에 인자를 추가하여 ImageCard( modifier = Modifier .fillMaxWidth(0.5f) .padding(16.dp), isFavorite = isFavorite, ) { favorite -> isFavorite = favorite} 위와 같이 작성했는데, ImageCard는 3개의 인자를 가지고 마지막 인자는 onTabFavorite으로 callback 함수입니다!왜 마지막 인자로 넣지 않고 밖으로 빼서 {} 중괄호를 사용한 것인지 궁금합니다!
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
공백 출력 관련 질문있습니다.
end = ' '로 출력하게되면 마지막 숫자 출력이후 스페이스 바가 하나 생기는데 실제 코딩테스트에서 이러한 공백도 깐깐하게 채점하나요? 만약에 마지막에는 공백을 출력하지 않아야 된다면 어떤 방식이 있을까요..?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
C# 스크립트 추가시 오류
유니티 환경 설정에서 게임 오브젝트에 C# 스크립트를 연결하려 하면 오류가 뜹니다 ㅠㅠ 1. 구글링 해본결과 Class 이름과 파일 이름이 일치하지 않아서 생기는 오류라 하여 고쳐보았지만 해결이 되지 않습니다. 2. Assets 폴더에서 스크립트를 따로 생성하여 게임 오브젝트와 연결하는게 아닌 게임 오브젝트에서 Add Component로 아예 스크립트를 추가해보았지만 이 경우에 스크립트는 추가 되지만.. Play 버튼을 누르면 빌드 시스템 에러가 발생합니다. 3. Inspector에서 경고가 발생하였는데 Class 명 일치 1번에서 확인, MonoBehaviour 상속확인도 다 하였지만 경고는 사라지지 않고 있네요.. 정확히 왜 오류가 발생하는지 잘 모르겠습니다..
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
여러대의 서버프로그램에 대하여
안녕하세요. 그랩님.. 진짜.. 강의 너무너무 잘듣고있습니다!공부하다가 ..이 부분을 설명해주실때 문득 궁금한게 생겼는데요,지금 설명해주시는부분은 서버컴퓨터 한대에서 서버프로그램들을 가져온다! 이지만, (실직적으로 카카오톡회사가 서버관리를 어떻게 하고있는지는 모르겠지만) 만약 카카오톡회사에서 서버를 여러대 관리하고있는데 그게 저희가 어떠한 결과를 요청했을때 응답되어지는 리소스들은 모두 한 서버에서 가져오는게 아니라,상품정보만 담긴 api서버, 이미지 가지고있는 파일서버 등 여러대를 운용하고 저희한테 응답으로 모든 리소스가 오는 거라고 생각되는데 이게 맞나요?또..위의 내용이 맞다면, 나중에 백엔드를 구축할때(연습용) 여러대 서버를 구축해서 연습해본다고 가정한다면 저런식으로 aws로 이미지 서버 하나 또.. 막 도커? 같은거로 또 다른 서버 하나 만들어서 요청하는 클라이언트에게 두개의 서버에 저장되어있는 리소스를 전달해보는 형식이 구현 가능할 것 같은데 이렇게 가능한건가용? 그리고 제가 지금까지 한 말이 올바른지도..궁금합니다! 그리고 또 한가지 더 궁금한점은 , 6분28초에서 개발자들이 미리 서버프로그램을 먼저 작성해야된다고 했는데요. 그럼 저희가 VS코드를 이용해서 폴더에다가 저런 이미지, 상품정보, 웹 같은 리소스들을 다 넣어 놓고 클라이언트로부터 요청이왔을때 응답을 할 수 있게 서버컴퓨터를 만들어놓았다! 라고 이해했는데 맞게 이해한건가요?
-
미해결Klaytn 클레이튼 블록체인 어플리케이션 만들기 - NFT
gas 오류
gas 오류 생기시는분들은 gasLimit 수정하시면 됩니다. 좀더 크게
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
질문 있습니다.
[질문 1] PropertySource 혹은 ReloadableResourceBundleMessageSource를 이용해서 프로퍼티 파일을 읽어오는 경우 어떤 차이점이 있나요? [질문 2] 위의 둘을 같이 사용하는 경우 오류가 발생해서 PropertySourcesPlaceholderConfigurer를 등록해줘야 되던데 어떤 이유에서 오류가 발생하고 PropertySourcesPlaceholderConfigurer가 어떤 역할을 하기 때문에 오류가 해결되는지 알 수 있을까요?
-
미해결IT 회사에서 비개발자가 살아남기 위한 모든 개발 지식 A to Z
로그 서버
로그 서버라는 말을 하는데 이건 말씀 하신 데이터 레이크 앞에서 수집을 하는 서버이겠죠? 그러면 카프카는 로그서버의 하나인가요? Rdbms와 빅데이터는 혼용해써도될까요? (데이터 웨어하우스는 rdbms인가요?)
-
미해결레트로의 유니티 C# 게임 프로그래밍 에센스
강사님 이 게임 다른 사람들과 같이 할 수 있을까요?
정말 재미가 있을 것 같아요! 친구들과 만나 같이 할 수 있는건가요? 아님 혼자서 하는 게임일까요?
-
미해결작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지
헤더에 있는 login logout 에 밑줄 제거어떻게 하나요?
css파일에서 a태그 전체를 데코레이션 논을 입력해봐도 제가가 안됩니다 ㅠㅠ 제가 강의 중간에 놓친건지 강사님영상엔 밑줄이 없는데 전 밑줄이 있네요 답변해주시면 감사합니다 ㅠㅠ
-
미해결[개념반]배워서 바로 쓰는 SQL 쿼리
이거 왜 안되나요 ㅠㅜㅠ
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결스프링 배치
실전! 스프링 배치 어플리케이션 개발 source는 어디서 구할수 있나요? 찾을수가 없네요.
실전! 스프링 배치 어플리케이션 개발 source는 어디서 구할수 있나요? 찾을수가 없네요.
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
s3 acls 오류
보고 따라하면서 파일 업로드를 진행했는데 아래와 같은 오류가 뜹니다. File upload failed : AccessControlListNotSupported: The bucket does not allow ACLs 구글링하니 ACL을 활성화시키면 된다고는 하는데 어떻게 옵션을 잡아야지 안전한지 잘 모르겠습니다. 이거 그냥 활성화 시키면 되는걸까요? 어떻게 설정을 하고 변경 사항을 저장해야하는지 알려주시면 감사하겠습니다.
-
미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
2진법 변환 재귀적 접근 방법에 관해 질문 있습니다.
안녕하세요~ 제로초님, 요즘 재귀함수가 너무 어려워서 ㅠ.ㅠ 다양한 문제로 연습해보고 있는데요. 10진수를 2진수를 변환하는 문제를 이런 식으로 재귀적으로 풀어봤어요~ 코드는 다 정상적으로 작동하는데... 사실 그래서 너무 혼란스러워요. 함수가 스스로 불려질 때마다, result가 빈 문자열로 초기화 되는데, 어떻게 최종적으로 result 값이 정상적으로 나오는 지 모르겠어요. 이 문제를 해결해보려고, 콘솔 로그도 여러 곳에 심어봤는데, result는 다 빈 문자열로 떠서, 너무 이해가 안 되네요ㅠ 어떻게 코드가 ( = result 가 ) 아무 문제 없이 잘 작동하는 건가요?? ㅠ.ㅠ function binaryNum(num){ let result = ''; // base case if( num <= 1 ){ return result + num; } if( num%2 === 0 ){ num = parseInt( num/2 ); return binaryNum(num) + '0'; } if( num%2 === 1 ){ num = parseInt( num/2 ); return binaryNum(num) + '1'; } } binaryNum(10); // => 출력값 : 1010
-
미해결[NarP Series] MVC 프레임워크는 내 손에 [나프2탄]
30.10 질문드립니다.
저같은경우는 파일 다운클릭하면 다른이름으로 저장 창이 안뜨고 바로 다운로드가 되어버리네요 . ㅋ 혹시 이유를 알수있을까요?ㅋ
-
미해결제주코딩베이스캠프 Code Festival: JavaScript 100제
2진법 변환 문제 관해서 질문있습니다.
선생님께서 보여주신 재귀함수 풀이법 말고, 저는 처음에 이런 식으로 시도해봤는데요. 값들이 다 잘 나오는데, 사실 그래서 많이 혼란스럽니다. 함수가 스스로 불려질 때마다, result가 '' 빈 문자열로 초기화 되는데, 상식적으로 생각하면, 결과값은 빈문자열이 나와야 할 것같지만, 모든 값들이 잘 나오네요. 콘솔 로그로 도중에 result 값을 찍어봐도 빈 문자열로만 나와서, 더욱더 알아낼 방법이 없네요ㅠ 어떻게 result가 초기화 되지 않고 잘 작동하는 건가요?? ``` function binaryNum(num){ let result = ''; // base case if( num <= 1 ){ return result + num; } if( num%2 === 0 ){ num = parseInt( num/2 ); return binaryNum(num) + '0'; } if( num%2 === 1 ){ num = parseInt( num/2 ); return binaryNum(num) + '1'; } } binaryNum(10);
-
미해결CSS Flex와 Grid 제대로 익히기
input - submit 질문이 있습니다.
안녕하세요, 질문이 있습니다. 찾기 버튼에서 <button type="submit">을 쓰지 않고 <input type="submit">을 쓴 이유가 있을까요?
-
미해결Flutter 중급 1편 - 클린 아키텍처
9강 mockito에서 verify() 함수 에러
9강 mockito를 활용한 테스트 강의 맨 마지막 부분에 실제 동작했는지를 확인하는 verify() 함수를 동작시키는데 에러가 발생해서 질문 남겨드립니다. expect()함수까지는 잘 작동을 했는데요, verify()에서 이렇게 똑같이 동작 시켰는데 에러가 발생하고 있습니다. verify(client.get(Uri.parse('${PixabayApi.baseUrl}?key=${PixabayApi.key}&q=iphone&image_type=photo'))); 에러는 No matching calls(actually, no calls at all.)이라고 나옵니다. test('Pixabay 데이터를 잘 가져와야 한다', () async { final api = PixabayApi(); final client = MockClient(); // mockito에서 제공하는 when()함수 when(client.get(Uri.parse('${PixabayApi.baseUrl}?key=${PixabayApi.key}&q=iphone&image_type=photo'))) .thenAnswer((_) async => http.Response(fakeJsonBody, 200)); final result = await api.fetch('iphone', client: client); /// 실제 기대값 expect(result.first.id, 620817); // 실제 동작했는지 검증하는 코드 verify(client.get(Uri.parse('${PixabayApi.baseUrl}?key=${PixabayApi.key}&q=iphone&image_type=photo'))); });