안녕하세요 박재성님! 강의 잘 봤습니다!! 강의를 완강하고 제가 만든 웹 애플리케이션 배포하고 싶어 도전하고 있는데 문제가 생겨 질문을 드립니다!! EC2에서 docker로 spring boot와 mysql를 띄우려고 하는데 이미지 빌드까지는 아무런 문제가 없으나 컨테이너를 띄우는 순간 터미널이 동작하지 않습니다. 또, 인스턴스와의 연결을 끊고 재연결하려고 해도 연결조차 안되는 상황이 많습니다. 결국 인스턴스를 재부팅하는데 똑같은 과정에서 항상 멈춥니다. 제가 생각하기에는 EC2 프리티어 사양이 낮아서 발생하는 문제 같은데 강의 초반부에 프리티어도 나름 괜찮은 사양이라고 말씀하셔서 제가 옳바르게 생각하고 있는지 잘 모르겠습니다! 스스로 해결하려고 했는데 도무지 모르겠어서 질문을 남깁니다! 혹시라도 짐작가는 부분이 있으시다면 알려주실 수 있을까요? 감사합니다!!!
인프라에 대해 처음 공부하는 터라 막막함이 있어 강의를 수강하기 시작했는데요. 강의를 듣기 전 미션을 수행하려고 보니 네트워크와 리눅스 지식은 조금 있지만 도커나 was에 대한 학습 내용을 보니 저에게는 어려움이 다가왔습니다. 먼저 미션을 수행하기 전에 아래 도커공부를 먼저 하고 인프라 미션을 수행해야할까요? https://www.brainbackdoor.com/infra-workshop/docker-container
이왕이면 강사님께서 올리신 강좌를 구매해 이어서 학습을 해보려 합니다. 로드맵이 있다면, 보고 구매를 하려고 했는데 올려져 있는 강의 수는 많은데 머신러닝 관련 로드맵이 없더라고요 파이썬 머신러닝 완벽 가이드, 딥러닝 컴퓨터 비전 완벽 가이드 딥러닝 CNN 완벽 가이드 캐글 advanced 머신러닝 실전 박치기 이 강의들을 기본부터 학습하려 하는데요 오래된 강좌가 개정되어 다른 이름으로 만들어져 있어서 내용이 겹치는게 있는지 아니면 모두 수강하는게 맞는지 어떤 순서로 학습하면 되는지 알고 싶습니다.
안녕하세요, 최근에 IAM에 관련해서 집중적으로 공부하고 있는데 이렇게 좋은 컨텐츠를 만들어 주셔서 정말 감사합니다. 강사님께서 만드신 강의 모두 다 구매해서 듣고 있습니다. 다름아니라, 몇 가지 궁금한 점이 떠올라서 이렇게 질문남깁니다. 회사의 실무자가 아니라 취업을 준비하는 입장이라서 클라우드로 서비스를 제공하는 케이스에 대한 경험이 없다 보니, 지식으로는 이해하지만 실무적으로 언제 어떻게 쓰인다하는 실무 CASE들이 많이 부족한 것 같습니다 ^^; 회사별로 굉장히 케이스 바이 케이스겠지만, 각 IAM들이 구체적으로 어떤 상황에 어떤 형태로 사용되는 지 알 수 있는 방법이 없을까요?? 혹시 없다면 사용 사례를 학습할 수 있는 컨텐츠를 별도로 제작 예정이신지도 궁금합니다.
안녕하세요? 선생님 노고가 많으십니다. 다름이아니라 aws기본설정하는데 선생님께서 올려주신 블로그에보면 AWS 루트 엑세스키 생성하기 (Create AWS Root Access Key)이 파트가있는데 거기서 6. 링크 참고하여 각 운영체제 설정에 맞는 곳에 아래 내용 입력 여기서 무슨말인지 이해가 안갑니다. 알려주실수있을까요?
강사님 안녕하세요, 조인실습2에서 부서명 SALES와 RESEARCH 소속 직원별로 과거부터 현재까지 모든 급여를 취합한 평균 급여 예시가 조금 헷갈립니다. With 문이 서브쿼리 역할을 하는걸로 이해하고 있는데 해당 예시에서 왜 with문이 왜 필요한지, with문 또는 서브쿼리 사용하지 않고 쿼리를 진행시키는 방법이 있는지 궁금합니다ㅠ
QueryDSL 내부 메소드 중 fetchResult() 나 fetchCount()는 만료된 메소드에 대해서는 QueryDSL에서 Blaze-persistence Integration 라이브러리 사용을 권장 하는데요, Blaze-persistence도 QueryDSL 처럼 쿼리 빌더 API 로서 개발자에게 유지보수하기 좋은 객체를 제공해주고 있습니다. 게다가 최신 업데이트 날짜가 글 작성일 기준(2023.06.21) 일주일 이전이라 여전히 유지보수되고 있어서 최신 스프링버전과 호환성도 어느정도 보장되었다고 볼 수 있습니다. 개인적으로 SpringBoot 3.1.0 기준으로 다음과 같이 세팅하니 정상적으로 동작하는 걸 확인했는데요, 혹시 저처럼 deprecated 메소드를 쓰는 것이 신경쓰이시는 분들을 위해 공유드립니다. build.gradle dependencies { //Blaze-Persistence implementation 'com.blazebit:blaze-persistence-integration-querydsl-expressions-jakarta:1.6.9' implementation 'com.blazebit:blaze-persistence-integration-hibernate-6.2:1.6.9' implementation 'com.blazebit:blaze-persistence-core-impl-jakarta:1.6.9' } BlazePersistenceConfiguration.java @Configuration public class BlazePersistenceConfiguration { @PersistenceUnit private EntityManagerFactory entityManagerFactory; @Bean @Scope(ConfigurableBeanFactory.SCOPE_SINGLETON) @Lazy(false) public CriteriaBuilderFactory createCriteriaBuilderFactory() { CriteriaBuilderConfiguration config = Criteria.getDefault(); // do some configuration return config.createCriteriaBuilderFactory(entityManagerFactory); } } QuerydslBasicTest.java ..... JPAQueryFactory queryFactory; @Autowired CriteriaBuilderFactory cbf; BlazeJPAQueryFactory blazeQueryFactory; @BeforeEach public void testEntity(){ queryFactory = new JPAQueryFactory(em); // 이건 동시성 문제를 고민하지 않아도 됨, 해결됨 blazeQueryFactory = new BlazeJPAQueryFactory(em, cbf); ..... 적용 결과 기존 QueryDSL 세팅한 것에 추가로 세팅하시면, 만료된 메소드에 대해 Blaze-persistence 객체로 대체되는데요, 기존 querydsl 클래스를 상속 받는 형태여서 QueryDSL이 제공하는 메소드를 그대로 쓸 수도 있습니다. fetchResults는 fetchPage로 바꿔서 사용할 것을 권장하고 있다는 점 참고하시면 될 것 같습니다. 추가로 내부로직이라든지 설명이 더 필요하시다면 Blaze-persistence 릴리즈 노트 와 Blaze Persistence Document 를 참고하시면 좋을 것 같습니다. 이 글에 대해 지적 및 피드백 해주시면 정말 감사하겠습니다. 감사합니다. 여담 및 고민 : 개인적으로 이 라이브러리의 내부로직을 뜯어보면서 분석하고 검증할 수 있는 역량은 부족한지라 분석 및 검증하는 방법에 대해서 팁이라든지, 아니면 blaze-persistence 사용할 시 주의해야할 점이라든지 조언해주실 수 있으시면 정말 감사드립니다. 강의를 듣던 중에 서브쿼리가 발생하는 부분에서는 정상동작하지 않는 것을 발견했습니다. @Test public void findUserDto(){ QMember memberSub = new QMember("memberSub"); List<UserDto> memberDtoList = queryFactory //이건 blazeQueryFactory가 정상 동작하지 않음 .select(Projections.fields(UserDto.class, //생성자 필드 순서에 맞게 변수를 만들어야 한다. member.username.as("name"), // member.age 대신 서브쿼리로 다 최대 나이로 찍고 싶어 ExpressionUtils.as( JPAExpressions .select(memberSub.age.max()) .from(memberSub), "age") )) .from(member) .fetch(); for (UserDto userDto : memberDtoList) { System.out.println("userDto = " + userDto); } } QueryDSL 쿼리 /* select member1.username as name, (select max(memberSub.age) from Member memberSub) as age from Member member1 */ select m1_0.username, (select max(m2_0.age) from member m2_0) from member m1_0 blaze-persistence 쿼리 /* SELECT member1.username AS name, member1.age AS generatedSubquery_1 FROM Member member1 */ select m1_0.username, m1_0.age from member m1_0 blaze-persistence generatedSubquery라 하여, 서브쿼리를 하나의 alias로 처리를 해버렸는데, 후행으로 이 generatedSubquery 에 대한 정의가 따라오질 않습니다... 왜 이런 차이가 나오는지는 모르겠지만 blaze-persistence 활용할 때는 유의해야할 것 같습니다.
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
안녕하세요. 4강에서 처음 프로젝트 열 때, Gradle 2.7.1로 다운그레이드 하였습니다. 원래는 Gradle 3 이상의 버전으로 설정되어 있어서 에러가 났었는데, 자바 17이상일 때, Gradle 3 이 사용가능한 모양이더군요. 해서 Gradle 2.7.1로 다운그레이드해서 급한 문제는 해결했는데.. 이대로 진행해도 문제가 되지 않을까요??
안녕하세요 강사님, 좋은 강의 제공해주시는 것 감사합니다. 제가 강의를 신청하고 급하게 외근을 다니게 되어, 이제 다녀와 들으려고 하는데 수강 기간이 조금 빠듯한 듯 하여.. 한 번 수강 기간을 연장해주실 수 있는지 요청드려 봅니다. 연장해주신다면 꼭 자격증을 취득하도록 노력하겠습니다. 감사합니다.