묻고 답해요
167만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
선수지식 관련 질문입니다.
안녕하세요. 혹시 학습하기 전에 JAVA를 어느정도 학습을 해야 무리없이 수업을 따라갈 수 있는지 알고싶습니다. JSP부분도 필요할까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
반환타입을 Member로 한것은
public Member save(Member member)부분인데요, 반환타입을 Member로 준것이 domain의 멤버가 맞나요?그리고 이 Member안의 정보(아이디,이름)을 한번에 가져오기 위해서 반환타입을 Member로 준게 맞을까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemberForm 대신에 domain 내 Member가 있는데 이것을 사용하면 안되나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]위 질문에 대해 김영한님이 옛날에 답해주신 내용이,create(Member member)처럼 사용이 가능은 하나, 다양한 정보를 필요로 하는 경우가 있어 MemberForm 클래스를 따로 만드는 게 낫다는 말씀이었습니다. 여기서 궁금한 점이,MemberForm 클래스가 controller 패키지에 있어도 되는건가요?, 매핑 시 스프링 컨테이너에서 controller 를 찾는다고 하던데 이 뜻이 @Controller가 붙은 클래스를 찾는다는 의미인거지 Controller 패키지를 조사한다는 의미는 아닌거죠?그래서 MemberForm도 controller 패키지 내부에 있을 수 있는거고.. 제가 이해한게 맞나요? 1번 질문과 유사한 질문입니다만,Mapping 시 @Controller 가 붙은 클래스를 전부 조사하여 해당 주소에 Maaping된 메서드가 있으면 호출하는 방식이면 클래스명은 따로 @Controller 조사할때 상관은 없는거죠?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
강의 후반쯤에 편의기능 메서드들을 알려주시는데
service 메서드 안에서 한 줄이며 끝날 것을ex) response.setHeader("Content-Type", "text/plain;charset=utf-8");편의 기능을 쓰기 위해 함수를 만들어서 service메서드 안에서 했던 것과 같이 일일이 다 설정해주고private void content(HttpServletResponse response) { //Content-Type: text/plain;charset=utf-8 //Content-Length: 2 //response.setHeader("Content-Type", "text/plain;charset=utf-8"); response.setContentType("text/plain"); response.setCharacterEncoding("utf-8"); //response.setContentLength(2); //(생략시 자동 생성) }다시 service메서드 안에서 호출해주기까지 하는데 더 코드를 많이 쓰고 귀찮은 것 같은데 이게 왜 편의 기능인가요??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
질문입니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]이렇게 실패라고 뜨는데 어떤부분이 잘못되어서 그런건가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
spring 설치
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]현재 자바, spring 강의를 다른 곳에서 수강을 하다 이해가 가지 않아 따로 김영한 강사님의 강의를 듣게 되었습니다. 현재 컴퓨터에 설치되어 있는 spring은 maven project이고, 버전도 다른데 그냥 계속 진행해야할지, Gradle project와 2.3.1 버전으로 다시 설치하면 각각 다른 버전으로 사용할 수 있는 건지 궁금합니다. 또 인텔리제이에서 사용하는 버전 따로, 이클립스에서 사용하는 버전 따로 할 수 있는지 궁금합니다. 감사합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
질문입니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]강사님과 똑같이 진행하는데 이렇게 작성했을때 강사님과 다르게 import가 생성되지 않는데 어떤게 문제인건가요??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
cmd gradlew 빌드 오류
오류 문구는 아래와 같습니다. FAILURE: Build failed with an exception.* What went wrong:A problem occurred configuring root project 'hello-spring'.> Could not resolve all files for configuration ':classpath'. > Could not resolve org.springframework.boot:spring-boot-gradle-plugin:3.0.4. Required by: project : > org.springframework.boot:org.springframework.boot.gradle.plugin:3.0.4 > No matching variant of org.springframework.boot:spring-boot-gradle-plugin:3.0.4 was found. The consumer was configured to find a runtime of a library compatible with Java 11, packaged as a jar, and its dependencies declared externally, as well as attribute 'org.gradle.plugin.api-version' with value '7.6.1' but: - Variant 'apiElements' capability org.springframework.boot:spring-boot-gradle-plugin:3.0.4 declares a library, packaged as a jar, and its dependencies declared externally: - Incompatible because this component declares an API of a component compatible with Java 17 and the consumer needed a runtime of a component compatible with Java 11 - Other compatible attribute: - Doesn't say anything about org.gradle.plugin.api-version (required '7.6.1') - Variant 'javadocElements' capability org.springframework.boot:spring-boot-gradle-plugin:3.0.4 declares a runtime of a component, and its dependencies declared externally: - Incompatible because this component declares documentation and the consumer needed a library - Other compatible attributes: - Doesn't say anything about its target Java version (required compatibility with Java 11) - Doesn't say anything about its elements (required them packaged as a jar) - Doesn't say anything about org.gradle.plugin.api-version (required '7.6.1') - Variant 'mavenOptionalApiElements' capability org.springframework.boot:spring-boot-gradle-plugin-maven-optional:3.0.4 declares a library, packaged as a jar, and its dependencies declared externally: - Incompatible because this component declares an API of a component compatible with Java 17 and the consumer needed a runtime of a component compatible with Java 11 - Other compatible attribute: - Doesn't say anything about org.gradle.plugin.api-version (required '7.6.1') - Variant 'mavenOptionalRuntimeElements' capability org.springframework.boot:spring-boot-gradle-plugin-maven-optional:3.0.4 declares a runtime of a library, packaged as a jar, and its dependencies declared externally: - Incompatible because this component declares a component compatible with Java 17 and the consumer needed a component compatible with Java 11 - Other compatible attribute: - Doesn't say anything about org.gradle.plugin.api-version (required '7.6.1') - Variant 'runtimeElements' capability org.springframework.boot:spring-boot-gradle-plugin:3.0.4 declares a runtime of a library, packaged as a jar, and its dependencies declared externally: - Incompatible because this component declares a component compatible with Java 17 and the consumer needed a component compatible with Java 11 - Other compatible attribute: - Doesn't say anything about org.gradle.plugin.api-version (required '7.6.1') - Variant 'sourcesElements' capability org.springframework.boot:spring-boot-gradle-plugin:3.0.4 declares a runtime of a component, and its dependencies declared externally: - Incompatible because this component declares documentation and the consumer needed a library - Other compatible attributes: - Doesn't say anything about its target Java version (required compatibility with Java 11) - Doesn't say anything about its elements (required them packaged as a jar) - Doesn't say anything about org.gradle.plugin.api-version (required '7.6.1')* Try:> Run with --stacktrace option to get the stack trace.> Run with --info or --debug option to get more log output.> Run with --scan to get full insights.* Get more help at https://help.gradle.org 확인 부탁드립니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
H2 실행 반응없음 윈도우
안녕하세요처음 강의를 들을 때 h2 데이터베이스를 설치하여 진행하였을 때는 잘 진행되었는데,강의를 다시 들으며 h2를 실행시켜보니 갑자기 실행이 되지 않습니다.환경변수는 잘 설정되어있고명령 프롬프트로 질문들 검색해서 나온 모든 해결방법을 실행해보았는데, 반응이 없고h2 console 바로가기를 클릭해도 반응이 없습니다...백신관련은 제거했습니다.14.200 말고 최근버젼으로도 도전해봤습니다.어떻게 해야 해결될까요?ㅠㅠ https://www.inflearn.com/questions/543652/%EC%9C%88%EB%8F%84%EC%9A%B0-h2-console-bat-%EC%8B%A4%ED%96%89-%EC%95%88%EB%90%A8-%ED%95%B4%EA%B2%B0%ED%95%A8*이 방법도 시도해봣으나 안됩니다 C:\tools\h2\bin>/"h2.bat"'/"h2.bat"'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는배치 파일이 아닙니다.
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
서버 관련해서 질문이 있는데요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.데이터를 생성후 에 서버를 내렸다가 다시 서버를 켜면 데이터 가 그대로 남아있나요?
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemberServiceIntegrationTest 실행 오류 (join함수)
스프링 DB접근기술 섹션에 JPA 파트를 듣고 있는데 MemberServiceIntegrationTest.java 파일에서 join함수를 실행했는데 아래와 같은 오류가 발생하여 질문올립니다.Spring Boot : 2.7.9Java : 11application.propertiesspring.datasource.url= jdbc:h2:tcp://localhost/D:\\workspace\\study\\test spring.datasource.driver-class-name=org.h2.Driver spring.datasource.username=sa spring.jpa.show-sql=true spring.jpa.hibernate.ddl-auto=none spring.hellomyspring.domain.Memberpackage spring.hellomyspring.domain; import javax.persistence.*; @Entity public class Member { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; 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; } } spring.hellomyspring.controller.Memberpackage spring.hellomyspring.controller; public class Member { private Long id; private String name; 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; } } spring.hellomyspring.repository.JpaMemberRepositorypackage spring.hellomyspring.repository; import spring.hellomyspring.controller.Member; import javax.persistence.EntityManager; import java.util.List; import java.util.Optional; public class JpaMemberRepository implements MemberRepository{ private final EntityManager em; public JpaMemberRepository(EntityManager em) { this.em = em; } @Override public Member save(Member member) { em.persist(member); return member; } @Override public Optional<Member> findById(Long id) { Member member = em.find(Member.class, id); return Optional.ofNullable(member); } @Override public Optional<Member> findByName(String name) { List<Member> result = em.createQuery("select m from Member m where m.name = :name", Member.class) .setParameter("name", name) .getResultList(); return result.stream().findAny(); } @Override public List<Member> findAll() { return em.createQuery("select m from Member m", Member.class).getResultList(); } } spring.hellomyspring.service.MemberServicepackage spring.hellomyspring.service; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import spring.hellomyspring.controller.Member; import spring.hellomyspring.repository.MemberRepository; import spring.hellomyspring.repository.MemoryMemberRepository; import java.util.List; import java.util.Optional; @Transactional public class MemberService { private final MemberRepository memberRepository; public MemberService(MemberRepository memberRepository) { this.memberRepository = memberRepository; } public Long join(Member member){ // 같은 이름 중복 회원 x validateDuplicateMember(member); memberRepository.save(member); return member.getId(); } private void validateDuplicateMember(Member member) { memberRepository.findByName(member.getName()) .ifPresent(m -> { throw new IllegalStateException("이미 존재하는 회원입니다."); }); } // 전체회원 조회 public List<Member> findMembers() { return memberRepository.findAll(); } public Optional<Member> findOne(Long memberId) { return memberRepository.findById(memberId); } }
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
HTTP 요청 메시지 로그로 확인하기
application.properties 에logging.level.org.apache.coyote.http11=debug똑같이 했는데웹브라우저가 인코딩해서 보내질 않습니다.Received [GET /hello?username=Kim HTTP/1.1(헤더 정보 부분은 다 나옵니다) 코드를 보면Unused property 라고 뜹니다.구글링을해도 나오질않네요..답변주시면 정말 감사하겠습니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
spring socket 통신
안녕하세요. 개발하다 궁금한 사항이 있어 질문드립니다.spring을 이용해 백엔드 서버를 구축하고 있는데 디바이스(안드로이드)와 http 통신, tcp/ip socket 통신 두가지를 모두 구현해야 합니다. 이럴 경우에는 java의 socket 관련 라이브러리를 사용해서 소켓 서버를 만들고 서블릿을 이용한 웹서버도 만들어 두 개를 동시에 실행시켜야 하는지 아니면 다른 방식으로 구현해야 하는지 문의드립니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
어디에 있나요??
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]수업들으면 똑같이 따라하려 하는데 강사님께서 보는 화면의 이런 부분들은 어디에 나와 있는지 알수있을까요?? 사소산 질문이라 죄송합니다
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
localhost:8080/hello 오류에 관해 질문 드립니다
index까지는 되는데 /hello 열면 화이트라벨 에러가 발생합니다 왜 그런지 모르겠습니다
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
프로젝트 생성, View 환경 설정
제목의 두 강의에서 빌드 시 강사님께서는 그냥 빌드하고 넘어가시는데edit configuration에서 name 및 main class를 설정하는 행위의 빌드 환경설정이 필요한 것 같습니다. 현재 HelloController를 작성했지만 빌드 시 cannot find symbol 오류가 뜹니다. 환경설정 하는 부분도 강의자료에 남겨주시기 바랍니다. 이거 때문에 시간을 많이 날리네요...
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
db 초기화할때, 새로운 인스턴스의 메서드를 사용했는데 기존의 인스턴스가 영향 받을 수 있나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)네2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)네3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)네[질문 내용]MemberServiceTest 파일을 보면,MemberService 객체 인스턴스 내부에서 MemoryMemberRepository 객체를 생성하여 db로사용하고 있는데,다시 아래에 MemoryMmeberRepository 객체 인스턴스를 생성하면 새로운 db가 또 생기게 되는데서로 다른 db아닌가요?? 왜 아래 MemoryMemberRepository 인스턴스의 내장메서드를 사용하면 MemberService 인스턴스 내부의 db가 초기화 되는지 궁금합니다!! 추가) 뒷 내용을 보면 나중에 db를 합치는데 이 부분은 이해가 됩니다.. 앞 부분에선 뭘 간과한 걸까요..ㅎ
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
localhost:8080에 대해
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]인텔리제이에서 run실행하는것도 잘 되었고이 상태로 localhost:8080을 했을때이렇게 떠서 다른 작성자분께 조언하신데로 crd로 들어가서 똑같이 했는데도이렇게 뜹니다. 스프링부트마크가 없어도 괜찮은 건가요?
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
get body
http method를 GET으로 설정했을 경우 파라미터로만 보내는 것이 일반적인가요? Body에 json 등을 통하여 전달하는 방식은 post method에서 적용하는 게 맞나요?
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
강의 자료 검증1 13페이지에 오류가 있는 것 같습니다.
여기서 수량이 최대 9,999개 까지 허용되려면 item.getQuantity()가 10000보다 크거나 같을 때 (item.getQuantity() >= 10000)으로 변경되어야 하는 것 아닌가요?