inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

TestString6 str.indexOf(Key, index + 1); 의 문장 질문

미해결

김영한의 실전 자바 - 중급 1편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] While (index > = 0) 내부 코드에 궁금한 점이 있어서 질문을 드립니다. 제공해주신 코드 일부입니다. while (index >= 0) { index = str.indexOf(key, index + 1); System.out.println("index = " + index); count++; } System.out.println("count = " + count); } 결과를 보면, index = 18 index = 32 index = -1 이 순서대로 출력이 됩니다. 궁금한점 입니다. 1번 질문입니다. 18, 32, -1이 출력 된 뒤 count가 1씩 증가했습니다. 제가 생각하기에는 6, 18, 32가 출력이 되고 count = 3이 출력되어야 하지 않나 생각들었습니다. 제 생각이 맞는지 확인받고 싶습니다. 2번 질문입니다. 제가 수정한 코드의 일부입니다. 이 코드가 타당한지 검토받고 싶습니다. 감사합니다. while (index >= 0) { index = str.indexOf(key, index + 1); System.out.println("index = " + index); if (index == -1) { break; } count++; } System.out.println("count = " + count); }

  • java
  • 객체지향
유석환 댓글 1 좋아요 0 조회수 129

API에서 컬렉션을 직접 반환하는 부분에 관한 질문입니다.

미해결

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

API 개발 기본 - 회원 조회 API의 강의에서, membersV1은 엔티티를 직접 반환하기 때문에 좋지 않고, 컬렉션을 직접 반환하기 때문에 향후 API 스펙을 변경하기 어렵다고 하셨습니다. 따라서 membersV2에서는 엔티티를 직접 반환하지 않고 API 스펙에 따라 DTO를 맞춰 설계하고, 별도의 필드가 생길 것을 대비해 Result 클래스로 한번 감싸서 넘긴 것을 알 수 있었습니다. 이후 API 개발 고급부터는, Result 클래스로 감싸지 않고 List<DTO>로만 API의 응답값을 설정하시던데, 일부러 Result 클래스로 감싸는 부분을 생략하신 것인지 궁금합니다. 이와 별개로 실무에서는 Result와 같은 클래스로 감싸고 응답하는 것이 일반적일까요?

  • java
  • spring
  • spring-boot
  • jpa
ash 댓글 1 좋아요 0 조회수 73

run() 메서드가 종료되면 Thread-0을 회수하나요?

해결됨

김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 아래 사진과 같은 상황에서 Thread-0 이 run() 메서드 수행을 완료하면, Thread-0 은 할 일이 아무 것도 없는 상태입니다. 그렇게 되면 Thread-0에게 할당해 준 스택 영역 전체 를 JVM이(?) 회수하나요? 아니면, 개발자가 따로 명시적으로 Thread-0 의 회수?종료?를 명령할 때까지 이를 유지하나요?

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
dev.rudevico 댓글 2 좋아요 0 조회수 174

컴파일 에러 문의

미해결

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

안녕하세요 강사님! 채점 컴파일 에러 관련해서 문의 드립니다. 저는 위와 같이 풀이를 하였는데요! 채점 시에 컴파일 에러가 발생하는데 어느 부분 때문일까요,,? 제 컴퓨터에선 올바르게 작동합니다!

  • java
  • 코딩-테스트
shshjkjk 댓글 2 좋아요 0 조회수 103

질문있습니다!!!

해결됨

스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판

학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 샤드키가 데이터 분산을 위한 키값으로 활용이 되잖아요. 어떤 데이터베이스에 저장이 될 지 를 결정하는 키값으로 활용되는 것으로 알고있는데, 이 샤드키가 논리적으로 다른 테이블과 연관관계를 맺는 역할도 수행한다라고 이해하면 될까요??

  • java
  • mysql
  • spring-boot
  • kafka
  • redis
service 댓글 1 좋아요 0 조회수 178

12분 개행

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

12분에서 \n이 있으면 개행 되서 1 2 3 이런식으료 나와야하는거 아닌가요???

  • python
  • java
  • c
  • 정보처리기사
곽경록 댓글 2 좋아요 0 조회수 150

현재 자바가 정렬 알고리즘을 사용하는 기준 질문입니다

미해결

김영한의 실전 자바 - 중급 2편

현재 자바는 데이터가 작을 때(32개 이하) 듀얼 피벗 퀵소트를 사용하고, 32개를 초과할 때 팀 소트를 사용한다고 말씀하셨는데, 데이터 개수로 정렬 알고리즘이 정해지는게 아니라 데이터 타입으로 정해지는거 아닌가요?

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
seon 댓글 2 좋아요 0 조회수 147

[리뷰] 잘 들었습니다!

해결됨

김영한의 실전 자바 - 중급 2편

40% 정도 들었을 때 리뷰를 이미 남겨버려서 이후에 추가로 남길 수는 없는 것 같아서 아쉬운대로 여기에라도 남깁니다. 개발자의 길을 걷기로 정한 지 얼마 지나지 않았을 때, 파이썬이나 C 등을 배우고 나서 항상 아쉬웠던 부분이 "이 다음 스텝을 밟으려면 뭘 해야 되는 거지?"라는 막막함에 쉽사리 다음 스텝으로 가지 못하고, 그대로 다른 개념들을 배우러 가게 되어서 어느정도 배웠던 개념들이 꽤나 많이 사라져 버리는 경험을 했을 때입니다(ex. 파이썬 기초 책을 완독하고, 다음에 중급 단계를 배우고 싶은데, 뭘 선택해야 하지?). 그런데 영한님은 정말 탄탄하게 로드맵을 정해 주셔서 "내가 한번 배운 기초 지식이 무의미하게 희석되지 않겠구나, 결국 다음 강의에 도움이 되는구나"하는 믿음을 가진 채로 듣다 보니 열정도 더 생깁니다. 마지막 카드 게임 문제를 풀고난 뒤에 영한님의 풀이와 비교했을 때도 너무 재미있었습니다. "이렇게 해야 더 객체지향적이구나", "ENUM을 여기서 사용할 수가 있구나" 등등 내 코드보다 더 개선된 코드를 보면 그 수준까지 도달하고 싶은 열망에 더욱 공부 의욕도 샘솟네요. 이제 저는 미리 결제해 둔 고급1편과 스프링 입문을 병행하며 듣고, 그 뒤로는 아마 고급 2편과 스프링 로드맵을 따라가지 않을까 싶습니다. 또한 나온 지 1년도 채 되지 않은 강의들이라 그런지 고급 자바편의 리뷰 수가 상대적으로 적은 것을 보면 뭔가 제 마음도 아프고, "영한님이 적은 리뷰 수에 의욕이 저하되면 안 될텐데"하는 생각이 들기도 합니다. 그 덕분(?)인지 "아 나는 꼭 고급편 듣고 리뷰를 야무지게 남겨야지"라는 저만의 목표가 생기기도 하네요. 저는 비록 학생에 불과하지만, 본인이 충분히 알고 있는 개념이라고 하더라도 그것들을 체계적이고, 오류없이 누군가에게 전달하려고 한다면 강의시간의 수 배만큼의 시간과 노력이 필요함을 잘 알고 있습니다. 저도 가끔 무언가를 남에게 가르쳐주려고 할 때 초반에는 정말 탄탄한 순서와 검증된 자료들만으로 준비하면서 계획을 세우다가, 어느 순간 그 과정이 너무 힘들어서 헤이해지는 경우가 참 많았거든요. 결국 하고 싶은 말은 스프링에 이어 그 기초가 되는 자바까지 이렇게 탄탄하게 준비해 주시니 그걸 듣는 저로써는 너무나 감사할 따름입니다. 영한님의 덕을 너무나도 잘 보고 있는 인간 1명이 있다는 사실에 조금이나마 강의 준비하시는 데에 도움이 되셨으면 합니다. 파이팅!

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
dev.rudevico 댓글 2 좋아요 1 조회수 157

mysql 연결관련 에러 질문있습니다

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

application.yml파일을 작성하기 전에는 libraryappapplicition을 실행하면 잘 되었었은데 강의를 따라 yml파일을 작성이후 연결이 되지않는다는 에러가 발생하였습니다 driver-class-name에서 driver를 찾을수 없다고 나오는데 이 문제 때문인것 같아요 혹시 버전이나 어떤 문제 때문인지 궁금합니다

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
양준호 댓글 2 좋아요 0 조회수 220

cors설정방법

미해결

스프링 시큐리티 OAuth2

강의에서처럼 시큐리티에서만 설정하면 mvc 쪽에서는 다른 설정이 필요없어도 cors가 허용되나요?

  • java
  • spring
  • spring-boot
  • oauth
플하 댓글 1 좋아요 0 조회수 126

다른 질문과 답변을 보고 질문드립니다.

해결됨

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

https://www.inflearn.com/courses/lecture?courseId=326750&unitId=72711&tab=QnA&category=questionDetail&q=229953 저도 이 글처럼 lt와 rt로도 풀었었는데, 이 코드가 reverse()를 사용하는 것보다 효율적이라 하셨는데 어떤 면에서 효율적인지 궁금합니다.

  • java
  • 코딩-테스트
11 1 댓글 2 좋아요 0 조회수 81

dtype not found 에러

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

package hellojpa; import javax.persistence.*; @Entity @Inheritance(strategy = InheritanceType.JOINED) @DiscriminatorColumn(name="DTYPE") public class Item { @Id @GeneratedValue private Long id; private String name; private int price; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getPrice() { return price; } public void setPrice(int price) { this.price = price; } } 이런 식으로 작성해 둔 상태고, create Table 작성 시 DTYPE varchar(31) not null,는 나오는데 그 이후 alter table에서 아이템이 나오지 않고, dtype insert가 안 됩니다

  • java
  • jpa
snowflake 댓글 2 좋아요 0 조회수 106

home.html이 뜨지 않고, index.html이 뜹니다

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 비슷한 글을 찾아보고 왔으나, 저랑 다르게 @Controller를 작성하지 않은 게 문제라서 올립니다. 저 같은 경우엔 HomeController 파일에 @Controller를 작성했으나, 똑같이 index.html이 뜹니다. 또한 home.html 위치도 템플릿 폴더에 들어가 있는 걸 확인했습니다. 제 경우에는 뭐가 문제인 걸까요 ?

  • java
  • spring
  • mvc
  • spring-boot
말랑말랑한 캥거루 댓글 2 좋아요 0 조회수 220

Maven resources compiler 에러가 뜨면서 빌드가 안되네요

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] JpaMain.java 실행시 이런 에러가 계속 발생합니다. Maven resources compiler: Maven project configuration required for module 'hello-jpa' isn't available. Compilation of Maven projects is supported only if external build is started from an IDE. persistence.xml 은 다음과 같고 <?xml version="1.0" encoding="UTF-8"?> <persistence version="2.2" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_2.xsd"> <persistence-unit name="hello"> <properties> <!-- 필수 속성 --> <property name="javax.persistence.jdbc.driver" value="org.h2.Driver"/> <property name="javax.persistence.jdbc.user" value="sa"/> <property name="javax.persistence.jdbc.password" value=""/> <property name="javax.persistence.jdbc.url" value="jdbc:h2:tcp://localhost/~/test"/> <property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/> <!-- 옵션 --> <property name="hibernate.show_sql" value="true"/> <property name="hibernate.format_sql" value="true"/> <property name="hibernate.use_sql_comments" value="true"/> <!--<property name="hibernate.hbm2ddl.auto" value="create" />--> </properties> </persistence-unit> </persistence> pom.xml 은 다음과 같이 했습니다. <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> <configuration> <source>11</source> <target>11</target> </configuration> </plugin> </plugins> </build> <groupId>org.example</groupId> <artifactId>hello-jpa</artifactId> <version>1.0-SNAPSHOT</version> <properties> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <!-- JPA 하이버네이트 --> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-entitymanager</artifactId> <version>5.3.10.Final</version> </dependency> <!-- H2 데이터베이스 --> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <version>1.4.200</version> </dependency> <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>2.3.0</version> </dependency> </dependencies> </project> 진짜 3시간 넘게 하고 있는데 뭐가 문제인지 모르겠네요 pom.xml에 빌드가 등록 안 되어 있다길래 챗지피티한테 물어봐서 따로 추가도 해봤는데 저기서부터 막혀버리니 답이 없네요 진짜 ㅋㅋㅋ 무슨 정확한 에러 사유도 안 뜨고 Maven resources compiler: Maven project configuration required for module 'hello-jpa' isn't available. Compilation of Maven projects is supported only if external build is started from an IDE. 이런 문장만 계속 보여주니까 답답해 미쳐버리겠습니다.. 데이터베이스는 강의 환경하고 맞추려고 1.4.200으로도 해보고 최신버전으로도 해봤고 java 버전도 17, 11 둘 다 해봤는데 둘 다 똑같은 에러가 발생해서 미쳐버리겠습니다 아 참고로 강의에서 제공해주신 최신 버전 코드도 다운 받아서 open으로 열어봤는데 다 똑같은 에러가 발생합니다. 애초에 프로젝트 만들 때부터 잘못 만들어진건지 계속 똑같이 저 상태인데 왜 그러는걸까요..

  • java
  • jpa
sim2 댓글 2 좋아요 0 조회수 814

메소드 이름으로 쿼리 생성에 대한 질문

미해결

실전! 스프링 데이터 JPA

스프링 데이터 JPA가 제공하는 쿼리 메소드 기능 조회: find…By ,read…By ,query…By get…By 예:) findHelloBy 처럼 ...에 식별하기 위한 내용(설명)이 들어가도 된다 이 부분에 대한 의문입니다 spring공식문서를 찾아보고 chatgpt 에 질문도 해본 결과 findBy는 항상 붙어있어야 하고 사이에 단어를 넣어 작성하면 안된다는게 제가 얻은 답변인데 강의 자료에는 가능하다고 나와 있습니다 어떤게 정확히 맞는건지 혼란스럽네요 시간이 흘러서 문법 규칙이 바뀌어서 그런건지 이와 관련해 답변 부탁드리겠습니다.

  • java
  • spring
  • spring-boot
  • jpa
IGOR 댓글 1 좋아요 0 조회수 139

main 실행 화면이 제대로 작동하고 있는 건지 모르겠습니다

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. 영한 님 수업 자료랑 강의 보고 똑같이 작성하고 있는 상태이긴 합니다. 하지만 run을 할 때 실행 장면이 뜨지 않아 이게 무슨 오류가 있는 건지, 아니면 작동이 되고 있는 건지 잘 모르겠습니다. 이렇게 뜨면 무슨 문제가 있는 걸까요?

  • java
  • spring
  • mvc
  • spring-boot
말랑말랑한 캥거루 댓글 2 좋아요 0 조회수 112

사용자 가입시 에러발생 (TypeError: Cannot read properties of null (reading 'addMembers')

미해결

Slack 클론 코딩[실시간 채팅 with React]

안녕하세요. 현재 슬리액트, '회원가입 페이지 만들기' 파트를 듣고 있습니다. 회원가입을 누르면, 'TypeError: Cannot read properties of null' 라는 에러가 발생합니다. DB, users 폴더에는 새로운 회원정보가 잘 드렁가 있습니다. DB에는 잘 저장되는데, 프론트엔드에서 발생하는 에러일까요? 코드는 제가 거의 건든게 없습니다. 현재 제로초님이 Github 에 올려주신 코드에서 '비밀번호가 입력이 잘못되었습니다' 이부분 검증하는 부분은 추가되어 있습니다.

  • react
  • 웹팩
  • typescript
  • socket.io
  • babel
  • 클론코딩
민유 댓글 2 좋아요 1 조회수 215

localhost:8080/hello-stiatic.html 에 관한 질문

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 여기에 질문 내용을 남겨주세요. 강사님이 알려주신 html 코딩 내용인 hello-static.html과 localhost:8080/hello-static.html에서 페이지 소스 보기로 본 코드 내용이 다른데, 이유가 무엇일까요? 그리고 html 코드의 body 부분이 영어일 때는 괜찮은데, 한글 입력시 페이지에서 한글이 깨져서 출력됩니다. 1. <hello-staitc.html> <!DOCTYPE HTML > <> <head> <title> static content </title> <meta http-equiv ="Content-Type" content ="text/html; charest=UTF-8" /> </head> <body> 정적 컨텐츠 입니다. </body> </html> <loacalhost:8080/hello-static.html> <!DOCTYPE HTML><html><head> <title>Hello</title> <meta http-equiv="Content-Type" content="text/html; charest=UTF-8" /></head></html>Hello<a href=" /hello ">hello</a></body></html><script>(function() { var ws = new WebSocket('ws://' + window.location.host + '/jb-server-page?reloadMode=RELOAD_ON_SAVE&'+ 'referrer=' + encodeURIComponent(window.location.pathname)); ws.onmessage = function (msg) { if ( msg.data === 'reload') { window.location.reload(); } if ( msg.data .startsWith('update-css ')) { var messageId = msg.data .substring(11); var links = document.getElementsByTagName('link'); for (var i = 0; i < links.length; i++) { var link = links[i]; if (link.rel !== 'stylesheet') continue; var clonedLink = link.cloneNode(true); var newHref = link.href.replace(/(&|\?)jbUpdateLinksId=\d+/, "$1jbUpdateLinksId=" + messageId); if (newHref !== link.href) { clonedLink.href = newHref; } else { var indexOfQuest = newHref.indexOf('?'); if (indexOfQuest >= 0) { // to support ?foo#hash clonedLink.href = newHref.substring(0, indexOfQuest + 1) + 'jbUpdateLinksId=' + messageId + '&' + newHref.substring(indexOfQuest + 1); } else { clonedLink.href += '?' + 'jbUpdateLinksId=' + messageId; } } link.replaceWith(clonedLink); } } };})();</script> 출력 내용 원하는 출력 값 : 정적 컨텐츠 입니다. 실제 출력 값 : <> �뺤쟻 而⑦뀗痢� �낅땲��.

  • java
  • spring
  • mvc
  • spring-boot
8330kdw 댓글 2 좋아요 0 조회수 84

객체지향 프로그래밍의 원리 적용 범위

미해결

김영한의 실전 자바 - 기본편

안녕하세요 강사님! 강사님 덕분에 프로그래밍의 세계에서 재미 있는 시간을 보내고 있습니다! 객체 지향 프로그래밍과 궁금한 점이 있습니다. 자바는 객체지향프로그래밍에 특화 된 언어라고 이해하고 있는데요, 생성자, 메서드, 객체와 같은 개념들이 다른 언어(python, javascript 등)에도 적용할 수 있는건가요? 감사합니다!

  • java
  • 객체지향
침착한치킨다리 댓글 1 좋아요 0 조회수 110

게시글 CRUD 구현 오류 질문입니다.

해결됨

스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판

안녕하세요 강의 잘 듣고 있습니다. 게시글 CRUD 부분에서 오류가 발생하는데 yml 설정은 강의랑 똑같이 해줬습니다. 서버 실행시키면 java.lang.NullPointerException: Cannot invoke "org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(java.sql.SQLException, String)" because the return value of "org.hibernate.resource.transaction.backend.jdbc.internal.JdbcIsolationDelegate.sqlExceptionHelper()" is null at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcIsolationDelegate.delegateWork(JdbcIsolationDelegate.java:116) ~[hibernate-core-6.5.2.Final.jar:6.5.2.Final] at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.getJdbcEnvironmentUsingJdbcMetadata(JdbcEnvironmentInitiator.java:290) ~[hibernate-core-6.5.2.Final.jar:6.5.2.Final] at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:123) ~[hibernate-core-6.5.2.Final.jar:6.5.2.Final] 이런 오류가 발생하고 테스트 실행시키면 Invalid status line: "ÿ900" at org.springframework.web.client.DefaultRestClient$DefaultRequestBodyUriSpec.createResourceAccessException(DefaultRestClient.java:575) at org.springframework.web.client.DefaultRestClient$DefaultRequestBodyUriSpec.exchangeInternal(DefaultRestClient.java:498) at org.springframework.web.client.DefaultRestClient$DefaultRequestBodyUriSpec.retrieve(DefaultRestClient.java:460) at kuke.board.article.api.ArticleApiTest.create(ArticleApiTest.java:24) at kuke.board.article.api.ArticleApiTest.createTest(ArticleApiTest.java:14) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) Caused by: java.net.ProtocolException: Invalid status line: "ÿ900" at java.net.http/jdk.internal.net.http.HttpClientImpl.send(HttpClientImpl.java:962) at java.net.http/jdk.internal.net.http.HttpClientFacade.send(HttpClientFacade.java:133) at org.springframework.http.client.JdkClientHttpRequest.executeInternal(JdkClientHttpRequest.java:102) 이런 오류가 발생합니다. 구글링 해보고 권한 설정이랑 인코딩 설정도 다 했는데 도저히 안돼서 질문 남깁니다.. 추가) server: port: 9000 spring: application: name: kuke-board-article-service datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://127.0.0.1:3306/article username: root password: root jpa: database-platform: org.hibernate.dialect.MySQLDialect open-in-view: false show-sql: true hibernate: ddl-auto: none yml 설정입니다. 추가) artile의 build.gradle dependencies { implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springframework.boot:spring-boot-starter-data-jpa' runtimeOnly 'com.mysql:mysql-connector-j' implementation project(':common:snowflake') } 이 부분은 강의 코드 보면서 그대로 쳤어서 runtimeOnly 'com.mysql:mysql-connector-j'는 원래 있었습니다. 스프링 버전 관련 plugins { id 'java' id 'org.springframework.boot' version '3.3.2' id 'io.spring.dependency-management' version '1.1.6' } group = 'kuke' version = '1' allprojects { java { sourceCompatibility = JavaVersion.VERSION_21 targetCompatibility = JavaVersion.VERSION_21 } apply plugin: 'java' apply plugin: 'org.springframework.boot' apply plugin: 'io.spring.dependency-management' configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' testCompileOnly 'org.projectlombok:lombok' testAnnotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' } tasks.named('test') { useJUnitPlatform() } } 강의에 나온 버전 그대로 맞췄습니다. DB관련 아이디 root에 비밀번호 root로 하면 접속 잘 되고 DB랑 테이블도 article로 통일했습니다. MySQLDialect -> MySQL8Dialect로 변경해도 안되는데 이유를 모르겠네요!... 추가) 이렇게 나오는데 USER는 본명이라 가렸습니다!.. 추가) 테스트 실행시키면 발생하는 오류입니다.. package kuke.board.article.api; import kuke.board.article.service.response.ArticleResponse; import lombok.AllArgsConstructor; import lombok.Getter; import org.junit.jupiter.api.Test; import org.springframework.web.client.RestClient; public class ArticleApiTest { RestClient restClient = RestClient.create("http://localhost:9000"); @Test void createTest() { ArticleResponse response = create(new ArticleCreateRequest( "hi", "my content", 1L, 1L )); System.out.println("response = " + response); } ArticleResponse create(ArticleCreateRequest request) { return restClient.post() .uri("/v1/articles") .body(request) .retrieve() .body(ArticleResponse.class); } @Getter @AllArgsConstructor static class ArticleCreateRequest { private String title; private String content; private Long writerId; private Long boardId; } @Getter @AllArgsConstructor static class ArticleUpdateRequest { private String title; private String content; } } 코드는 강의랑 똑같은데 왜그럴까요..

  • java
  • mysql
  • spring-boot
  • kafka
  • redis
pay 댓글 2 좋아요 1 조회수 387

인기 태그

인프런 TOP Writers

주간 인기글