[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 영한님, 안녕하세요. 강의를 들으며 부족하다고 느껴졌던 기본기를 덕분에 잘 습득하고 있습니다! 타입 매개변수 제한 강의를 듣고 나서 궁금한 점이 생겨 Q&A를 남기게 되었습니다. 제네릭을 도입하고 타입 매개변수를 제한함으로써, 1. 코드의 재사용성 증가 2. 타입 안정성 보장 위 두 가지의 강력한 장점을 가진다는 부분을 잘 이해했습니다. 다만, 클라이언트 코드에서 인스턴스를 생성하는 과정에 타입 매개변수를 아래와 같이 Animal로 지정하게 된다면 개발자의 실수가 발생할 수 있는 부분이 있다고 생각합니다. AnimalHospitalV3<Animal> animalHospital = new AnimalHospitalV3<>(); animalHospital.set(new Dog("dog", 100)); Dog biggerAnimal = (Dog) animalHospital.bigger(new Cat("cat", 100)); 위와 같은 코드는 다형성만을 사용하여 개션한 코드와 같이 Java 컴파일러가 잡아주지 못하고, 런타임 시점에 오류가 발생하게 됩니다. (Animal 클래스를 추상 클래스, interface로 선언해도 타입 인자로 지정하는 것을 막지 못합니다.) 이런 상황일 때, 개발자의 실수를 최대한 방지할 수 있는 방법이 어떤 것이 있을지 궁금합니다. 항상 좋은 강의 만들어주셔서 감사합니다. 덕분에 잘 배우며 기본기를 다져가고 있습니다!
명령어에서 startDateTime, endDateTime 의 jobParameters 부재 코드에서 @StepScope 어노테이션과 startDateTime, endDateTime 의 jobParameters 파라미터 부재 1번은 다른 사람이 심지어 이전에 쓴 문제더라고 ? 아마 형이 반영 안한건 모아서 한번에 수정할 계획인거 같아 보이네. 2번의 경우에는 @StepScope 도 빠져서 JobParameter 를 입력해도 오류가 발생했어. 또한 해당 메소드의 파라미터 부분을 1번과 마찬가지로 jobparameter로 받아야 할 것으로 보여져. 읽다가 하나씩 돌려보는데, 오류 터져서 놀라가지고 시간을 좀 썼어, 형. 1번은 내가 이해하는데, 2번은 형 실수가 좀 큰듯.
기본기 부족한 n년차 개발자 입니다. 입문, 기본, 중급1까지 완강했고, 현재 중급2 수강중입니다. (최종목표는 자바, 스프링, 데이터베이스 대부분의 강의를 로드맵 따라 익혀가는 것입니다.) 컬렉션 프레임워크(ArrayList) 부분부터 좀 버거운 느낌이 있는데, 강의를 어설프게 이해하며 따라가고 있는 것 같아 문의드립니다. (사실 잘 이해 못하고 있는 걸지도...) 우선 강의 듣는 자세는 다음과 같습니다. 하나하나 따라치며 강의를 듣기에는 오래 걸리고 하다가 지쳐서 중도포기 할 것 같아 강의를 쭉 돌려본다는 생각으로 학습하고 있습니다. (1배속) IDE에서 소스코드 열고 강의 들으면서 중간중간 눈으로 이해하며 넘어가고 있음 (부분적으로만 아조 조금씩 따라 치고 있음) 강의자료 설명 부분은 어느정도 이해가 가는데 코드 작성 부분에서는 조금 버겁게 느껴짐 즉, 과연 내가 이 코드들을 작성할 수 있을까, 다음 강의들을 잘 따라갈 수 있을까 걱정되는 부분이 있음 어떻게 해야 잘 습득해갈 수 있을까요? 강의는 더할 나위 없이 만족하고 있습니다
안녕하세요, 짐코딩님! 강의 잘 듣고 있습니다 😊 89강에서 제가 만든 스타터킷이 아닌, 강사님 소스코드를 git clone한 후 npm i 를 실행했는데, 아래와 같은 결과가 나왔습니다. 발생한 상황: npm warn deprecated node-domexception@1.0.0: Use your platform's native DOMException instead added 691 packages, and audited 692 packages in 8s 10 vulnerabilities (1 low, 4 moderate, 4 high, 1 critical) critical을 포함한 보안 취약점 10개가 발견되어서, 아래 명령어로 강제 수정을 시도했습니다. npm audit fix --force 결과: npm warn audit Updating next to 15.5.12, which is outside your stated dependency range. changed 3 packages, and audited 698 packages in 4s found 0 vulnerabilities Next.js가 15.5.12로 업데이트되면서 취약점은 모두 해결됐습니다. 질문 드리고 싶은 점: npm audit fix --force 로 Next.js 버전이 강의 소스코드와 달라졌는데, 이렇게 만들어둔 스타터킷 사용 시 구버전 이슈가 나타나면 이렇게 수정해서 사용하면 되는것이 맞나요? git clone한 강사님 소스코드에서 이런 취약점이 발생하는 게 정상인가요, 아니면 제 환경 문제일까요? 비개발자로서 강의를 따라가고 있어서 이런 부분이 헷갈립니다. 답변 주시면 감사하겠습니다!
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예/ 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 아니오 [질문 내용] 수정 또는 삭제시에 한번 find 메서드를 호출해서 select하여 데이터의 값을 영속성 컨텍스트에 올려놓은뒤에 수정 또는 삭제시에는 객체의 값만 바꾼후에 commit 을 통해 쿼리가 날라간다고 설명해주셨는데, 보통 수정또는 삭제시에 객체를 조회하지않고 바로 update 또는 delete 쿼리를 사용하는데 jpa를 사용하면 무조건 find 메서드를 통해 select후에 update 또는 delete작업을 해야되는건가요?
질문 가이드 읽고 삭제 후 오타제보 JobScope와 StepScope 사용 시 주의사항 ... 2. Step 빈에는 @StepScope와 @JobScope와를 사용하지 말라. -> @Step 빈에는 @StepScope 와 @JobScope 와 를 사용하지 말라 -> 말이 확실히 이상해
형 스프링부트 4에서는 jdbc starter 추가 안하면 안되던데 뭐지 ```build.gradle.kts description = "batch" dependencies { implementation("org.springframework.boot:spring-boot-starter-jdbc") implementation("org.springframework.boot:spring-boot-starter-batch") implementation("org.springframework.boot:spring-boot-h2console") runtimeOnly("com.h2database:h2") testImplementation("org.springframework.boot:spring-boot-starter-batch-test") } ``` implementation("org.springframework.boot:spring-boot-starter-jdbc") 위 처럼 의존성 명시적으로 처리해주기 전에는 아래 에러떳었어. Could not autowire. No beans of 'PlatformTransactionManager' type found.
말씀해주신 대로 브라우저의 쿠키 탭에서 데이터를 입력하니, 서버를 재실행했을 때 쿠키가 날라가서 올바르게 테스트를 할 수 없었습니다. Claude 로 확인해보니 headers.set('Set-Cookie', ...) 코드 작성 후 테스트 환경에서 직접 URI 를 입력하여 실행하여 쿠키를 심어보라고 해서 그렇게 했더니 쿠키가 잘 심어집니다! /* src/app/api/test-cookie/route.ts */ // localhost:3000/app/api/test-cookie 로 들어가 직접 쿠키를 입력해야 정상 작동 export async function GET() { const response = new Response('ok'); response.headers.set('Set-Cookie', 'name=kim; HttpOnly; Path=/; Max-Age=3600'); return response; }
안녕하세요 최적화 관련해서 질문이 있습니다 React 19버전 부터 "babel-plugin-react-compiler" 라는 컴파일러를 적용하면 useMemo, useCallback 등 자동으로 최적화가 되는 기능이 있다고 해서 사용해 보려고 하는데 해당 컴파일러에 대해 주의할 점이 있을까요? 아니면 그대로 사용해도 될까요?
안녕하세요 정환님 !!! 정환님 강의를 듣다가 state 관리쪽에 개념이 갑자기 섞여서 질문을 하게되었어요 저는 현재 다음과 같은 방향으로 이해를 하고있어요 한 페이지내에서 여러 컴포넌트를 사용할때 간단한 자식 구조에서는 props 를 사용한다. 한 페이지내에서 여러 컴포넌트를 사용할때 3~4 혹은 그이상으로 자식관계가 걸쳐있는 상태에서는 conntext API 를 사용한다. 로그인과 같이 특정 페이지가 아니라 여러 페이지에서 관리가 필요한 state 는 zustand처럼 전역 라이브러리를 사용한다. 제가 이해한 방향이 맞을까요??
안녕하세요 강의 잘 듣고 있습니다 정환님 강의 하셨을 때랑 지금 공식 문서 설치 방법이 달라진 것 같은데 지금 공식문서대로 진행해도 tsconfig.app.json파일과 tsconfig.json파일에 경로 별칭 옵션이 적용이 되는건가요? 아니면 강의 보고 그대로 세팅하면 될까요 https://ui.shadcn.com/docs/installation/vite