묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
Test를 만들땐 항상 처음부터 시작하는 식으로 코드를 짜나요?
항상 Member객체를 만들고 시작하시는 것 같은데, 실제로는 멤버객체가 이미 있고 그걸 find하든 save하든 할거아니예요?? Test할땐 항상 처음부터 시작한다고 생각하고 로직을 짜나요??그리고 Test코드를 작성하는 이유는 무엇인가요? 기능 테스트를 할 때 항상 postman으로 했는데 그렇게 하는 것과 차이점이 있을까요 ???그리고 테스트코드에서는 main 디렉토리에 있는 클래스를 자유롭게 접근할 수 있는건가요? 예시에서도 MemoryMemberRepository를 쓰시길래 궁금해서 여쭤봅니다
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
두 테이블에 동일한 PK를 복합키로 사용했을때 JPA 연관관계 매핑
table : prodPlanpk : factoryCode, prodplanIdcolumn : itemCode ...table : Itempk : factoryCode, materialCodecolumn : itemName... 테이블 구조는 이렇고 저는 MSSQL을 연동해서 기본적인 테이블 생성은 MSSQL에서 생성하여 사용하고 있습니다. prodPlan(N) : item(1) 로 ManyToOne 매핑을 하려고 하는데요 @Entity @IdClass(ProdPlanId.class) public class ProdPlan { @Id private String factoryCode; @Id private Long prodplanId; @Column(name = "ITEM_CODE") private String itemCode; //... @ManyToOne @JoinColumn(name = "FACTORY_CODE",referencedColumnName = "FACTORY_CODE",insertable = false, updatable = false) @JoinColumn(name = "ITEM_CODE",referencedColumnName = "MATERIAL_CODE",insertable = false, updatable = false) private Item item; } @Entity @IdClass(ItemId.class) public class Item { @Id private String factoryCode; @Id private String materialCode; //... }@JoinColumn에 name 속성이 외래키의 이름을 정의하는거라고 알고 있습니다. factoryCode는 외래키가 아니고 두 테이블에서 복합키이자 기본키입니다.(복합키는 class ProdPlanId implements Serializable을 사용하여 @IdClass 어노테이션을 사용하였습니다.)그래서 위에 코드와 같이 구현을 하면 FACTORY_CODE가 중복컬럼에러가 나서 일단 insertable, updatable = false로 임시해결을 했는데 해결을 한게 아닌 거 같아서 다른 방법이 있나 찾아보던 중 inheritancetype.table_per_class 이 구조가 조금 비슷해보여서 진행하려 했으나 @JoinColumn에서 어떻게 사용해야 하는지 모르겠습니다. (factoryCode는 외래키가 아닙니다! 찾아보니 일대일 매핑만 나왔습니다ㅠㅠ)읽기전용이 아닌 prodPlan 테이블의 ITEM_CODE와 Item 테이블의 MATERIAL_CODE를 조인하려 했는데요. 그럴려면 @Column itemCode를 지우고 사용해야 중복컬럼에러를 피할 수 있었습니다. @Column itemCode를 선언하고 조인하는 방법은 없을까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
통합테스트를 진행할때 bad SQL grammer 에러가 납니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용] org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [select * from member where name = ?]Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "MEMBER" not found (this database is empty); SQL statement: select * from member where name = ? [42104-214] org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [select * from member where name = ?]통합테스트를 진행시키면 위와 같은 에러가 나옵니다.강의를 들으면서 MemberServiceIntegrationTest.java를 작성했고, jdbc 템플릿을 이용해 db 구축도 했습니다. 오타가 있는지 계속 확인해보았지만 오타로 보이는것이 없어 질문 올립니다. 스프링이 완전 처음이라 강의를 100퍼센트 이해하면서 코드를 따라 짜지 못했기 때문에, 질문을 정확하고 자세하게 말씀 못드려서 죄송합니다...https://github.com/ffe4el/Spring_prj/tree/main/hello-spring오류가 나는 코드를 깃허브 위 주소에 올려놓았습니다. 살펴봐주세요...ㅠ
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
Array 관한 예문
안녕하세요, 선생님. 어제 배열 파트를 다시 복습하면서 생긴 문제가 있습니다.선생님께서는 for반복문에 for -each문을 이용하면서 출력되도록 하셨는데저는 조금 더 간결하게 하고자 for-each문 없이 주석처리한대로 해보니사이즈[I@75b84c92(재고있음) 이렇게, 사이즈에 해당하는 값은 안나오더라구요.혹시 이렇게 접근하면 안되는 이유가 있을까요? 두 번째로는 메소드에 관한 문제입니다.아래 코드처럼 메소드 값을 메인영역 밖에서 호출 시 에러나는 이유가 무엇인가요?잘은 모르지만 혹시나 지역변수 이런 것과 상관이 있는건가요? //Quiz. 배열을 활용하여 쇼핑몰에서 구매 가능한 신발 사이즈 옵션을 출력하는 프로그램을 작성하시오 //조건 : 신발 사이즈는 250부터 295까지 5단위로 증가 //조건 : 신발 사이즈 수는 총 10가지 //실행결과 : 사이즈 250 (재고있음) / 사이즈 260 (재고있음),,, size에 해당하는 값을 배열로 만들기 // int size = 250; // int size = 255; // int size = 260; int[] size = new int[10]; for (int i = 0; i < size.length; i++) { size[i] = 250 + (5 * i); // System.out.println("사이즈"+size+"(재고있음)"); //왜 안되는지????????? } for (int size2 : size ) { System.out.println("사이즈"+size2+"(재고있음)"); } ------------------------------------------------------------------------------- public class Test1 { //호텔 전화번호 public static String getPhoneNumber(){ return "02-123-4567"; } //호텔 위치 public static String getAddress(){ return "서울시 어딘가"; } //호텔 엑티비티 public static String getActivities(){ return "수영장, 당구장, 볼링장"; } public static void main(String[] args) { //왜 메인영역 밖에서 호출하면 에러나지????? //메인 밑에서 매소드 호출 System.out.println("호텔위치 : "+getAddress()); System.out.println("호텔 전화번호 :"+getPhoneNumber()); System.out.println("호텔 엑티비티 : "+getActivities()); }
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
인텔리제이 Run이 실패합니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]Run이 실패하는데 제가 환경변수를 잘못 설정한건지 설ㅍ치를 잘못 한건지 뭐가 문제인건지 모르겠네요ㅠㅠㅠ
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
프로젝트 생성부터 문제에 부딪혔습니다.
안녕하세요, Hello JPA - 프로젝트 생성 에서 Windows의 IntelliJ IDEA 2023.1(Community Edition) 설치해서 File->New->Project 들어갔는데 강의 화면과 다른 관계로 오류가 있는거 같습니다.저는 maven 이 없어서 maven archetype 을 선택하고, Catalog에 internal, default local, maven central 바꿔가면서 add archetype 에서 영한 강사님이 예시로 보여준 문구들을 넣어서 프로젝트를 만들었는데요, 아래와 같은 오류 메세지가 뜹니다.The desired archetype does not exist (jpa-basic:ex1-hello-jpa:1.0.0) 최신 IntelliJ로 프로젝트 생성을 위해서는 어떻게 설정해야 할까요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
JpaRepository save 에 비해서 saveAndFlush 사용하면 문제점이 있을까요?
강사님 안녕하세요~ 스프링 JpaRepository 의 save , saveAndFlush 가 있는데 리포지토리.save(엔티티)리포지토리.saveAndFlush(엔티티) 저는 개발자 입장에서 디버깅 할 때 제가 작성한 코드가 바로 db에 넘어가는 파라미터값과, db에 바로 적용 되는걸 보고 싶어서저는 saveAndFlush 를 선호해서 사용하고 있습니다. save 메서드에 비해서 ( save 는 캐시?에 저장하고 있다가 나중에 한꺼번에 반영이 되니 눈으로 바로 볼수 없어요 ㅠㅠ )saveAndFlush 를 쓰면 비지니스 로직을 적용하거나 서비스 로직 적용 시문제 가능성 부분이 혹시 있을까요?알려 주신 다면 유념해서 생각해 보려구 합니다 (참고로 저희 회사 시스템에는 @Transactional 애노테이션만 걸어주고 강사님 강의에서 처럼 em.persist => 이부분은 사용하지 않습니다 ) #김영한#JpaRepository#saveAndFlush#save#문제점#jpa#스프링#스프링프레임웍
-
미해결@시코 - Java 제대로 배우기 (완전 기초)
15강 중 에러가 났는데 해결이 안되어 질문 남깁니다.
강의 중 Stream 학습 과정에서강의 자료 내용인int[] arr = new int[] { 2, 3, 1, 5, 3, 2 }; System.out.println("avg=" + Arrays.stream(arr).average().getAsDouble());을 입력하였는데, stream에 빨간 줄 쳐지면서 아래와 같은 메시지가 뜹니다.The method stream(int[]) from the type Arrays refers to the missing type IntStream 검색을 해보았지만 해결할 수 없어서 질문 남깁니다.
-
미해결실전 JSP (renew ver.) - 신입 프로그래머를 위한 강좌
내가 만든 쿠키~
너를 위해 넣었지~
-
해결됨스프링 시큐리티 OAuth2
모바일앱의 인증을 위해 자체 인가서버와 소셜로그인을 함께 사용하는 경우
우선 좋은 강의 감사하다는 말씀드립니다. 올려주신 강의 2편 모두 잘 보고 있고 실무에서 많은 도움을 받고 있습니다.강사님께 배운 내용을 토대로 인증시스템을 구성해보려던 중 질문 사항이 있어 질문드립니다. 강의에서는 웹애플리케이션 기반 인증에 비중을 두고 설명을 잘 해주셨는데, 모바일 애플리케이션에 대상으로 인증을 구성을 해보려하니 조금 헷갈리는 부분이 있네요.요구사항은 아래와 같은데요,추후 내부 리소스를 외부서비스에 제공하기 위한 자체 OAuth2.0인가 서버 구성모바일 애플리케이션에서 JWT기반 인증을 할 수 있는 인증 및 회원 가입 API자체 OAuth2 인가서버와 연계하여 구성되는 리소스서버 구성소셜로그인 기능인증 시스템을 구성하기 위해 아래와 같은 방법을 생각하고 있습니다.자체 인증 시스템을 통한 로그인의 경우 자체 모바일앱에 별도의 web view를 생성하고 싶지 않으므로 API로 로그인 정보를 바로 받아서 내부적으로 Resource Owner Password Flow 처리하여 토큰 반환유저가 모바일앱 UI에 OAuth2 인가서버 계정정보(ID/PASSWORD)를 직접 입력로그인 버튼 클릭 시, 서버가 계정 정보를 API로 직접 전달받아 내부적으로 Resource Owner Password Flow를 통해 검증하고 토큰 및 인증 필요 정보를 클라이언트에 반환소셜로그인의 경우, 안전한 인증을 제공하기 위해 모바일 UI에 별도의 webView를 띄우고 Authorization Code Grant방식으로 인증진행webView를 통해 외부서비스에 대한 Authorization Code Grant 흐름이 진행.최종적으로 서버가 리다이렉트 주소를 통해 code를 전달받아 소셜 인증이 완료되는 경우(최초 회원인 경우 가입 처리하고), 서버는 자체 리소스서버에서 검증할 수 있는 Access Token을 따로 발급하여 응답하고 이를 모바일앱이 수신하여 인증처리. 질문은 아래와 같습니다.OAuth2.0 인가서버를 운용하는 경우 자사 모바일 앱의 자체로그인을 Resource Owner Password Flow로 직접 처리하는 것이 일반적인 방법인지? 더 좋은 방법은 없는지?외부 소셜 로그인의 경우 패스워드 없이 가입처리를 해야하는데 자체인가서버의 회원과 어떻게 일괄적으로 관리가 가능할지?외부 소셜 로그인의 경우라도 최종 발급되는 토큰은 자체 리소스서버에서 검증가능하도록 자체로그인과 일괄된 방법으로 JWT 발급이 되어야 할 것 같은데, Spring Authorization Server를 통해 효율적으로 구성이 가능할지?소셜로그인의 경우 서버가 리다이렉트 주소를 통해 code를 받아오더라도 OAuth2AuthorizedClient까지만 확인하고 세션에 인증정보를 저장하고 싶지 않은데 어떻게 효율적으로 custom 가능할지?oauth2Client API 및 OAuth2AuthorizedClientManager를 통해 토큰을 받아오는 것을 생각하고 있는데 더 합리적인 방법은 없을지?긴 질문 읽어주셔서 감사합니다. 질문가지수가 많아서 죄송하네요. 답변 주실 수 있는 부분까지만 주셔도 괜찮습니다.혹시 제가 구상하는 방법에서 개선되어야 하는 부분이나 혹시나 제가 잘못 생각하고 있는 부분은 없을 지 이런 부분도 조언해주시면 너무 감사하겠습니다.
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
For반복문 예제
안녕하세요, 선생님블로그에 선생님 강의 내용에서 예제를 따라치면서 정리하는 과정에 궁금증이 생겨서 여쭤봅니다. 증감연산자의 위치가 여러 예제문에서 헷갈리는데요. (sold++;)int max = 30; int noShow = 15; int sold = 0; for (int i = 1; i <=50 ; i++) { System.out.println(i+"번 손님 나왔습니다"); if(i==noShow){ System.out.println(i+"번 노쇼로 넘어갑니다"); continue; } sold++; if(sold==max){ System.out.println("금일 영업종료"); break; } 위의 코드에서 sold++위치를 아래와 같이 바꿀 경우에 for문 중괄호 안에는 들어가 있어서 가능할 거 같은데 결과는 32번 손님까지 이어지네요. 비슷한 예제로 while문에서는 증감연산자의 위치가 break뒤에 위치한 경우 결과값이 올바르게 나오는데 확실하게 증감연산자의 위치를 구별 할 수 있는 방법이 있을까요?int max = 30; int noShow = 15; int sold = 0; for (int i = 1; i <=50 ; i++) { System.out.println(i+"번 손님 나왔습니다"); if(i==noShow){ System.out.println(i+"번 노쇼로 넘어갑니다"); continue; } sold++; if(sold==max){ System.out.println("금일 영업종료"); break; } sold++; } ------------------------------------ //while문 -break int index = 1; //손님 대기번호 , for와 달리 변수가 필요함(중요) while(index <= 50){ System.out.println(index+"번 손님 주문하신 치킨 나왔습니다"); if(index == 20){ System.out.println("금일 재료가 모두 소진되었습니다"); break; } index++; }
-
미해결실전! Querydsl
정렬을 했을때 몇번째 raw인지 조회
안녕하세요 만약에 시험 점수를 관리하는 테이블이 있다면 그 시험점수를 기반으로 순위를 매길려고 할때정렬된 테이블 중에서 제가 가져온 raw가 테이블에서 몇번째로 값이 높은 raw인지 알 수 있는 키워드는 없나요? 설령 없다면 해당 비즈니스 로직은 어떻게 처리를 해줘야 될까요?
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
7:31초쯤 영속성이 끊긴 멤버 반환
안녕하세요. 많이 찾아봤는데 없는것같기도 하고, 7:31초쯤을 시작으로 영속상태가 끊긴 멤버가 반환이 된다라는 말씀을 듣고 질문드립니다. Service에서 반환이 되는 Controller에서 Entity Manager를 사용하기 위해서 @PersistenceContext 어노테이션을 사용해서 em을 주입받았습니다.# MemberApiController# MemberService# 로그이렇게 됬을때 PK가 1인 Member를 Controller에서 찾아보았는데, 만약에 영속성이 끊긴 Member가 반환이 된다면 로그에 "???"이라는 문구 사이에 Select문을 통해서 PK가 1인 멤버를 가져와야하지 않나요? 영속성컨텍스트에서 관리를 하지 않은 Member를 반환했고, 그 Member를 다시 찾으려고 시도하기때문입니다.# EntityManager.contains 사용영속성 컨텍스트에서 관리되는 Object인지 확실히 확인하기 위해서 EntityManager의 contains 메서드를 통해서 확인해보았을때 로그가 아래와 같이 나왔습니다.결론적으로 memberService.update를 통해서 반환된 Member객체는 영속성이 끊기지 않은 객체이지 않나요??감사합니다 :D
-
해결됨자바 기초부터 마스터하기 with 은종쌤 (Do it 자바 프로그래밍 입문) - Part 1(기초편)
객체간 협력이 c++에서 프렌드함수같은건가요?
제목이 내용입니다
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
JPA Composite key(복합키) @IdClass , @EmbeddedId 어떤 걸 쓸 지 장단점 및 선정 기준이 궁금합니다
강사님 안녕하세요~ 저희 플랫폼회사에서는 @EmbeddedId 만 쓰고 있고강사님의 책을 읽어 봤을 때는 @IdClass -> db 스럽다@EmbeddedId -> 객체 스럽다, id.컬럼 으로 좀 더 코드가 더 들어간다라고 표현하십니다. 강사님이 실전 실무에서 JPA Composite key(복합키) @IdClass , @EmbeddedId둘중에 어떤걸 선호호고 많이 쓰는지 장단점 뭔지,배달에민족 시스템에서는 어떤 이유로, 둘 중 어떤 걸 사용 하는지 알 수 있을까요? --█●●--------------------------------------------#김영한#@IdClass#@EmbeddedId#join#조인#멀티#컬럼#여러개#multiple#column#JPA--█●●--------------------------------------------
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
다차월 배열의 순회
복습 중에 헷갈리는 게 있어서 질문 드립니다 :)질문-1) 코드를 반복해서 작성하는 이유가 뭔가요?(아래 비교 예시 있습니다.)String[][] seats = new String[10][15]; String[] eng = {"A","B","C", "D", "E","F","G","H","I","J"}; for (int i = 0; i < seats.length; i++) { for (int j = 0; j < seats[i].length; j++) { seats[i][j] = eng[i] + (j + 1); } } for (int i = 0; i < seats.length; i++) { for (int j = 0; j < seats[i].length; j++) { System.out.print(seats[i][j] + " "); } System.out.println(); }String[][] seats = new String[10][15]; String[] eng = {"A","B","C", "D", "E","F","G","H","I","J"}; for (int i = 0; i < seats.length; i++) { for (int j = 0; j < seats[i].length; j++) { seats[i][j] = eng[i] + (j + 1); System.out.print(seats[i][j] + " "); } System.out.println(); } 이렇게 줄여도 똑같이 출력되는 데 반복하는 이유가 궁금합니다. 배열 값 업데이트를 위해서 그렇게 한 건가요? 질문-2) 누군가 표를 구매해서 좌석 업데이트 할 때, 코드 진행 방식이 헷갈립니다. 1번에서 2차원 배열의 형태가 만들어 진 후,seats[7][8] = "___"; seats[7][9] = "___"; 여기서 업데이트 된 후에 아래에서 출력할 때 새로운 배열 값인 "___" 이게 추가된 상태로 출력되는 건가요?// 1번 String[][] seats = new String[10][15]; String[] eng = {"A","B","C", "D", "E","F","G","H","I","J"}; for (int i = 0; i < seats.length; i++) { for (int j = 0; j < seats[i].length; j++) { seats[i][j] = eng[i] + (j + 1); } } // 2번 // 누군가 H9, H10 자리에 표를 구매 seats[7][8] = "___"; seats[7][9] = "___"; for (int i = 0; i < seats.length; i++) { for (int j = 0; j < seats[i].length; j++) { System.out.print(seats[i][j] + " "); } System.out.println();
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
맥 빌드 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]현재 맥(m1)에서 프로젝트를 빌드하는 도중에 해당 에러가 발생했습니다.이전 질문에서도 똑같은 에러가 있길래 답변을 확인해봤으나 프로젝트의 sourceCompatibility = '17' 과 java -version의 openjdk version "17.0.6" 2023-01-17를 확인하니 자바 버전은 동일한 것 같습니다. 그런데 왜 해당 오류가 발생하는지 의문입니다.프로젝트를 초기 세팅할 때도 스프링부트 3 버전과 자바 17버전으로 잘 세팅했습니다.에러가 나는 이유를 알 수 있을까요?
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
강의 8:33 내용 질문드립니다.
회원 1이 DB에서 팀을 가져온 후, 팀 A가 영속성 컨텍스트에 존재하는 것은 알겠습니다!근데 "회원 2가 JPA에게 팀 A를 달라고 한다" 는 부분이 이해가 잘 되지 않습니다!프록시 팀 객체가 어떠한 근거로 팀 A를 달라고 하게 되나요? 첫 SELECT문과, 회원 1이 팀을 가져오는 쿼리 로그를 보니,뭔가 팀 ID를 들고 있는 것 같은데, 첫 SELECT문에서 가져온 결과의 팀은 비어있긴 한데 ID는 들고 있는 상태로 존재하는 것이 맞을까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
test 시 오류 발생합니다ㅠ_ㅠ
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예[질문 내용]안녕하세요. test 진행 시 해당 사진 처럼 오류가 발생합니다.Run tests using 도 인텔리제이로 변경해 놓은 상태인데 너무 답답해 죽겠습니다...ㅠㅠ
-
미해결실전! 스프링 데이터 JPA
엔티티에 setter 메소드를 구현하지 않았을 때, PK 값의 저장 과정에 대해 질문드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요. 평소에 생각하지 못했던 부분인데, 강의를 들으면서 좀 궁금한 점이 생겨서 질문드립니다.. 만약 엔티티에 setter 메소드를 구현하지 않았다면,@GeneratedValue를 사용해서 데이터가 DB에 저장될 때 PK값이 생성되도록 했다면, 그 생성된 PK값이 영속성 컨텍스트에서 관리되는 엔티티 객체에 어떻게 저장되는 것인지 궁금합니다.