묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
java: cannot find symbol 'string' 에러
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)아니오2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용] java: cannot find symbol 'string' 이라는 에러가 발생합니다.. 구글에 검색을 해보니 jdk가 설정이 안된거라고 나오는데 저는 영상에서 나온대로 최신버전인 23을 설치한 상태입니다.. 뭐가 문제인지 알려주시면 감사하겟습니다ㅜㅜ
-
미해결김영한의 실전 자바 - 기본편
문제2 : PayService
[질문 내용]정답을 보기 전에 먼저 제가 스스로 리팩토링 하다가 PayService에 있는 processPay 메소드도 Pay 인터페이스에 넣어서 각각 KakaoPay, NaverPay에서 구현을 했는데 이렇게 해도 OCP 원칙을 따르면서 리팩토링 한건가요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
알맞은 버전 확인 방법
9분에서Reference Doc 들어가서 hibernate 검색하면 스프링부트와의 알맞은 버전이 나온다고 하셨는데, 저는 안 나오네요. 지금은 방법이 바뀌었나요? 적합한 버전을 어떻게 찾나요?
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
왜 오류 인가요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.package PR; import java.util.*; public class 보이는학생 { public int solution(int n, int[] arr){ int answer = 1; for(int i=0; i<arr.length-1; i++){ if( arr[i] < arr[i+1] ){ answer++; } } return answer; } public static void main(String[] args) { Algorithm.보이는학생 t = new Algorithm.보이는학생(); Scanner kb = new Scanner(System.in); int n = kb.nextInt(); int[] arr = new int[n]; for(int i=0; i<n; i++){ arr[i] = kb.nextInt(); } System.out.println(t.solution(n, arr)); } } 이코드는 어디 부분에서 로직이 오류인가요?
-
해결됨서버개발자 과제전형 완벽가이드 - 1편
커밋 끊으면서 해주시는거 너무 좋네요.
강의를 커밋으로 끊으면서 만드신거 너무 좋습니다. 강의도 길어지지도 않고 깃 사용법도 좀 더 배울 수 있구요. 단지 커밋 메시지랑 브랜치명이 조금씩 안 맞는 부분은 있습니다. 😄
-
미해결김영한의 실전 자바 - 기본편
선생님 혹시 자바스크립트 강의는 만드실 계획이 없나요??
다른질문입니다만,....김영한 선생님께 자바스크립트 배울수있다면 너무 좋을것같아서요..ㅠㅠ
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테스트 코드를 위한 @Builder, 생성자
안녕하세요api 에서 request 를 받는 경우 getter 만 열어두고 사용하는 경우가 있는데요,이런 경우엔 request dto에 테스트 코드를 위한 생성자나 builder를 추가해주는게 맞을까요?테스트 코드를 짜기 위해 실제 코드를 수정하는 부분이 찝찝해 질문드립니다
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
저는 왜 EOFException이 아니라 SocketException이 발생할까요 ?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요.강의를 쭉 들으면서 ServerV3, V4를 키고 ClientV3,4 를 강제 종료시키면 영한님은 EOF 오류가 뜨는데 저는 Socket 오류가 발생합니다. 제가 잘못한건지 아니면 상황에 따라 다른건지 궁금합니다.
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
EX1번문제
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]영한쌤이랑 다르게 int sum= a + b + c; 을 생각못하고리턴값으로 결과는 똑같이 얻었는데 영한쌤과 과정이 다르니 틀렸다고 봐야겠죠?..가능하다면 쌤이랑 다르게 int sum = a + b + c;를 작성하지 않은 것에 대한 단점도 알고 싶습니다ㅠㅠ 어렵네요..
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
프로젝트 오픈 시
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용] 설명해주시는대로 따라서 받았는데 이렇게 받으니까build.gradle이 없어서 그냥 프로젝트 오픈했거든요??이렇게 해도 되는건가요 ㅠㅠ?? 프로젝트 오픈해도 gradle같은건 없는데 ㅠㅠ
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
26강 updateUser request id값이 안들어옵니다.
private final UserServiceV2 userService;jpa로 설정한 이후 putMapping에서 id값이 0으로만 들어옵니다.코드는 json원시값보고싶어서 httpRequest 로 테스트한 상황입니다.(로그는 Raw JSON Body: {"id":0,"name":"333"}) db 데이터, 등록, 삭제 모두다 잘동작하고 id만 client에서 받아오질 못하는 것 같습니다. postman으로 json값 정상적으로 요청하면 작동도 잘되구요.UserServiceV1 인 jdbctemplate를 이용한 방식도 파라미터 정상적으로 넘어와서 잘동작합니다.이유를 모르겠습니다.
-
미해결2. 웹개발 코스 [JAVA 개발언어]
ppt 자료다운이 이상합니다.
자료 다운받아 압축을 풀면 ppt가 아닌 이상한 파일들이 있습니다.
-
미해결실전! Querydsl
querydsl 처음 설정 후 테스트코드 돌려보는데 오류 원인을 모르겠어요
JPAQueryFactory queryFactory = new JPAQueryFactory(em);부분에서Cannot resolve constructor 'JPAQueryFactory(EntityManager)'오류가 생기는데 원인을 모르겠어요아래는 현재 설정입니다.스프링 생성 build.gradle 소스plugins { id 'java' id 'org.springframework.boot' version '3.3.5' id 'io.spring.dependency-management' version '1.1.6' //querydsl 추가 id "com.ewerk.gradle.plugins.querydsl" version "1.0.10" } group = 'study' version = '0.0.1-SNAPSHOT' java { toolchain { languageVersion = JavaLanguageVersion.of(17) } } configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-web' compileOnly 'org.projectlombok:lombok' //querydsl 추가 implementation 'com.querydsl:querydsl-jpa' annotationProcessor 'com.querydsl:querydsl-apt:5.0.0:jpa' implementation 'mysql:mysql-connector-java:8.0.33' // MySQL 드라이버 최신 버전 사용 implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.9.0' // 쿼리 파라미터 로그 표시 (성능에 영향을 줄 수 있음) // runtimeOnly 'com.mysql:mysql-connector-j' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' } tasks.named('test') { useJUnitPlatform() } //querydsl 추가 시작 def querydslDir = "$buildDir/generated/querydsl" querydsl { jpa = true querydslSourcesDir = querydslDir } sourceSets { main.java.srcDir querydslDir } configurations { querydsl.extendsFrom compileClasspath } compileQuerydsl { options.annotationProcessorPath = configurations.querydsl } //querydsl 추가 끝 테스트코드package study.querydsl; import com.querydsl.jpa.impl.JPAQueryFactory; import jakarta.persistence.EntityManager; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.transaction.annotation.Transactional; import study.querydsl.entity.Hello; @SpringBootTest @Transactional class QuerydslApplicationTests { @Autowired EntityManager em; @Test void contextLoads() { Hello hello = new Hello(); em.persist(hello); JPAQueryFactory queryFactory = new JPAQueryFactory(em); // QueryDSL 쿼리 테스트 } }
-
해결됨기초 탄탄! 독하게 시작하는 Java - Part 1 : 절차적 프로그래밍
널널한 개발자님~ 변수명을 한글로 시도하지 말라고하셨는데요
토스페이먼츠의 어떤 프로젝트에서 일부 변수명은 한글로 작성하는 컨벤션이 존재하는거로 알고있습니다물론 모든 변수를 한글로 하는건 지양하고 영어로 풀어내기 어려운 경우 한글을 사용하는걸로 컨벤션을 작성해놓은거같은데해당 프로젝트가 자바스크립트의 컨벤션이어서 자바랑은 다른건지 궁금합니다~
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
gradlew 실행 시 다음과 같은 오류가 계속 발생하는데 뭐가 문제일까요?
강의를 보면서 cmd 실행후 helloC:\Users\Desktop\Study\hello-spring\hello-spring> 에서 gradlew build를 실행하면 해당 에러가 계속 뜨네요. 처음엔 다른문제가 뜨길레 윈도우 계정이름도 변경하고, 버전도 확인하고 cmd관리자 권한으로도 실행해봤는데도 계속 이래요. 공부가 하고 싶습니다 좀 도와주세요 너무 답답합니다 ㅠㅠ
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
[JPA와 DB 설정, 동작확인] 왜 insert가 안되는지 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요, 테스트가 정상적으로 실행되었으며 @Rollback 어노테이션을 붙였음에도 불구하고 왜 데이터가 insert 되지 않는지 궁금합니다.관련 사진은 다음과 같습니다. 코드는 다음과 같습니다.package jpabook.jpashop; import org.assertj.core.api.Assertions; import org.junit.jupiter.api.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.annotation.Rollback; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.transaction.annotation.Transactional; import static org.junit.jupiter.api.Assertions.*; @RunWith(SpringRunner.class) @SpringBootTest class MemberRepositoryTest { @Autowired MemberRepository memberRepository; @Test @Transactional @Rollback(false) public void testMember() throws Exception { // given Member member = new Member(); member.setUsername("memberA"); // when Long saveId = memberRepository.save(member); Member findMember = memberRepository.find(saveId); // then Assertions.assertThat(findMember.getId()).isEqualTo(member.getId()); Assertions.assertThat(findMember.getUsername()).isEqualTo(member.getUsername()); } }spring: datasource: url: jdbc:h2:tcp://localhost/~/jpashop username: sa password: driver-class-name: org.h2.Driver jpa: hibernate: ddl-auto: update properties: hibernate: #show_sql: true format_sql: true logging.level: org.hibernate.SQL: debug #org.hibernate.type: trace 감사합니다.
-
미해결김영한의 실전 자바 - 기본편
추상 클래스, 인터페이스
인터페이스가 추상 클래스보다 더 제약이 있다고 강의 내용에서 배웠습니다.그러나 구성에는 인터페이스가 더 많은 것을 포함하고 있는 것 같아 궁금합니다!강의 내용에서는 interface에 일반 메서드가 올 수 없다고 배웠던 것 같습니다.
-
해결됨얄코의 떠먹여주는 객체지향 디자인 패턴
빌더패턴 질문있습니다!
2분대에 나오는 PizzaBuilder static내부 클래스에 기본 생성자가 없으면 뒤에 나오는 main문에서 new Pizza.PizzaBuilder()가 가능한가요??
-
미해결스프링 시큐리티 OAuth2
강의 수강신청하고 듣기 전입니다 질문있습니다.
제가 만든 두 서버 사이트끼리 sso 인증으로 로그인을 공유하려고 합니다. 이 강의에 그것에 관한 내용이 있나요? 있다면 몇강쯤에 있나요?없다면 이 강의를 어떤식으로 활용해야 구현할 수 있을까요 ?
-
미해결
ModelMapper에 대해 질문드립니다 !!
안녕하세요!엔티티 -> DTO, DTO -> 엔티티 변환 모두 STRICT 전략을 사용하는 modelMapper.map을 사용하고있습니다.DTO를 쓰는 이유 -> 엔티티가 바뀌어도, dto는 그대로이므로 api 스펙이 바뀌지않음.그런데 STRICT 전략을 쓰는 modelMapper를 사용하면,dto와 엔티티 필드이름이 정확하게 일치해야하므로엔티티가 바뀌면 dto 필드도 바뀌어야함. 이렇게 되면 엔티티 변경 시에 api 스펙이 바뀌지않는다는 장점이 없어지게됨이런 생각이 들었는데, 그럼 STRICT 전략은 지양해야하나요, 아님 다른 방법이 있는 것인가요?