묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨Slack 클론 코딩[실시간 채팅 with React]
주소 설계 원리 질문
해당 부분 (df) 클릭 시, url에도 df가 뜹니다. 그리곤 DM리스트를 만들 때는, //왼쪽 디엠리스트 const DMList: FC = () => { const { workspace } = useParams<{ workspace?: string }>(); //워크스페이스에 참여해있는 멤버들을 다 불러온다. const { data: userData, error, mutate, } = useSWR<IUser>('http://localhost:3095/api/users', fetcher, { dedupingInterval: 2000, // 2초 }); const { data: memberData } = useSWR<IUserWithOnline[]>( userData ? `http://localhost:3095/api/workspaces/${workspace}/members` : null, fetcher, );useParams 를 이용해 url에 있는 workspace 명을 가져오고 이를 통해 memberData를 요청합니다.제가 궁금한 부분은, 첫 번째 사진의 'df'를 클릭했을 때 주소창에 http://localhost:3090/workspace/sleact/channel/df 이런식으로 뜨게 할 수 있는 부분의 코드가 어디에 작성되어 있는지 입니다. workspace >index.tsx <Routes> <Route path="/channel/:channel" element={<Channel />} /> <Route path="/dm/:id" element={<DirectMessage />} /> </Routes>이 부분인 것 같은데,, 그럼 :channel에 해당 채널의 이름이 들어가겠죠? 근데 그럼, 해당 채널의 이름이 :channel에 들어가게 되는 로직은 또 어디있는 건가요..? 변수, 라우터, api에 대한 부분이 계속 꼬이다 보니 정리가 안됩니다 ㅜㅜ 설명해주시면 감사하겠습니다.
-
해결됨스스로 구축하는 AWS 클라우드 인프라 - 기본편
private subnet에 위치한 EC2 인스턴스는 private cloud 인가요?
안녕하세요, 수강 중 궁금한 점이 생겨 질문 남깁니다. private subnet에 위치한 EC2 인스턴스를 private cloud, public subnet에 위치한 EC2 인스턴스를 public cloud로 이해해도 되나요?위의 내용이 맞다면, 본 강좌에선 private subnet와 public subnet을 모두 사용하기에 hybrid cloud를 구축한다고 볼 수 있나요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
유니티 모델이 흰색으로 나옵니다..
안녕하세요 선생님!에셋 스토어에서 "supercyan 캐릭터 pack" 을 다운 받아서 파일을 열어보니캐릭터 모델들이 다 하얗게 나옵니다그리고 구매한 항목 프리팹이 HighQuality Folder 와 mobile Folder 으로 나눠져 있는데모바일은 그래도 색깔이 나오는데 High Quality 흰색으로만 보입니다데모 씬 과 highquality prefab이 제대로 나오게 하고 싶은데어떻게 하면 해결할 수 있을까요..?ㅜ (위에서 부터 High quality 프리팹 , mobile 프리팹 입니다)
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
파이썬 f5눌렀을시 에러
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.에러가 이렇게 나면서 출력이 안되네요 ㅠ
-
해결됨따라하며 배우는 리액트 A-Z[19버전 반영]
드래그 엔 드롭 관련 질문입니다
안녕하세요 선생님 강의 너무 잘보고있습니다드래그앤 드롭부분이 처음 쓰는거다 보니 상당히 생소한데요 드래그 앤 드롭 사용방법 같은건 리액트 문법처럼 암기를 해야 하는 것인가요아니면 나중에 다시 쓸때 구글링 하며 쓰는 것인가요?궁금합니다
-
해결됨[개정판] 파이썬 머신러닝 완벽 가이드
2020년 판 203p count() 질문
위 코드에서 첫번째 문장에 count()를 적용한 feature_dup_df 를 실행하면 다음과 같은 결과가 나옵니다.그런데 컬럼 인데스가 1로 바뀌는 이유는 무엇인가요? count 함수가 특정 컬럼 개수를 세서, 인덱스로 반환하는 역할이라서 그런 것 일까요? 이상입니다.
-
해결됨실전! Querydsl
요청 매핑이 궁금합니다.
우선, 좋은 강의 올려주셔서 정말 감사합니다. 동적 필터를 구현하고 작동도 잘되는데 한 가지 궁금한 것이 생겨 질문을 하게 되었습니다. 강사님 강의 속에서 dto 앞에 어노테이션을 붙이지 않고 포스트맨에서 RequestParam처럼 사용하시는데스프링에서는 저 값을 어떻게 받고 데이터를 처리하는 건가요? 보통 @RequestParam은 들어온 요청 값을 MessageConverter 사용해서 스프링이 처리를 하는 걸로 공부를 했는데 querydsl에서는 어노테이션 하나 안쓰고 dto를 사용하고 데이터를 전송하는데 어떻게 처리하는 지 궁금합니다. 혼자 디버그도 찍어보고 @RequestParam이건 생략이 가능하니 이것을 사용한 건가 해서 넣어보니 포스트맨에서 에러 발생합니다. 너무 궁금합니다....바쁘신데 질문까지 받아주셔서 정말 감사합니다. :)
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
EntityManager의 beans를 찾을 수 없다고 나오는 이유?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 테스트 코드 작성할 때 테스트는 성공하지만, em에 빨간줄이 나오는데 그 이유가 궁금합니다.Could not autowire. No beans of 'EntityManager' type found.import jpabook.jpashop.domain.Address; import jpabook.jpashop.domain.Member; import jpabook.jpashop.domain.Order; import jpabook.jpashop.domain.OrderStatus; import jpabook.jpashop.domain.item.Book; import jpabook.jpashop.repository.OrderRepository; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.transaction.annotation.Transactional; import javax.persistence.EntityManager; import static org.junit.Assert.assertEquals; @RunWith(SpringRunner.class) @SpringBootTest @Transactional public class OrderServiceTest { @Autowired EntityManager em; @Autowired OrderService orderService; @Autowired OrderRepository orderRepository; @Test public void 상품주문() throws Exception{ //given Member member = new Member(); member.setName("회원1"); member.setAddress(new Address("서울", "강가", "123-123")); em.persist(member); Book book = new Book(); book.setName("시골 JPA"); book.setPrice(10000); book.setStockQuantity(10); em.persist(book); int orderCount=2; //when Long orderId = orderService.order(member.getId(), book.getId(), orderCount); //then Order getOrder = orderRepository.findOne(orderId); assertEquals("상품 주문시 상태는 ORDER", OrderStatus.ORDER, getOrder.getStatus()); }
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
OneToMany에서 LazyLoading 관련 질문이 있습니다.
Member : Team = N : 1 관계에서 Team 엔티티에서 @OneToMany(fetch = FetchType.LAZY)로 Member를 참조하고 있는 상황입니다. Team team = TeamRepository.findById(1L);team.getMembers().get(0)를 한 후 쿼리를 보니 다음과 같이 나가는 것을 볼 수 있었습니다 (member엔 id, name, team_id column만 존재합니다)제 생각으론 id, name, team_id만 조회해오면 될 것 같은데 추가적인 team_id, id 조회가 중복으로 나가고있는데 이유가 무엇일까요? ㅠㅠ 도저히 해결이 안돼서 질문올려요..
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
아니그램 질문입니다!
a = input() b = input() c = dict() for x in a: c[x] = c.get(x, 0) + 1 for x in b: c[x] = c.get(x, 0) -1 for val in c.values(): if val != 0: print("NO") break else: print("YES")선생님 안녕하세요!위 코드처럼 각 밸류의 값 중에 0이 아닌 값이 있다면바로 No 출력하는것도 괜찮을까요?돌려봤을 때 문제 없었습니다! 항상 감사합니다!
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
hashtag set 구현 질문
const arr_hash = req.body.content.match(/#[^\s#]/g); const hash_set = new Set(arr_hash) const hashtags = new Array() hash_set.forEach((element) => { hashtags.push(element); }) if (hashtags) { const result = await Promise.all( hashtags.map(tag => { return Hashtag.findOrCreate({ where: { title: tag.slice(1).toLowerCase() }, }) }), ); await post.addHashtags(result.map(r => r[0])); }hashtag를 set으로 만들기 위해서 이렇게 코드를 만들었는데 이렇게 만드니까데이터 베이스에 이런식으로 글자가 하나만 찍혀서 저장이 됩니다 어떻게 해야하나요?
-
미해결애플 웹사이트 인터랙션 클론!
코드 이름 검색해서 찾아가는 거 혹시 이름 알 수 있을까욤??
코드 이름 검색해서 찾아가는 거 혹시 이름 알 수 있을까욤??
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
docker로 mariadb배포 시 문제 발생
현재 증상입니다.환경은 windows10입니다. mariadb를 켰을 때사진이 잘 안 보일 수 있어서 에러 메세지를 아래 써놨습니다.PS C:\Users\ccro1> docker run -d -p 3306:3306 --network ecommerce-network --name mariadb ccro1307/test:mariadb 33de5e6b75944d49e8e4220d428d0674d90103f4719387db1f566e7c927429e8 docker: Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:3306 -> 0.0.0.0:0: listen tcp 0.0.0.0:3306: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted. mariadb를 껐을 때껐을 때는 mysql이 없다고 그러고켰을 때는 port가 중첩되서 안된다는 것 같은데..해결책이 어떻게 될 까요 mariadb는.\bin\mariadb-install-db.exe --datadir=C:\Work\mariadb-10.5.17-winx64\data --service=mariaDB --port=3306 --password=test1357로 설치하였습니다.
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
교육과정 설계 질문입니다.
need = input() n = int(input()) for i in range(n): plan = input() imt = deque(need) for x in plan: if imt[0]==x: imt.popleft() if len(imt)==0: break if len(imt)==0: print("#%d YES" %(i+1)) else: print("#%d NO" %(i+1))안녕하세요 선생님!구현해봤는데 케이스2에서 오류가 나서요 ㅠ어떤 부분이 문제가 있을까요?? 좋은 강의 감사합니다!
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
FrontControllerServletV3에서 render방법
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]1. FrontControllerServletV3에서 createParamMap에서 모든 파라미터 값들을 가지고 온다고 설명해주셨는데, 어떤 값들을 가지고오는건지 알 수 있을까요?2. 그리고 render의 경우 modelView, request, response를 넘기는데, modelTpRequestAttribute에서 request에 모든 값을 담아놓는다고 했는데 물리경로도 들어가있는건가요? 그렇다면 어디서 model에 넣어준 것인지 알 수 있을까요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
new-form.jsp 요청 시 한글 깨짐
안녕하세요, '섹션3-JSP로 회원 관리 웹 애플리케이션 만들기' 실습 중 발생한 오류에 관해서 질문드립니다.new-form.jsp를 요청했을 때 new-form.jsp 파일이 다운로드 되는 문제를 겪어서 질문란에 있는 답변대로 서버 실행 시 나오는 톰캣 버전과 의존성 버전을 수동으로 맞춰주었는데요(스프링 부트 버전(2.7.4)은 건들지 않았습니다), 파일이 다운로드 되는 문제는 해결되었지만 이렇게 한글이 깨져서 나옵니다.. new-form.jsp에서 'charset=UTF-8'를 추가했는데도 아래 사진과 같이 나오는 이유가 무엇인지 잘 모르겠습니다.(html 파일에서는 한글이 깨지지 않고 제대로 나왔었습니다)
-
미해결스프링 핵심 원리 - 고급편
PostProcessor로 생성된 bean 의 type 은 Proxy 객체가 아닌가요?
[질문 내용]BeanPostProcessorTest.java 를 조금 수정하였는데요.AToBPostProcessor 에 if (bean instanceof A) 이면 ProxyFactory를 사용하여 proxy 객체를 리턴하도록 하였습니다. 그 후 테스트코드에서 applicationContext.getBean("beanA") 를 찍어보았더니, class.com.sun.proxy$Proxyxx 가 아닌 helloA 실제 객체가 찍혀있는걸 확인하였습니다. A a = applicationContext.getBean("beanA");a.helloA(); 하면 프록시가 잘 적용되서 부가기능이 찍히는걸 확인하였는데요. a 를 찍었을 때 Porxy 객체가 리턴될줄 알았는데 실 객체가 리턴되어서요. 왜 그런 것 일까요?
-
미해결실전! Querydsl
jpa 레포지토리 사용 중 오류
안녕하세요!querydsl과 jparepository 강의를 듣고 참고하여 개인 코딩 공부를 하고 있는 학생입니다.다름이 아니라 좋아요 기능 구현 중 customrepository를 사용하였는데 하단과 같은 오류가 발생해서 문의 드립니다.확인해보니 패키지를 분리하라고 하신 분도 있어서 패키지 분리를 했는데도 동일한 오류가 발생합니다ㅠ.ㅠ이유가 뭘까요..오류Error creating bean with name 'businessLikeService' defined in file [/Users/gimnayeon/Desktop/GreenProject/GrinGreen/out/production/classes/com/grin/GrinGreen/BusinessLike/service/BusinessLikeService.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'businessLikeRepository' defined in com.grin.GrinGreen.BusinessLike.repository.BusinessLikeRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is org.springframework.data.repository.query.QueryCreationException: Could not create query for public abstract java.util.Optional com.grin.GrinGreen.BusinessLike.repository.BusinessLikeRepositoryCustom.exist(java.lang.String,java.lang.Long)! Reason: Failed to create query for method public abstract java.util.Optional com.grin.GrinGreen.BusinessLike.repository.BusinessLikeRepositoryCustom.exist(java.lang.String,java.lang.Long)! No property 'exist' found for type 'BusinessLike'!; nested exception is java.lang.IllegalArgumentException: Failed to create query for method public abstract java.util.Optional com.grin.GrinGreen.BusinessLike.repository.BusinessLikeRepositoryCustom.exist(java.lang.String,java.lang.Long)! No property 'exist' found for type 'BusinessLike'!BusinessLike Entity@Entity @Getter @NoArgsConstructor public class BusinessLike { @Id @GeneratedValue @Column(name = "like_id") private Long id; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "mail") private Member member; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "business_id") private Business business; @QueryProjection public BusinessLike(Member member, Business business) { this.member = member; this.business = business; } }BusinessLike DTO@Data public class BusinessLikeDto { private Member member; private Long businessId; @QueryProjection public BusinessLikeDto(Member member, Long businessId) { this.member = member; this.businessId = businessId; } }BusinessLike Response DTO@Data public class BusinessLikeResponseDto { private Long BusinessLikeNum; private Boolean check; @QueryProjection public BusinessLikeResponseDto(Long BusinessLikeNum, Boolean check) { this.BusinessLikeNum = BusinessLikeNum; this.check = check; } }BusinessLikeCustomRepositorypublic class BusinessLikeCustomRepositoryImpl implements BusinessLikeRepositoryCustom{ private final JPAQueryFactory queryFactory; public BusinessLikeCustomRepositoryImpl(EntityManager em) { this.queryFactory = new JPAQueryFactory(em); } @Override public Optional<BusinessLike> exist(String mail, Long businessId) { BusinessLike lList = queryFactory .selectFrom(businessLike) .where(businessLike.member.mail.eq(mail), businessLike.business.id.eq(businessId)) .fetchFirst(); return Optional.ofNullable(lList); } public long BusinessLikeNumfind(Long businessId) { return queryFactory .selectFrom(businessLike) .where(businessLike.business.id.eq(businessId)) .fetchCount(); } }BusinessLikeRepository@Transactional(readOnly = true) public interface BusinessLikeRepository extends JpaRepository<BusinessLike, Long>, BusinessLikeRepositoryCustom { }BusinessLikeRepositoryImplpublic interface BusinessLikeRepositoryCustom { Optional<BusinessLike> exist(String mail, Long businessId); long BusinessLikeNumfind(Long businessId); }BusinessLikeService@Slf4j @Service @Transactional @RequiredArgsConstructor public class BusinessLikeService { private final BusinessLikeRepository businessLikeRepository; private final BusinessRepository businessRepository; //좋아요 및 취소 public Boolean pushBusinessLike(BusinessLikeDto businessLikeDto) { businessLikeRepository.exist(businessLikeDto.getMember().getMail(), businessLikeDto.getBusinessId()) .ifPresentOrElse(businessLike -> businessLikeRepository.deleteById(businessLikeDto.getBusinessId()), ()-> { Business business = getBusiness(businessLikeDto); businessLikeRepository.save(new BusinessLike(businessLikeDto.getMember(), business)); }); return true; } @Transactional(readOnly = true) private Business getBusiness(BusinessLikeDto businessLikeDto) { return businessRepository.findById(businessLikeDto.getBusinessId()) .orElseThrow(() -> new IllegalArgumentException("해당 게시글은 존재하지 않습니다.")); } // 좋아요 개수 @Transactional(readOnly = true) public BusinessLikeResponseDto getBusinessLikeInfo(BusinessLikeDto businessLikeDto) { long businessLikeNum = getBusinessLikeNum(businessLikeDto); boolean check = checkPushedLike(businessLikeDto); return new BusinessLikeResponseDto(businessLikeNum, check); } @Transactional(readOnly = true) public boolean checkPushedLike(BusinessLikeDto businessLikeDto) { return businessLikeRepository.exist(businessLikeDto.getMember().getMail(), businessLikeDto.getBusinessId()) .isPresent(); } @Transactional(readOnly = true) public long getBusinessLikeNum(BusinessLikeDto businessLikeDto) { return businessLikeRepository.BusinessLikeNumfind(businessLikeDto.getBusinessId()); } }BusinessLikeServiceTest @SpringBootTest @Transactional public class BusinessLikeServiceTest { @Autowired BusinessLikeService businessLikeService; @Autowired MemberService memberService; @Autowired BusinessService businessService; @Test public void 좋아요() throws Exception{ //given Member member = new Member(); member.setNickname("testMember"); member.setMail("testMember@test.com"); member.setPassword("test1234!"); member.setMember_type("B"); member.setMember_status("J"); member.setHint_password("hint_01"); member.setAnswer_password("answer"); member.setUpdated_at(now()); member.setCreated_at(now()); memberService.join(member); Member findMember = memberService.findOne(member.getMail()); Business business = new Business(); business.setBusinessName("테스트밥집"); business.setHomepage("test.com"); business.setPhone("010-1234-5678"); business.setAddress("제주특별자치도 제주시 첨단로 242"); business.setLng((float) 33.450701); business.setLat((float) 126.570667); business.setCreated_at(now()); business.setUpdated_at(now()); businessService.join(business); Business findBusiness = businessService.findOne(business.getId()); //when BusinessLikeDto businessLikeDto = new BusinessLikeDto(findMember,findBusiness.getId()); businessLikeService.pushBusinessLike(businessLikeDto); System.out.println("businessLikeDto = " + businessLikeDto.getBusinessId());; //then assertEquals(1,businessLikeService.getBusinessLikeInfo(businessLikeDto).getBusinessLikeNum()); } }
-
미해결스프링 배치
테이블 명세에 대해 의문사항이 있습니다.
안녕하세요 강사님좋은 강의에 먼저 감사의 말씀 드립니다.https://github.com/spring-projects/spring-batch/blob/main/spring-batch-core/src/main/resources/org/springframework/batch/core/schema-mysql.sql테이블을 생성하는 구문은 위 링크와 같은데,BATCH_JOB_INSTANCE와 BATCH_JOB_EXECUTION의 경우 일대다 비식별 관계인 것이 이해가 갑니다.하지만 BATCH_JOB_EXECUTION와 BATCH_JOB_EXECUTION_CONTEXT는식별관계임에도 불구하고 일대다로 구성되어 있네요.. (복합키도 아님)여기서 질문 있습니다.이렇게 테이블을 구성하면 실제로 BATCH_JOB_EXECUTION_CONTEXT에는 중복된 값이 들어갈 수 없어 일대다 관계가 성립하지 않는 것 아닌가요?BATCH_JOB_EXECUTION_PARAMS의 경우 기본키가 없는데 혹시 알려주실 수 있으실까요?
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
파일 저장? 관련 질문이 있습니다.
안녕하세요 기효님!저는 백엔드 개발자인데 혼자 만들어보고 싶은 사이드 프로젝트가 있어서 기효님 강의를 듣고 대부분의 프론트 기능을 구현했습니다!! 강의 너무 알차고 유익했습니다.한가지 질문이 있습니다.어느 시점부터 새로 만든 파일들이 npm run serve를 통해서 작동을 하지 않습니다. 예를 들어 오늘 SnackBar 컴포넌트가 필요해 작성했고, 연동된 git 에도 푸쉬해서 올렸습니다. 하지만 npm run serve 를 통해 서버를 띄워서 작동을 시키면 snackBar컴포넌트를 포함한 최근에 추가한 파일들이 정상작동이 안 됩니다. 정상적인 작동이 되는 컴포넌트와 파일들은 터미널에서 cmd+s 를 눌러서 저장을 하면 터미널이 새로고침 되듯이 변경사항을 저장해 반영됩니다. 아래 첫 사진에서 cmd+s 를 누르면 터미널이 새로고침 되듯이 다시 run 하며 두번째 사진 화면으로 가집니다.하지만 정상적인 작동이 되지 않는 컴포넌트들은 cmd+s 를 눌러도 전혀 반응이 없습니다. 즉, 첫번째 사진화면에서 터미널은 아무런 반응이 없습니다.혹시 어떤 이유일지 기효님은 아실까요 ?? 이게 설정문제인지 뭔지 감도 잘 안옵니다 ㅠㅠ