묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
Test코드에 @Transaction 동작 문의
안녕하세요 , 영한님 강의 항상 잘보고 있습니다. 프로젝트를 진행하면서 궁금한 점이 생겨 혹시 도움을 받을 수 있는지 해서 문의남겨봅니다.. Service 에 @Transaction 어노테이션이 있는데 JPA repository save 를 호출하고 의도적으로 exception 을 발생시켰는데요, Test 클래스의 @Transaction 여부에 따라 결과가 제대로 확인되지 않는 점을 발견했습니다. Test 에서 findById 로 rollback 된 회원의 아이디를 조회하려고 하면, @Transaction 어노테이션이 테스트에 없다면 기대한대로 회원이 조회되지 않는데, @Transaction 을 붙이면 서비스에서 exeption 이 발생했는데도 rollback 이 되지 않은건지 테스트클래스에서 회원이 조회가 됩니다. 영속성 컨텍스트를 초기화하거나 @Transaction(readonly=true) 로 해도 마찬가지였고 , 서비스 트랜잭션 propagation 은 REQUIRES_NEW 로 트랜잭션을 분리했을 때는 롤백된 것이 확인되었는데요. 트랜잭션과 서비스가 하나의 트랜잭션으로 묶이면 서비스에서 발생한 exception 에 대한 rollback 은 일어나지 않고 마지막에 테스트가 끝날 때 rollback 이 발생하는 것인가요? 열심히 검색을 해봤는데, 힌트를 찾기 어려워 도움을 구합니다.. 물론 Test에서 findById 를 하는데 @Transactional 이 필요하지는 않지만, 그래도 붙였을 때 영향을 미치는 것이 궁금하여 문의 남깁니다.
-
해결됨코딩은 실전이다! - Git알못을 위한 깃린이코스(Git, Github 실습위주)
슬랙 초대 부탁드립니다.
acejsy@gmail.com 초대 부탁드립니다!
-
미해결Slack 클론 코딩[백엔드 with NestJS + TypeORM]
SQL문 질문
선생님 채팅방 강퇴를 구현중인데, 강퇴한사람이 해당 방 맴버가 맞는지 그리고 강퇴권한(isOwner OR isManager)이 있는지 체크하려는 sql문을 작성중입니다. SELECT `rm`.`UserId` AS `rm_UserId`, `rm`.`RoomId` AS `rm_RoomId` FROM `room_members` `rm` WHERE `rm`.`RoomId` = ? AND `rm`.`UserId` = ? AND `rm`.`isOwner` = ? OR `rm`.`isManager` = ?이렇게 sql을 짜도 될지 모르겠습니다.roomId와 userId에 인덱싱이 걸려서 먼저 처리되고 isOwner OR isManager 둘중 하나인지 확인하려고하는데, 마지막에 or 때문에 풀쿼리들어갈까봐 걱정됩니다. 저렇게 짜도 괜찮을까요?? typeorm으론 이렇습니다. const isManager = await this.roomMembersRepository .createQueryBuilder('rm') .select('rm.UserId') .where('rm.RoomId = :RoomId AND rm.UserId = :UserId', { RoomId, UserId }) .andWhere('rm.isOwner = :isOwner OR rm.isManager = :isManager', { isOwner: true, isManager: true, }) .getOne();
-
미해결함수형 프로그래밍과 JavaScript ES6+ 응용편
array in object... 는 어떤 식으로 재귀가 가능할까요..?
안녕하세요. 강의 덕분에 함수형 프로그래밍이 너무 재밌는 사람입니다..! 감사합니다! 최근에 fxJS 를 통해서 뭔가 만들어보자 라고 생각해서 Hacker News API 를 이용해서 여러함수들을 실행해보고있는데요! 밑의 스크린샷을 보면 객체안에 comments 배열, 또 객체 안에 comments 배열 ... 로 결국엔 하나의 HTML 표현하려고 합니다.뭔가 deppflatten 과 재귀를 사용하면 될것같다! 하고 여러 시도를 해봤는데, 도무지 좋은 정답이 생각이 안나네요..! 이와 같은 문제에 있어서 어떤 느낌으로 해결할 수있을까요??!
-
미해결부트스트랩 5(Bootstrap 5) - 기초부터 웹 프로젝트 만들기
모바일가로모드일경우와 문맥에 변화없는 클래스이름을 넣는 이유
1. 모바일(세로)에서는 정상적으로 나오는데 모바일회전해서(가로)일 경우에는 이상하게 나오는데요. 2.<div class="col-md-3 d-none d-md-block letsgo"> <div class="card card-body letsgo-card"> 클래스에 letsgo 와 letsgo-card를 넣는 이유가 무엇인가요? 위에 있는 클래스를 없애도 문맥에는 전혀 영향이 없는데요. 이유가 궁금합니다. 좋아요댓글 달기 수정한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결C# 윈폼_ 응용프로그램 개발(.NetFramework)
App.config 파일은 없는데 어디에서 추가하나요?
App.config 파일로 변경이라는데 어디에서 어떻게 변경 하면 되는지요? 수강중에 내용이 없어서 질문하기 위해서 자꾸 동영상 강의를 중단 하게 됩니다.
-
미해결타입스크립트 입문 - 기초부터 실전까지
react에서 axios 응답 데이터에 대한 타입 정의 질문
axios data 형식이 위 사진처럼 들어오는데요. 이런 경우 타입 지정을 어떻게 해야하면 좋을까요? 밑에는 제가 잘못 예상한 타입 작성이에요 axios data 배열 첫번째 요소를 제외한 이후 요소들을 useState에 담아 관리할려고 하는데 이 부분까지 참고해서 적합한 타입 지정을 알려주시면 감사하겠습니다.
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
8분쯤
1) ETag사용시 클라이언트가 캐시 메커니즘을 모른다고 하셨는데 그러면 Last-Modified사용시에는 클라이언트가 캐시 메커니즘을 알고있는건가요? 2) 혹시나 아는거라면 캐시 메커니즘을 안다고 하는게 정확히 무슨뜻인가요?
-
미해결프론트엔드 날개달기: Vue, React 배우기 전에 꼭 알아야하는 지식
화살표 함수의 this 질문드립니다!!
화살표 함수의 this는 상위의 스코프를 가리킨다. 이런 개념이잖아요?? 그래서 obj안에 obj를 만들어 거기에서 화살표함수를 통해 함수를 만들고 호출하였습니다. 상위 스코프이기에 test가 출력이 될 거라고 생각했는데 window가 출력이 되더라구요.. 왜일까요?ㅠㅠ const test = { name : 'test1', foo : { bar : ()=> { console.log(this) } } } test.foo.bar()
-
해결됨코딩으로 학습하는 GoF의 디자인 패턴
팩토리 메소드 패턴이 커맨드 패턴을 이용해서 만든 패턴이라고 볼 수 있을까요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 기선님, 항상 강의 잘듣고 있습니다. 다름이 아니고 커맨드 패턴 코드를 보다보니 팩토리 메소드 패턴에서 봤던 코드와 유사한 느낌이 들었는데 혹시 팩토리 메소드 패턴이 커맨드 패턴을 사용해서 만들었다고 볼 수 있을까요??
-
미해결[개념은 호옹~, 실습 빡] SQL 데이터 분석, 활용!
훈련4번과 훈련5번문 무슨 차이인가요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 4. 호크가 구매한 모든 상품의 총 구매 가격은? 5. 호크가 결제한 총 금액은? 둘이 같은 말 아닌가요??
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
제로초님 너무 답답하여 질문드려요ㅠ
제로초님 안녕하세요 고민을 몇시간쨰 해보고 있는데 해결을 못하겠어서 처음으로 글을 올려봐요ㅠㅠㅜ 노드버드 하기전에 배포프로세스를 익히고자 CNA로 테스트 레포를 만들고 따라하고 있었는데요 그냥 sudo yarn start로 했을 때는 잘되서 ip 주소로도 접속이 가능한데 이런 에러가 나는데 왜이러는걸까요??ㅠ
-
해결됨Slack 클론 코딩[백엔드 with NestJS + TypeORM]
validation pipe를 거쳐서 나온 에러의 이름을 Bad Request 대신 다른 이름으로 사용하고 싶습니다.
안녕하세요. 조현영님 강좌를 보던 중 요청 값들을 dto로 묶은 후 거기에 class-validator 객체에 원하는 validator를 설정시키고 (ex: IsString(), IsNumber() 등) 해당 validator 조건의 부합 하다면 만들어 둔 exception filter 함수 안에 조건에 따라 Validation exception 혹은 http exception 일 때 응답을 다르게 정의 한 내용을 보았습니다. 그 중 하나 거슬리는 부분이Validation exception을 통해 온 에러는 "Bad Request"가 고정이라는 것입니다. 혹시 이 값을 "Unsupported Media Type"으로 바꾸고 싶은데 방법이 있을까요?
-
미해결[개념은 호옹~, 실습 빡] SQL 데이터 분석, 활용!
훈련의 정답은 어디서 볼 수 있나요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 훈련의 정답은 어디서 볼 수 있나요?
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
toString과 String,valueOf
public String solution(String str) { String answer; char[] s = str.toCharArray(); int lt = 0, rt = s.length - 1; while (lt < rt) { if (!Character.isAlphabetic(s[lt])) lt++; else if (!Character.isAlphabetic(s[rt])) rt--; else { char tmp = s[lt]; s[lt] = s[rt]; s[rt] = tmp; lt++; rt--; } } answer = String.valueOf(s); //answer=s.toString(); return answer; } 위의 코드에서 answer = String.valueOf(s)와 주석처리한 answer=s.toString이 어떤 차이점이 있을까요?? 두 코드 다 s를 스트링으로 바꿔서 answer에 넣어주는거라 생각했는데 주석처리한 코드로 제출하면 오답이라도 나오네요
-
해결됨블렌더 3.0에서 인테리어 디자인 하기
벽체 모델링 강의 누락
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 강의 잘 듣고 있습니다. 그런데 벽체 모델링 wall6부분 마지막 1강이 누락된 것 같네요. 강의 참고해서 만들어야하는 급한 과제가 있는데 가능한 빨리 추가파일 받아볼수있을까요? 그리고 바닥 모델링 강의에서 archipack이 제대로 보이지 않고 투명하게 표시되는데 뭐가 문제인 걸까요ㅜㅜ
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
Vivado 설치 문의
안녕하세요. Vivado 설치 문의 드립니다. 어제 가입해서 수강을 시작했습니다. 자일링스 홈페이지에 들어가서 vivado를 다운받으려고 하니. vivado design sute -HLx Editions 다운받는 곳을 못 찾겠습니다. 현재 products -> HW development 로 들어가면 Vivado ML은 있어요. Vivado ML Standard Edition Free 를 다운받으면 되나요?
-
미해결[개념은 호옹~, 실습 빡] SQL 데이터 분석, 활용!
3번문제 질문드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 3번문제에서 저는 위에걸로 했고 홍팍님은 강의에서 밑에걸로 하셨습니다. JOIN에서 users.nickname ="홍팍"으로 하는 것과 WHERE에서 저처럼 하는 것은 어떤 차이가 있고 어떻게 하는 것이 더 좋은 방법일까요? 감사합니다. SELECT users.nickname AS "주문자명", orders.id AS "주문번호", payments.amount AS "결제금액" FROM users JOIN orders ON orders.user_id = users.id LEFT JOIN payments ON payments.order_id = orders.id WHERE users.nickname = '홍팍' ; ======================== SELECT users.nickname AS "주문자명", orders.id AS "주문번호", payments.amount AS "결제금액" FROM users JOIN orders ON orders.user_id = users.id AND users.nickname = '홍팍' LEFT JOIN payments ON payments.order_id = orders.id ;
-
미해결처음 배우는 리액트 네이티브
setIsEditing 실행 과정에 대해 질문이 있습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 3:24 에 setIsEditing 에 관련해서 질문이 있습니다. 1. 47번째줄에 edit 컴포넌트의 onPress에 익명함수를 전달하고 있음을 이해했습니다. 1 - 1) IconButton.js를 보면, IconButton은 onPress가 들어올 경우 무조건 item.id를 onPress의 파라미터로 전달하고 있습니다. edit의 경우, item을 prop으로 전달하지도 않았고, item의 디폴트값도 id를 저장하고 있지 않습니다. 그런데 어떻게 에러 없이 동작이 되는지 궁금합니다. 1 - 2) 두번째로 IconButton은 setIsEditing함수가 무엇인지 모를텐데 어떻게 동작하는건지 궁금합니다. 2. 이 강의와 관련없이 저장할때마다 자동으로 props들을 추가하면 줄바꿈이 되는데 어떤 익스텐션을 쓰시는지 궁금합니다. vscode 익스텐션 전부 설치했는데 저는 자동으로 안되어서요 혹시 다른 익스텐션을 쓰시는건가요? 자바스크립트를 배운지 오래되어서 그런건지 리액트 기초나 동작원리를 이해 못해서 그런건지 명확하지 않은 부분이 많네요. 그래서 질문이 횡설수설한거 같습니다. 답변 주시면 감사하겠습니다.
-
미해결차량 번호판 인식 프로젝트와 TensorFlow로 배우는 딥러닝 영상인식 올인원
문의
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강사님, 안녕하세요 :) 지난번 캐글예제로 배우는 머신러닝 강의 따라서 본 강의도 신청하게 되었습니다! 프로젝트 진행에 큰 도움 감사드립니다, 혹 이 강의도 개인 블로그에 출처 기재하여 공부한 내용 정리해서 업로드 진행해도 될지요? 또한, 인프런에 제공하시는 강의 모두 동일한 기준으로 이해하면 될지 문의 드립니다 :) 이 강의도 잘 따라가보겠습니다! 감사합니다!