[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] ItemService 테스트 코드입니다. @RunWith(SpringRunner.class) @SpringBootTest @Transactional public class ItemServiceTest { @Autowired ItemRepository itemRepository; @Autowired ItemService itemService; @Test public void 상품저장() throws Exception { //given Item item = getItem("JPA book", 10000, 100); itemService.save(item); //when Item findItem = itemService.findById(item.getId()); //then // assertThat(item).isEqualTo(findItem); assertEquals(item, findItem); } @Test public void 상품조회() throws Exception { //given Item item1 = getItem("JPA book1", 10000, 100); Item item2 = getItem("JPA book2", 20000, 100); itemService.save(item1); itemService.save(item2); //when List<Item> findAll = itemService.findAll(); Item findItem1 = itemService.findById(item1.getId()); //then assertThat(findAll.size()).isEqualTo(2); //전체조회 assertThat(item1).isEqualTo(findItem1); //단건조회 } @Test public void 상품변경() throws Exception { //given //when //then } private static Item getItem(String name, int price, int stockQuantity) { Item item = new Book(); item.setName(name); item.setPrice(price); item.setStockQuantity(stockQuantity); return item; } } 상품 저장과 조회에 대한 테스트 코드를 작성해보았는데 혹시 수정해야 할 부분이 있는지 궁금합니다. 상품 저장 시 item.getId() == null 이 아닐 때 merge 하도록 되어있는 부분에 대해서도 테스트를 해야할 것 같은데, 어떻게 테스트할지에 대해 방향성을 알려주시면 감사하겠습니다.
강의를 보다가 궁금한 점이 생겨서 질문드립니다. 김영한 선생님 강의에서 다른 자바 강의들에서도 스캐너를 사용하시고 close() 메서드로 닫지 않으시는데요. 챗지피티도 그렇고 검색해보니 스캐너를 닫아주는게 좋다고 하는데, 왜 닫아야 하는 건가요? 그리고 닫는게 맞는거면 왜 강의에서 닫지 않으시는지 궁금합니다. 김영한 선생님 뿐 아니라 다른 많은 강의에서도 스캐너를 잘 닫지 않더라고요. 자바가 아닌 시스템 자체에서 input 자원을 가져오는 거기 때문에 닫아줘야 한다고 하던데, 이 점이 궁금합니다!
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] sql 쓰기 지연 저장소에 쿼리가 저장되는 타이밍이 헷갈립니다 em.find() 이후 member.setXXX 같은 경우는 트랜잭션 커밋 호출 -> 플러시 호출 -> 스냅샷, 1차 캐시 비교 -> 다르면 쓰지 지연 저장소에 쿼리 생성해서 저장 em.remove는 수정과 동일하게 동작 Member 객체 생성해서 em.persist(memberNew) 같은 경우에는 persist 하는 순간 1차 캐시, 스냅샷 저장 + 쓰기 지연 저장소에 쿼리도 생성해서 저장 해당 순서가 맞을까요?
회원 기능 테스트에서 계속 막혀서 전부 다 복붙하고 해봐도 오류가 납니다 이거 왜이런걸까요? 우선 프로젝트 전체 구글 드라이브에 공유해뒀습니다. https://drive.google.com/file/d/1jEOFgnIZ2fRBWTDKmYaA3lnrid-0i10E/view?usp=drive_link
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 다른분이 같은 내용으로 올린거봤는데요 저도 똑같이 안나오네요 jdk는 22버전입니다 해결책이있을까요
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 클래스 레벨에서 public 과 default 두 가지 밖에 사용 못하는데 그러면 생성자는 클래스 레벨이니까 마찬가지로 앞에 접근 제어자 두개 밖에 사용 못하나요??
해당 코드 커스텀 훅스로 만들어서 Edit이랑 Diary 컴포넌트에서 useDiary 임포트해서 const curDiaryItem = useDiary(params.id); 이 코드 넣자마자 해당 Diary 화면이 나오지않고 useEffect is not defined 만 나와요.. 코드 자세히 찾아봤는데 의미를 알수가 없어요.. ㅠ이해할 수가없어서 더이상 진도를 나갈수가 없습니다. 도와주세요 .. ㅠㅠ
자바 실전편 섹션3 기본형과 참조형 20 문제와 풀이 상품관련 프로그램 맨 마지막쪽에 사용자한테 물품 입력받을때 물품이름은 nextline로받고 가격이랑 수량은 nexint로 받아서 int로받으면 엔터할때 개행문자때문에 nextline를 하나 더 추가해준다고하셨는데 가격을 받을땐 nextint후 nexline이 없고 수량을 받을땐 nextint후 nexline가 있습니다 어떨땐 써주고 어떨땐 안쓰는걸까요?
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? ( 예 /아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? ( 예 /아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? ( 예 /아니오) [질문 내용] static public void printV2(Shuttle<? extends BioUnit> shuttle) { BioUnit unit = shuttle.out(); System.out.println("이름 : " + unit.getName() + ", HP:" + unit.getHp()); } 위 printV2 메서드의 파라미터의 타입을 굳이 상한조정해야하는이유가 있나요? static public void printV2(Shuttle<?> shuttle) {...} 위처럼 상한을 조정하지 않아도 Shuttle자체에서 상한을 조정하고 있기 때문에 무조건 BioUnit이 들어올수밖에없다고 생각돼서요! public class Shuttle<T extends BioUnit> {...}
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. eqauls 비교는 동등성이 기본이라고 들었는데 8분15초는 왜 다른참조지만 동등성비교로 true가 반환되는건가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) //get()추가하면 optional 깔 수 있음, 에러뜸 [질문 내용] test케이스에서 findByName 테스트할때 Optional에서 까기 위해 get메소드를 한번 더 써주신다고 하셨는데 get()대신 optional로 테스트하면 에러가 발생됩니다. 값에 optional[]이 붙어서 그런거같은데 이 경우는 get() 추가 사용 대신 optional로는 테스트 못하는건가요?
안녕하세요 섹션 2 > 레이아웃 클론 강의를 수강 중에 로고에 inline-block 을 사용하신 부분이 있어서요 block 으로 해도 비슷한 노출이 되는 듯해서, 어떤 의도가 있으셨을지 또는 다른 효과가 있는지 궁금합니다 :) .logo { display: inline-block; height: 56px; margin-top: 2px; }
커스텀 훅에서 사용된 제네릭에 대해서 공부하다가 궁금한게 생겨서요. 아래 테스트 코드 에서 '+' 연산자는 'T' 및 'T' 유형에 적용할 수 없습니다. 라는 에러 코드가 발생하는 이유가 이해가 안 가서요 위 함수는 사용한다면 아래 처럼 숫자 또는 문자인 타입으로 쓰일텐데, 그러면 return 값에서 + 연산자가 number + number 또는 문자열 + 문자열로 실행되어 문제가 없을 것 같은데 에러가 뜨는 이유가 모르겠어서요 add<number>(1, 2); add<string>('1', '2'); 지피티에 질문해보니 함수 오버로드를 쓰거나 return 값에 any를 쓰라곤 하는데 잘못된 방법 같고 extends로 타입 제한을 걸어도 같은 에러가 뜹니다 function add<T extends number | string>(x: T, y: T): T { return x + y; } 제가 참고한 제네릭 레퍼런스 자료입니다 https://inpa.tistory.com/entry/TS-%F0%9F%93%98-%ED%83%80%EC%9E%85%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-Generic-%ED%83%80%EC%9E%85-%EC%A0%95%EB%B3%B5%ED%95%98%EA%B8%B0#%EC%A0%9C%EB%84%A4%EB%A6%ADgenerics_%EC%86%8C%EA%B0%9C
안녕하세요 4:03에 super()명령어로 Class car{ string model; string year; 실행하고 난 뒤에 this.batteryCapacity = batteryCapacity는 75라는 거고 그 다음 줄에 ElectricCar~kwh 이 부분은 왜 출력하지 않고 넘어 가나요??
5:06 에서 int sum = 0; ~ switch(sum/30) { ~ 일 때 sum 이 int로 선언되었기 때문에 sum/30 이 8.xxx 가 되고, 버림돼서 8이 된다고 하셨는데, sum/30 이 몫의 나눗셈을 뜻하는 거니까 '8' 이고, int이니까 정수형 8이 역시 맞구나! 하고 넘어가는 논리로 생각하면 틀린 생각일까요?
import React from 'react'; import ReactDOM from 'react-dom/client'; import './index.css'; //import App from './App'; //import reportWebVitals from './reportWebVitals'; import Clock from './chapter_04/clock'; const root = ReactDOM.createRoot(document.getElementById('root')); setInterval(() => { root.render( <React.StrictMode> <Clock /> </React.StrictMode> ); }, 1000); import React from "react"; const Clock = () => { return( <div> <h1>안녕, 리엑스</h1> <h2>현재 시간: {new Date().toLocaleTimeString}</h2> </div> ) } export default Clock; Failed to compile. Module not found: Error: Can't resolve './chapter_03/Library' in 'C:\reactdeveloper\reactcoding\my-app\src' WARNING in [eslint] src\index.js Line 4:8: 'App' is defined but never used no-unused-vars Line 5:8: 'reportWebVitals' is defined but never used no-unused-vars Line 7:8: 'Library' is defined but never used no-unused-vars Failed to compile. Module not found: Error: Can't resolve './chapter_03/Library' in 'C:\reactdeveloper\reactcoding\my-app\src' WARNING in [eslint] src\index.js Line 4:8: 'App' is defined but never used no-unused-vars Line 5:8: 'reportWebVitals' is defined but never used no-unused-vars Line 7:8: 'Library' is defined but never used no-unused-vars Failed to compile. Module not found: Error: Cannot find file: 'clock.jsx' does not match the corresponding name on disk: '.\src\chapter_04\Clock.jsx'. ERROR in ./src/index.js 10:0-39 Module not found: Error: Cannot find file: 'clock.jsx' does not match the corresponding name on disk: '.\src\chapter_04\Clock.jsx'. webpack compiled with 1 error 이렇게 오류가 나고 있는데 해결 방법이 있을까요