묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
wsl에서 h2실행하면 발생하는 오류
h2가 저장되어있는 위치에서 h2.bat을 실행하면 다음과 같이 @java: not found @if: not found 가 뜨고브라우저 실행이 자동으로 안됩니다!!구글링 해봤는데 위와같은 문제는 없어서 어떻게 해야될지 모르겠습니다 😇
-
해결됨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의 경우 기본키가 없는데 혹시 알려주실 수 있으실까요?