영상에 갑자기 자막이 같이 나와요
미해결
비전공자를 위한 진짜 입문 올인원 개발 부트캠프
소리랑 안 맞기도 하고 화면 밑부분을 보여주실 때 자막에 가려서 안 보입니다ㅜ
- 머신러닝 배워볼래요?
- tensorflow
- react-native
- react
- nodejs
- express
- javascript
- HTML/CSS
173만명의 커뮤니티!! 함께 토론해봐요.
미해결
비전공자를 위한 진짜 입문 올인원 개발 부트캠프
소리랑 안 맞기도 하고 화면 밑부분을 보여주실 때 자막에 가려서 안 보입니다ㅜ
해결됨
자바 ORM 표준 JPA 프로그래밍 - 기본편
JpaMain 실행 시 마지막에 exit code 1과 함께 이 메시지들이 계속해서 출력되서 도움 요청드립니다. 오류 메시지가 너무 많이 떠서 어떤 것이 문제인지 잘 모르겠네요..
미해결
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
안녕하세요! 강의 잘 듣고 있습니다~ 주문 취소와 주문 가격 조회 비즈니스 메서드를 엔티티 내부에서 선언하신 이유가 궁금합니다! 오더와 달리 멤버의 경우 엔티티에 비즈니스 로직을 작성하지 않은 건 리포지토리에서 사용한 save, find 외에 별다른 로직이 없기 때문인가요? 서비스가 아닌 엔티티에 비즈니스 로직을 위임하는 기준이 궁금합니다!
해결됨
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테스트 케이스 실행했을 때 이렇게 뜨는데 제대로 되는건가요? 강의 영상에서는 아무것도 안뜨던데 저는 이렇게 결과가 뜹니다..!
미해결
[리뉴얼] React로 NodeBird SNS 만들기
안녕하세요. 쿠키 관련 질문이 있습니다. front에서 axios로 보낼 때 withcredentials: true 를 해주고 backend에서도 cors에서 credentials : true를 해주었기 때문에 로컬에서 프론트와 백엔드를 같이 돌릴 경우에는 쿠키 공유 문제가 없습니다. 그런데 백엔드를 aws EC2에 두고 프론트 엔드를 로컬에서 돌릴 경우 쿠키가 공유되지 않습니다. 원인은 samesite 정책 때문이고 해결하려면 backend에서 쿠키를 보낼 때 samesite=none과 secure:true를 같이 적용해줘야 한다는 걸 알았습니다. 이를 해결하려면 결국 https 적용을 위해 nginx로 프록시를 만들어 줘야 하는데 다른 방법이 있을까요? 간단한 방법은 로컬에서 계속 테스트 하다가 배포관련 수업에서 하는 것 처럼 도메인을 같이 등록하면 되긴 하지만 이런 경우에도 해결하는 방법이 있는지 궁금합니다.
미해결
실전! 스프링 데이터 JPA
밑에 질문을 보면 findByusername으로 member을 찾아올 때 1차캐시에서 가져오는 것이 아닌 DB를 통해 가져온다고 하셨는데 그러면 em.clear를 해주지 않아도 member5는 db에서 조회해서 가져오기 때문에 age가 41로 되야하는 것 아닌가요??? 이 부분이 잘이해가 안됩니다 ㅠㅠ
해결됨
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
패키지와 심볼 클래스를 찾을 수 없다고 나오는데 제가 라이브러리 다운로드를 잘못한건가 싶은데 정확하게 원인을 찾을 수 없어 질문 드립니다. 사진 첨부합니다!
해결됨
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
안녕하세요. 영한님 좋은 강의 제공해주셔서 감사합니다. 다름이 아니라, Bear(베어)에서 강의 자료를 보고 싶은데 pdf 파일은 볼 수 없는 거 같습니다. 혹시 베어에서 볼 수 있게 .md파일로도 강의자료 부탁드려도 되겠습니까? 감사합니다.
미해결
스프링과 JPA 기반 웹 애플리케이션 개발
프로젝트 실행하기 강의중에 maven compile시에 아래와 같은 에러가 발생합니다. 해결 방법이 있을까요? Failed to execute goal com.github.eirslett:frontend-maven-plugin:1.8.0:npm (npm install) on project studyolle: Failed to run task
미해결
자바 ORM 표준 JPA 프로그래밍 - 기본편
14분 쯤에 SELECT m, t FROM MEMBER m LEFT JOIN TEAM t on m.username=t.name 은 SELECT m, t FROM MEMBER m LEFT JOIN TEAM t where m.username=t.name 과 다른 건가요?? 다르다면 어떤 차이가 있는지 궁금합니다!
미해결
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
항상 명강의 감사합니다. 강의를 들을때마다, 강사님에 노고가 느껴지니, 매번 소름이 돋네요. ㅎㅎ 오늘도 강의 잘 듣고 있습니다. 2가지 질문을 드립니다. 1. 테이블 아이디 설계 저는 회원 테이블을 설계할때, 기본키를 '아이디' 로 설정했었습니다. 아이디가 유니크 하기 때문에 기본키로 잡았었는데, 강의에서는 엔티티에서 기본키를 따로 잡으시고(기본키는 자동으로 값을 셋팅) 진행을 하시던데 실무에서도 회원 테이블을 설계하신다면 '회원 아이디' 와는 별개로 기본키 필드를 설계하고 @GereratedValue 로 자동으로 값을 할당하도록 진행하시나요.? 2. hidden 태그(다소 부족한 질문일수도 있습니다.) 강의 내 코드를 보면, 회원에 대한 아이디를 hidden 태그에 노출하는데, 이게 보안상에 문제가 될 여지는 없을 까요.? 물론 서버단에서 회원에 권한을 체크한다면 문제가 되지 않는다고는 생각하지만, 노출된다는게 꺼림칙해서요.....(단순히 제생각입니다.) 아니면 hidden 태그를 사용하지 않고, 구현하는 방법이 따로 있을까요.?
해결됨
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
안녕하세요 항상 좋은 강의에 항상 감사하고 있습니다! 다름이 아니라 JPA를 통해서 디비를 생성하지 않고 이미 따로 MySQL로 만든 디비를 객체에 매핑만 하여 사용하려고 하는데요! 1. 보통 이렇게 하는게 일반적인가요? 2. 이미 pk로 순서대로 1, 2, 3 ... 을 맥인 상황에서 엔티티와 매핑하고 그 다음 jpa 를 통해 insert를 하게 되면 가장 마지막 id값을 읽고 그다음 자동으로 이어서 +1 을 하게 되주나요? 질문이 너무 두서가 없네요 ㅠㅠ 예를 들어 이미 기존 member라는 테이블에 (pk로 id 컬럼) 1 memberA 20 서울 2 memberB 19 울산 이런 상황에 엔티티로 매핑하고 증가시키면 자동으로 id는 3부터 이어서 시작이 되는걸까요?
미해결
자바 ORM 표준 JPA 프로그래밍 - 기본편
운영중인 db 가 중요하기 때문에, 로컬에서 테스트 db 를 h2 로 설정해서 엔터티 정의후 테이블 생성하고, 생성한 테스트 db 에 대해 dao 를 작성하고, 엔터티 코드 및 dao 코드의 올바른 작성 확인 후 운영 반영을 하고 싶습니다. 실제 h2 를 테스트 db 로 해서 상기방식으로 개발하시나요? 개발서버 환경이어도 임의로 테이블은 만드는건 안되기 때문에 로컬 개발환경에서 개발하는 방식에 대해 궁금해서 여쭤봅니다.
해결됨
실전 리액트 프로그래밍
키보드 조작하는 부분까지 강의를 따라 만들어둔 상태입니다. (스코어 부분 시작 직전까지, 약 37분 45초까지) * 키보드 동작을 넣기전에는 4x4 셀을 그린 후 두 곳에 랜덤하게 숫자2를 표현하였습니다. * 키보드 동작까지 완료 후 4x4 셀을 그린 후 아무런 타일이 생성되지 않고 있습니다. 키보드 동작시에 에러도 없습니다. 강의 진행 중 아무런 에러도 발생하지 않고 코드를 역추적해가며 살펴봐도 어디 부분에서 잘못을 했는지 찾아지지가 않습니다 ㅠㅠ 도움이 필요합니다! * 깃에 올려둔 코드 주소입니다( https://github.com/Doha-Dev/game2048.git )
해결됨
실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
안녕하세요 강사님! 강의 잘 듣고 있습니다. MemberDTO에 Address를 넣어주려고하는데, MemberDTO에 값 타입인 Address를 넣어주는 것보다 city, street, zipcode를 각각 따로 넣어주는게 나을까요? ( 코드로 작성해놓았습니다.) #1 코드 #2 코드 그리고 값 타입인 Address를 DTO에 명시하게 되면, 이것도 결국 엔티티를 직접 외부에 노출하는 것일까요?
미해결
생활코딩 - React
혹시나 누가 헷갈려할까봐 올려봅니다..
미해결
스프링 시큐리티
혹시 최종 완성본 말고 이 강의까지 완성된 건 없는건가요??? 어떤 클래스가 새로 생긴거고 어떤 클래스를 고쳐야 할지 완성본을 갖고 판단 할 수 가없습니다. 따라 치면서 공부 하고싶은데 도저히 다음 강의를 진행 할 수 가 없습니다..
미해결
실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
아래처럼 회원 조회 로직이 있을때 멤버 엔티티 정보를 스트림화 한뒤 멤버 디티오 형식으로 다시 설정하고 그걸 리스트화하는것까지는 의미상으로 이해가 가는데여 응답 클래스 Result < T > 객체를 만들어서 응답하는 이유가 무엇인가여? @GetMapping ( "/api/v2/members" ) public Result memberV2 () { List < Member > findMembers = memberService .findMembers(); List < MemberDto > collect = findMembers .stream() .map(m-> new MemberDto(m.getName())) .collect( Collectors . toList ()); return new Result( collect ); } @Data @AllArgsConstructor static class Result < T > { private T data ; } @Data @AllArgsConstructor static class MemberDto { private String name ; }
해결됨
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
@Transactional 애노테이션을 붙인 메서드는 오버라이딩 할 수 있어야 하기때문에 ValidateDuplicateMember 메서드를 private 접근지정자를 설정하면 명시적으로 @Transactional 애노테이션을 해당 메서드에 붙일 수가 없는데, 강사님께서 하신것처럼 클래스 레벨로 @Transactional(readOnly = true) 애노테이션을 붙이면 ValidateDuplicateMember 메서드는 트랜젝션이 적용이 안되는지 궁금합니다. 만약 적용이 안된다면 접근 지정자를 protected 로 변경해서 사용해도 되는지 궁금합니다. ----------------------- 전체 소스코드 입니다. ------------------------------- @Service @Transactional public class MemberService { @Autowired private MemberRepository memberRepository ; /** * 회원가입 * @param member member entity * @return memberId */ public Long join(Member member) { ValidateDuplicateMember(member); memberRepository .save(member); /* * member를 영속화 할때 key를 member의 id로 설정 (generateValue) * member 객체의 id 필드에는 값이 채워져있는 것을 보장할 수 있음 */ return member.getId(); } @Transactional (readOnly = true ) protected void ValidateDuplicateMember(Member member) { List<Member> findMembers = memberRepository .findByName(member.getName()); if (!findMembers.isEmpty()) { throw new IllegalStateException( "이미 존재하는 회원입니다." ); } } /** * 회원 전체 조회 * @return memberList */ @Transactional (readOnly = true ) // 성능 최적화 public List<Member> findMembers() { return memberRepository .findAll(); } /** * 회원 단건 조회 * @param memberId memberId * @return findMember */ @Transactional (readOnly = true ) public Member findOne(Long memberId) { return memberRepository .findOne(memberId); } }
미해결
실전! Querydsl
안녕하세요 강사님, 강의 잘 보고 있습니다. 해당 강의 다른영상에서의 질문에서 BooleanBuilder와 자바 8을 이용해서 체이닝이 가능한 코드를 봣었습니다. 영상강의처럼 BooleanExpression을 사용한 ageBetween은 null이 반환될 수 있어서 테스트시 age를 안 넣으면 NPE가 뜨더라구요. 그래서 아래처럼 BooleanBuilder 사용한 코드로 바꾸면 null에 무조건 안전하게 되는게 맞는건가요? public List<MemberTeamDto> search (MemberSearchCondition condition) { return queryFactory .select( new QMemberTeamDto( member . id .as( "memberId" ) , member . username , member . age , team . id .as( "teamId" ) , team . name .as( "teamName" ))) .from( member ) .leftJoin( member . team , team ) .where( usernameEq(condition.getUsername()) , teamNameEq(condition.getTeamName()) , ageBetween(condition.getAgeLoe() , condition.getAgeGoe())) .fetch() ; } private BooleanBuilder usernameEq (String username) { return nullSafeBuilder(() -> member . username .eq( username )) ; } private BooleanBuilder teamNameEq (String teamName) { return nullSafeBuilder(() -> team . name .eq( teamName )) ; } private BooleanBuilder ageGoe (Integer ageGoe) { return nullSafeBuilder(() -> member . age .goe( ageGoe )) ; } private BooleanBuilder ageLoe (Integer ageLoe) { return nullSafeBuilder(() -> member . age .loe( ageLoe )) ; } private BooleanBuilder nullSafeBuilder (Supplier<BooleanExpression> f) { try { return new BooleanBuilder(f.get()) ; } catch (Exception e) { return new BooleanBuilder() ; } } private BooleanBuilder ageBetween (Integer ageLoe , Integer ageGoe) { return ageLoe(ageLoe).and(ageGoe(ageGoe)) ; } 익셉션마다 BooleanBuilder 객체를 새로 만드는데, 객체를 생성할 때 드는 비용은 null을 위해서는 크게 상관이 없는거죠? 그리고, ageBetween 부분에서 강의는 파라미터를 int 타입으로 받는데, 테스트시 NPE가 나와서 Integer로 바꾸니 되더라구요. 이유가 원래 Integer타입을 int로 자동 언박싱하는 중에 null을 int에 넣지 못해서 NPE가 뜨는건가요?