묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
OrderServiceTest 시 OrderItem 을리스트로 넘길때
안녕하세요. 강의 기준으로 응용하고 싶어서 orderitem을 한개가 아닌 여러개생성하고 주문하려고 하고 있는데 테스트java @Test @Rollback(value = false) public void 상품주문() throws Exception{ Member member = new Member(); member.setName("회원1"); member.setLoginId("admin"); member.setPassword("admin"); member.setEmail("admin"); em.persist(member); Item item = new Item(); item.setItemName("티셔츠1"); item.setPrice(100000); em.persist(item); OrderItem order1 = OrderItem.createOrderItem(item, item.getPrice(), 2,"blue","L"); OrderItem order2 = OrderItem.createOrderItem(item, item.getPrice(), 4,"blue","L"); List<OrderItem> orders = new ArrayList<>(); orders.add(order1); orders.add(order2); Long orderId = orderService.order(member.getId(), item.getId(), orders); Order findOrder = orderRepository.findOne(orderId); Assert.assertEquals("상품 주문시 상태는 : ", OrderStatus.ORDER,findOrder.getOrderStatus()); }OrderService.java @Transactional public Long order(Long memberId, Long itemId, OrderItem... orderItems) { //엔티티 조회 Member member = memberRepository.findOne(memberId); Item item = itemRepository.findOne(itemId); List<OrderItem> orders = new ArrayList<>(); //주문상품 생성 for(OrderItem order : orderItems){ OrderItem orderItem = OrderItem.createOrderItem(item,item.getPrice(),order.getQuantity(),order.getColor(),order.getSize()); orders.add(orderItem); } // 주문 생성 Order order = Order.createOrder(member, (OrderItem) orders); //주문 저장 orderRepository.save(order); return order.getId(); }OrderItem... orderItems 파라미터가 list를 받지 못하는거같은데 혹시 어떻게 해야할까요?
-
미해결[백문이불여일타] 데이터 분석을 위한 중급 SQL
Top Earners 질문
SELECT MAX(months*salary) , COUNT(name) FROM employee GROUP BY months*salary ORDER BY months*salary DESC LIMIT 1제가 다음과 같이 코드를 작성했는데 이것도 정답으로 나오더라고요!GROUP BY에 컬럼이 사용되려면 SELECT에서 컬럼이 정의되어져야 한다고 알고 있는데 정답이 어떻게 나온건지...궁금해요. SELECT에서 컬럼이 그 자체로 쓰이는 게 아니라 함수와 함께 쓰여도 GROUP BY와 함께 쓰일 수 있는 건가요?
-
미해결스프링 핵심 원리 - 기본편
롬복
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]롬복 관련해서 질문이 있는데요 @RequiredArgsConstructor 쓰면 자동으로 생성자에 의존관계가 주입되는 건가요??
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
공공Api 버전업데이트로 인한 항목변경문제
공공 API서비스가 7월20일 부로 업데이트가 된 것 같습니다.API 자체가 여러개로 분열 되고요청메세지 명세의 항목 값들이 전부 바꼈네요일단 변경된 api에 맞는 키만 입력해서 강의를 따라가보겠지만 잘 될진 모르겠습니다.;;
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
스케마에서 리드온리로 버츄얼 작성할때 문의가있습니다.
id를 별도로 적어두질않으니 속성이 없다고 나오더라구요. 근데 선생님화면에서는 id가 없어도 에러가 안나던데 이유가 뭔가요? 일단 이렇게 id를 만들어두었더니 작동도 잘 되고 오류도 안나는데 선생님하고 다른점이 뭔지 궁금합니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
비주얼스튜디오코드 폴더 복사 붙이기 문제
폴더 복사 붙여넣기 후 이름 변경시아래와 같은 에러가 뜬다면뭘 점검해 봐야 하나요?복사 붙이기로 새로 생성된 폴더 안의,파일을 열거나 하지 않았는데,복사 완료 후 폴더명 변경시 왜 오류가 나는 걸까요?답변 주시면 감사하겠습니다. Error: '03-04-rest-api-with-express-board-'을 (를) 'section03'(Error: EBUSY: resource busy or locked, rename 'c:\study\node_codecamp\class\section03\03-04-rest-api-with-express-board-' -> 'c:\study\node_codecamp\class\section03\03-04-rest-api-with-express-swagger')(으)로 이동할 수 없습니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
섹션22 과제5번 질무이있습니다
아래 코드를 실행할때마다 오류가 발생해서 여쭤봤습니다. 그전에 startStandaloneServer가 없을때에는 오류는 안나왔지만 grapql페이지로 접속하였을때 빨간불이 들어오고 서버가 제대로 접속되지않아서 방법을 바꾸니 typeerror가 발생했는데 어디에서도 server.addPlugin을 작성하지않았고 공식페이지에서의 방법도 해봤는데 왜 오류가 나는지 찾지를 못했습니다import { ApolloServer } from "apollo-server"; import { startStandaloneServer } from "@apollo/server/standalone"; const typeDefs = `#test # Board에 관한 Query는 # 로직 내에 Query가 없는 채로 실행했을 때 나타나는 # "Error: Query root type must be provided." 에러 방지를 위한 것입니다. type BoardReturn { number: Int writer: String title: String contents: String } type Query { fetchBoards: [BoardReturn] } type Mutation { # 1. 아래에 createTokenOfPhone API의 요청 데이터 타입을 지정해 주세요. createTokenOfPhone(phone : Int) : String } `; const resolvers = { Query: { fetchBoards: (_, args) => { return [ { number: 1, writer: "철수", title: "제목입니다", contents: "내용입니다", }, { number: 2, writer: "영희", title: "좋은 날씨입니다", contents: "내용입니다", }, ]; }, }, Mutation: { createTokenOfPhone: (_, args) => { // 2. 아래 로직을 만들어 주세요. // (힌트: phone.js 내에 존재하는 함수들을 사용해서 로직을 완성해 주시면 됩니다. // 로직 구성이 어려우신 분들은 rest_api 폴더 내에 존재하는 index.js 파일을 참고해 주세요.) // 2-1. 휴대폰번호 자릿수 맞는지 확인하기 const phone = args.phone; if (phone.length > 10 || phone.length < 10) { return "핸드폰 번호 재확인 해주세요"; } // 2-2. 휴대폰 번호 자릿수가 맞다면 핸드폰 토큰 4자리 만들기 const result = String(Math.floor(Math.random() * 1000)).padStart(4, "0"); // 2-3. 만든 토큰을 핸드폰번호에 토큰 전송하기 return `token : ${result}`; }, }, }; const server = new ApolloServer({ typeDefs, resolvers, }); await startStandaloneServer(server); // server.listen(3000).then(({ url }) => { // console.log(`🚀 Server ready at ${url}`); // });
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
Member 에 orders 를 넣는 구조
Member 객체에서 orders 를 넣는 구조는 좋지 않은 설계라고 하셨는데 여기에 궁금한 점이 있어서 질문합니다! (10분쯤) 이커머스 사이트를 볼때, 로그인을 하게 되면 마이페이지가 있고 마이페이지에는 그 회원의 주문내역이나 그동안 주문했던 것들을 볼 수 있는게 꼭 있는거 같습니다. 이럴때 Member 에 orders 라는 필드가 있어야 좀 더 효과적으로 가지고 올 수 있다고 생각하는데 영한님께서는 좋지 않은 설계라고 하셔서 제 생각이 틀린건지 궁금합니다!
-
해결됨선형대수학개론
[Dimension] The Basis Theorem
안녕하세요, 수업을 듣고 있는 학생입니다. 제가 이해하고 있는 것이 맞는지 확인하기 위해 질문을 올립니다. 2.7의 슬라이드 10을 보면, R^n space의 subspace인 H가 p차원이라고 되어 있습니다. 그럼 만약 m by k인 matrix A가 있을 때, m은 A를 구성하는 각 벡터들의 차원입니다.그리고 k는 경우에 따라 다르다고 생각합니다. (H span과 관련하여)1) k < p : 절대 H를 span할 수 없습니다. 2-1) k=p 이며 k개의 벡터가 linearly independent: H를 span하며, 각 벡터는 기저입니다. 이 경우에는 k를 span하고자 하는 공간의 차원으로 볼 수 있으며 dim(A) = rank A = p입니다.2-2) k=p 이며 k개의 벡터 중 linearly dependent한 벡터 단 한 쌍이라도 존재: H를 span하지 못합니다. 3) k>p인 경우 k개 중 linearly independent한 벡터 즉, pivot들이 p개라면 H를 span할 수 있습니다. + 슬라이드 10의 p<=n이어야 합니다.라고 알고 있습니다. 혹시 위에서 잘못 이해하고 있는 부분이 있어 알려주시면 정말 감사하겠습니다. 질문 읽어주셔서 감사합니다.
-
미해결스프링 핵심 원리 - 기본편
의존관계 자동 주입 - 필드주입
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]의존관계 자동주입 부분 강의에서 필드 주입이라는거는 스프링 컨테이너에서 빈을 찾아서 주입해주는걸 말하는 건가요?? 필드 주입은 정확히 어떤 때 쓰는건가요??
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
nodejs import 시 확장자 생략시 오류
//index.js import express from "express" const app = express() import { checkPhone } from "./phone.js" app.get("/", function (req, res) { res.send("Hello World") }) app.get("/phone", (req, res) => { const p = checkPhone() res.send(p) }) app.listen(3000) //phone.js export function checkPhone() { return true } 확장자를 생략해도 되는걸로 알고있었는데,확장자를 생략하면 왜 에러가 날까요?ERR_MODULE_NOT_FOUND에러가 나는 이유가 궁금합니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
th:for 사용 이유
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]다음 내용에서 th:each로 반복문을 사용하고 있는데 th:for 반복문을 다시 사용하는 이유는 뭔가요? <!-- multi checkbox --> <div> <div>등록 지역</div> <div th:each="region : ${regions}" class="form-check form-check-inline"> <input type="checkbox" th:field="*{regions}" th:value="${region.key}" class="form-check-input"> <label th:for="${#ids.prev('regions')}" th:text="${region.value}" class="form-check-label">서울</label> </div> </div>
-
미해결스프링 핵심 원리 - 기본편
의존관계 자동 주입 강의 관련 질문
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]의존관계 자동 주입 부분 강의듣고 있는데요 생성자 주입이랑 수정자 주입부분 설명하실때 코드에 this.memberRepository = memberRepository;이런 코드가 존재하는데 이는 필드값을 변경하는거 아닌가요?? 싱클톤 컨테이너 강의에서 싱글톤 방식의 주의점에서 특정 클라이언트가 값을 변경할수 있는 필드가 있으면 안된다고 하셨는데 그러면 위의 코드처럼 쓰면 안되는거 아닌가요??
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
상속(전반전) 질문입니다.
처음 public class Camera에 대한 생성자를 만들 때 public Camera() { this.name = "카메라";}그리고 public class SpeedCam에 대한 생성자를 만들 때public SpeedCam() {this.name = "과속단속 카메라";}이렇게 둘 다 this가 자동으로 들어가는데 이유가 무엇인지 궁금합니다.
-
미해결[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
좋아요 기능 구현중 에러 질문입니다.
첫번째 부터 순서대로post모델,user모델 passport.index의 deserializeUser부분 route.page 부분 입니다.User is associated to User multiple times. To identify the correct association, you must use the 'as' keyword to specify the alias of the association you want to include. 위 같은 오류가 뜨는데 어떤게 문제인지 아무리 찾아봐도 모르겠습니다..
-
미해결틴더 파이어베이스 클론 | 리액트 네이티브
디스코드 올바르지 않은 초대장
디스코드 올바르지 않은 초대장이라고 뜹니다
-
미해결스프링 핵심 원리 - 기본편
수정자 주입
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]수정자 주입 부분 강의에서setter함수에 print문을 넣었을때 @Autowired 를 붙이면 프린트문이 출력이 되는데 @Autowired를 안 붙이면 프린트문이 출력이 안된다고 하셨는데 왜 그런건가요??AutoAppConfigTest를 실행시켰을때 setter 함수를 호출하지 않았는데 OrderServiceImpl에서 @Autowired를 붙여 수정자 주입을 붙였을때 setter의 프린트문이 출력되는 원리는 무엇인가요??
-
미해결따라하면서 배우는 고박사의 유니티 기초
게임 월드로 배치되는 바닥, 장애물이 “Navigation Static”으로 설정이 안됩니다..
23.1.4버전 사용중입니다.Navigation Static이 설정이 안되고Window에서 Navigation view를 찾을수가 없습니다ㅜㅜ
-
해결됨[Bloc 응용] 실전 앱 만들기 (책 리뷰 앱) : SNS 로그인, Firebase 적용, Bloc 상태 관리, GoRouter
로딩중
안녕하세요 개남님 https://github.com/Bamschool/book_review 지금 '스플레시 완료' 방금 깃커밋을 했습니다. 그런데 이부분에서 왜 작동을 안 하는지 잘 모르겠습니다.. 분명 로그인체크로 바뀌어야하는데 데이터로드에서 바뀌지 않습니다. 강의를 다시 봤는데 도저히 문제는 모르겠습니다. 이유가뭘까요? 감사합니다! auth_check('로그인 체크'); const SplashPage({Key? key}) : super(key: key); @override Widget build(BuildContext context) { return BlocListener<AppDataLoadCubit, AppDataLoadState>( listenWhen: (previous, current) => current.status == CommonStateStatus.loaded, listener: (context, state) { context.read<SplashCubit>().changeLoadStatus(LoadStatus.auth_check); }, child: Scaffold( body: Stack( fit: StackFit.expand,
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
Git의 하나의 Repository 안에서 branch별 배포가 가능한가요?
안녕하세요. 저는 IT 교육 프로그램에서 5명의 팀원과 프로젝트를 진행하고 있습니다. GitLab에서 하나의 Repository 안에서 작업을 하고 있습니다. 테스트 서버와 실환경 서버를 분리해서 진행해보려고 합니다. 그러기 위해 master 브랜치에 Push 될 때는 테스트 서버에 배포를 하고, master 에서 테스트 이후에 안정적인 코드를 production 이라는 브랜치에 Push 하려고 합니다.이때 하나의 Repository에서 브랜치별로도 다른 서버로 배포를 진행할 수 있나요?