묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
DTO getter 메서드
안녕하세요.다름이 아니라 제가 혼자 연습하다가 헷갈리는 점이 있어서 질문드립니다!! 일단 JSON형식의 응답을 만들기 위해서 DTO에 멤버변수에 대한 getter메서드가 있어야 한다는 것은 알고 있습니다!! 그래서 아래 코드와 같이 응답 DTO를 만들었습니다.@Getter @Setter public class WeatherInfoResponse { private String baseDate; private String baseTime; private String category; private String fcstDate; private String fcstTime; private List<WeatherAndTemp> weatherAndTempList; public WeatherInfoResponse(List<WeatherAndTemp> weatherAndTempList) { this.weatherAndTempList = weatherAndTempList; } }그런데 문제가 저 WeatherAndTemp 객체를 담는 리스트 부분입니다.아래가 WeatherAndTemp 클래스입니다.@Getter public class WeatherAndTemp { private String weather; private String temp; public WeatherAndTemp(String weather, String temp) { this.weather = weather; this.temp = temp; } }제가 헷갈리는 점이 처음에 WeatherAndTemp 클래스를 getter 메서드를 생성하지 않고 만들었다가 오류가 났었습니다. 그런데 getter 메서드를 생성하니 잘됩니다. 저는 원래 응답 DTO만 Getter가 필요하다고 알고 있었는데 저런 경우는 어떤 경우인가요? 응답 DTO의 멤버변수에 사용되는 클래스도 Getter 메서드를 만들어야 하나요?
-
미해결김영한의 실전 자바 - 기본편
상속과 접근 제어
강의 내용과 똑같은 패키지로 Child와 Parent 클래스를 만들고나서각각의 패키지에 main메서드가 있는 클래스를 만들고 Child와 Parent 객체를 생성해 접근이 어디까지 되는지를 확인해보고아예 다른 패키지에 main메서드가 있는 클래스를 만들어서 Child와 Parent 객체를 생성해서 확인해보았는데 protected와 package-private 접근제어자 부분이 접근이 가능할줄 알았지만 안되는 경우가 나와서 제 예상과 너무 달라 많이 헷갈립니다.그래서 궁금한건 실무에서 protected와 package-private를 사용 하나요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
dto 관련 질문있습니다
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]처음에 updateItem에 id없이 그냥 form만 넘겨주니 Caused by: java.lang.IllegalArgumentException: id to load is required for loading 라는 오류가 떠서컨트롤러에서 updateItem메소드에 form과 같이 id를 넘겨주니 해결됐습니다.질문 : 수정페이지에서 제출을 하게되면 컨트롤러의 updateItem의 (updateItemDTO form)에 id도 저장되서 service로 넘어가는게 아닌가요?
-
해결됨김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
ScannerWhileEx4 변수 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 선생님 수업을 듣다 궁금한 사항이 생겨서 여쭈어봅니다. 위 사진은 제가 작성한 코드 입니다.Q1 . 1번을 누르고 처음 내용을 입력하고 다시 1번을 눌러 새로운 정보를 입력 후 2번으로 합계를 보내면 따로 처음 total값과 두번째 total값을 더하는 식이 없고 누적시키는 로직도 작성을 하지 않아 정상적으로 작동이 되면 안될 것 같은데 정상적으로 합계가 나오고, 누적한 total 값이 자동으로 합산되는 이유가 궁금합니다.Q2. 일단 정상적으로 로직이 작동하여서 2번 결제를 선택 후 total 값을 확인하였고 변수를 초기화를 하지 않은것을 실행 후에 알게 되었는데, main에서 선언한 변수라 초기화가 되지 않고 값이 저장되어서 기록되는 것은 다른 질문을 보고 이해를 했지만 그렇게 되면 2번 결제 항목에서 초기화를 따로 시켜주지 않았는데도 불구하고 2번 결제를 선택 후 다시 1번으로 가서 값을 새로 입력하고 2번을 선택 하면 자동으로 초기화가 되어 새로 입력한 값만 불러와 졌는데 어떠한 원리로 이렇게 작동이 된것인지 궁금합니다.항상 좋은 강의 감사합니다:)
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
영한님 말씀대로 dto를 적용해보았는데 이렇게 하는게 맞을까요?
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]그런데 이렇게 작성했을때 수정하고 제출을 하면Caused by: java.lang.IllegalArgumentException: id to load is required for loading 오류가 뜹니다
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
1대다 패치조인시 페이징 기능 사용 불가 관련 질문
하이버네이트6 버전부터는 뻥튀기 데이터가 로그에서 찍히지 않는데 그러면 페이징 기능 써도 되는걸까요?
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
Spring Boot 3.0 에서 OSIV 기본값 false
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]Spring Boot 3.0 이후 부터 OSIV 기본값이 false로 바뀐 것 같아요. 확인 해주시고 첨언 해주시면 좋을 것 같아요.
-
미해결실전! 스프링 데이터 JPA
테스트 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]테스트 할 때 ItemRepositoy 생성자 주입을 했는데 계속 null이라고 나와서요! 혹시 뭐가 문제인걸까요??package study.datajpa.repository; import jakarta.persistence.Id; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import study.datajpa.entity.Item; import static org.junit.Assert.*; @SpringBootTest public class ItemRepositoryTest { @Autowired ItemRepository itemRepository; @Test public void save() { Item item = new Item("A"); itemRepository.save(item); } }package study.datajpa.repository; import org.springframework.data.jpa.repository.JpaRepository; import study.datajpa.entity.Item; public interface ItemRepository extends JpaRepository<Item, Long> { }package study.datajpa.entity; import jakarta.persistence.Entity; import jakarta.persistence.EntityListeners; import jakarta.persistence.Id; import lombok.AccessLevel; import lombok.NoArgsConstructor; import org.springframework.data.annotation.CreatedDate; import org.springframework.data.domain.Persistable; import org.springframework.data.jpa.domain.support.AuditingEntityListener; import java.time.LocalDateTime; @Entity @NoArgsConstructor(access = AccessLevel.PROTECTED) @EntityListeners(AuditingEntityListener.class) public class Item implements Persistable<String> { // @GeneratedValue @Id private String id; public Item(String id) { this.id = id; } @CreatedDate private LocalDateTime createdDate; @Override public String getId() { return id; } @Override public boolean isNew() { // 해당 데이터가 new냐 아니냐에 따라 새로운 객체인지 아닌지 판단 return createdDate == null; } }아래는 오류 내용입니다Cannot invoke "study.datajpa.repository.ItemRepository.save(Object)" because "this.itemRepository" is nulljava.lang.NullPointerException: Cannot invoke "study.datajpa.repository.ItemRepository.save(Object)" because "this.itemRepository" is null at study.datajpa.repository.ItemRepositoryTest.save(ItemRepositoryTest.java:19) at java.base/java.lang.reflect.Method.invoke(Method.java:580)
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
수업질문 [긴급] 로그인안되는 문제 말씀해주시는 부분 반영해서 최종 질문드립니다
모든 링크 모두 편집 가능하도록 변경해서 올립니다!05.29에 올린 글이 가장 마지막까지 작업하던 코드라 어떤 식으로 수정하면 좋을지 말씀해주시면 많은 도움이 될 것 같아요!https://drive.google.com/file/d/1ZLSuM4WzJVs4Hec74h64ketY0KtzEEFu/view?usp=sharing ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ <기록> 24.05.29 00:50 작성[긴급-재업로드]수업질문 로그인 안 되는 문제수정한 링크(편집 가능)https://drive.google.com/file/d/1ZLSuM4WzJVs4Hec74h64ketY0KtzEEFu/view?usp=sharing 24.05.26 13:19 작성[긴급] 로그인해도 네비게이션 바가 안 바뀌고 있습니다!! 로그인이 안 됩니다 도와주세요[로그인 로그아웃] 강의까지 수강했는데 도저히 막막해서 고민하다가 답답한 마음에 올립니다.홈-가입-정보입력-로그인 눌러도 정보가 나타나지 않고 로그인/가입도 프로필/알림 이런 게 아예 안 뜹니다.그리고 로그인탭을 누르면 우리가 만든 로그인 폼이 아니라 시큐리티 로그인으로 이동하고, 시큐리티 로그인을 해도 시큐리티 로그인화면이 localhost:8080/login으로 나올 뿐입니다.로그인이 잘 돼서 로그인/가입이 프로필/알림 등으로 잘 보일 수 있도록 코드 어떻게 수정하면 좋을지 도와주세요. 가장 마지막까지 작성한 코드입니다. [로그인로그아웃 13:20]까지 수강했습니다. 수정한 링크(편집 가능)https://drive.google.com/file/d/1D3FexWWHLE0SZrdumtZVRmuqJFP5Atl6/view?usp=sharing
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
dto조회 시 default_batch_fetch_size가 적용되지 않습니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]이 코드는 batch가 잘 적용되는데dto로 다음과 같이 조회하게 되면 batch가 적용되지 않습니다. 원래 dto로 o를 조회하게 되면 배치가 적용되지 않나요?
-
미해결이펙티브 자바 완벽 공략 1부
책에 쓰여 있는 스레드 안전에 대한 제 생각
저도 직전 강의에서 "이 hashCode() 메서드는 굳이 멀티 스레드를 걱정하지 않아도 될 것 같은데?" 라고 생각하면서 좀 자세히 보고 생각해 보게 되었습니다. 책에서 해시를 캐싱할 때 지연 초기화를 하려면 스레드 안전하게 만들도록 신경 써야 한다고 쓰여져 있기에 이 문장에 대한 제 생각을 공유하고자 글 남깁니다! 기선님께서도 말씀하셨듯이 강의 초반에 나오는 hashCode() 메서드는 여러 스레드가 동시에 계산을 하더라도 문제는 없어 보입니다. result라는 로컬 변수에 계산을 하기 때문이죠(로컬 변수는 스레드마다 고유하므로). 계산 결과에는 문제가 없으나, 계산을 동시에 한다는 점에 고민을 해보게 되었습니다. 책에서 설명하는 해시를 캐싱하는 전제조건은 불변 객체이면서 해시코드를 계산하는 비용이 클 때입니다. 즉, 불변 객체이기에 해시 코드를 여러 번 계산할 필요가 없고 처음 한 번만 계산한 후 계속 가져다 사용하는 방식인거죠. 스레드에 안전하지 않게 설계하면 여러 스레드가 동시에 해당 인스턴스의 해시를 계산할 수 있기에(크게 문제가 되지 않다고 생각할 수 있으나 해시코드를 계산하는 비용이 크다고 가정했으므로 중복 계산은 성능 저하로 이어진다고 생각합니다) 스레드 안전에 신경 써야 한다고 쓴 것 같습니다. 그러나 역시 결과에는 문제가 없기에 책에서도 "반드시 스레드에 안전해야 한다!"가 아닌 "스레드 안전하게 만들도록 신경 써야 한다"라고 기술되어 있는 것이라고 생각합니다.
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
h2 드라이버가 갑자기 사라졌다고 나와요 ㅠㅠ
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용] 강의 잘 따라하고 있다가 orderV6 부분에서 갑자기 오류가 나옵니다 왜이럴까요ㅠㅠ? 셋팅이 바뀐 부분은 따로 없는 거 같습니다. yml부분데 h2.driver 부분이 오류가 나오네요ㅠㅠjava.lang.ClassNotFoundException: org.h2.Driver at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520) at java.base/java.lang.Class.forName0(Native Method) at java.base/java.lang.Class.forName(Class.java:467) at org.springframework.boot.devtools.restart.classloader.RestartClassLoader.loadClass(RestartClassLoader.java:121) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520) at java.base/java.lang.Class.forName0(Native Method) at java.base/java.lang.Class.forName(Class.java:467) at org.springframework.util.ClassUtils.forName(ClassUtils.java:304) at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.driverClassIsLoadable(DataSourceProperties.java:194) at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineDriverClassName(DataSourceProperties.java:175) at org.springframework.boot.autoconfigure.jdbc.PropertiesJdbcConnectionDetails.getDriverClassName(PropertiesJdbcConnectionDetails.java:49) at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:55) at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari.dataSource(DataSourceConfiguration.java:117) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:140) at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:647) at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:639) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1334) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1164) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:561) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:521) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:907) at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:785) at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:542) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1334) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1164) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:561) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:521) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:312) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1231) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:949) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:624) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:456) at org.springframework.boot.SpringApplication.run(SpringApplication.java:334) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1354) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1343) at jpabook.jpashop.JpashopApplication.main(JpashopApplication.java:14) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50)
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
수업내용 글들은 어디서 확인 할수있나여?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 아니오3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용]수업내용 글들은 어디서 확인 할수있나여?
-
미해결실전! Querydsl
querydsl countQuery
안녕하세요 강의에서와 같이 CountQuery를 적용하였습니다.기대 결과값 : 422개 실제 결과값 : 425개였습니다. sql을 날려서 확인해본 결과 실제 결과값은 leftJoin하여 중복되는 행의 개수만큼 추가되어 있더라구요. 내부적으로 distinct 되어서 422개를 조회하고 싶습니다.혹시 어떻게 해야될까요? 감사합니다. @Override public Page<ReputationPost> findByReputationIdAndUsable(ReputationPostsGetReqDto dto, List<String> keywordList, List<ReputationChannelReqDto> reputationChannelReqDtoList, Pageable pageable, boolean usable) { List<ReputationPost> content = jpaQueryFactory.selectDistinct(reputationPost) .from(reputationPost) .join(reputationPost.post, post).fetchJoin() .leftJoin(postKeyword).on(reputationPost.post.id.eq(postKeyword.post.id)) .leftJoin(memLawkitDoc).on(reputationPost.id.eq(memLawkitDoc.reputationPost.id)) .where( reputationIdEq(dto.getReputationId()), channelIdListIn(reputationChannelReqDtoList), keywordListIn(keywordList), durationEq(dto.getStartDate(), dto.getEndDate()), memLawkitDocStatus(dto.getMemLawkitDocStatusList()) ) .orderBy(getSorting(dto.getSortOption())) .offset(pageable.getOffset()) .limit(pageable.getPageSize()) .fetch(); JPAQuery<Long> countQuery = jpaQueryFactory.selectDistinct(reputationPost.count()) .from(reputationPost) .join(reputationPost.post, post) .leftJoin(postKeyword).on(reputationPost.post.id.eq(postKeyword.post.id)) .leftJoin(memLawkitDoc).on(reputationPost.id.eq(memLawkitDoc.reputationPost.id)) .where( reputationIdEq(dto.getReputationId()), channelIdListIn(reputationChannelReqDtoList), keywordListIn(keywordList), durationEq(dto.getStartDate(), dto.getEndDate()), memLawkitDocStatus(dto.getMemLawkitDocStatusList()) ); return PageableExecutionUtils.getPage(content, pageable, countQuery::fetchOne); }
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
프로젝트 생성 관련 질문
해당 강의는 강사님의 다른 강의들과는 다르게 spring.io를 이용하지 않고 인텔리제이에서 직접 프로젝트를 생성하시던데, 강사님이 사용하시는 버전과 제가 사용하는 인텔리제이 버전이 다른 것 같아서 프로젝트 생성시 어떻게 해야하는지 문의 드립니다ㅠㅠ
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
일대 다 컬렉션 페치조인에서의 @Batchsize의 동작과정을 제대로 이해한 것이 맞는 지 궁금합니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]총 4개의 Order가 있고, 다음과 같이 xToOne연관관계를 가진 Member와 Delivery까지 페치조인해서 가져온 상황입니다.여기서 Batchsize가 2라고 가정하고, Order를 순차적으로 돌아가면서 OrderItems에 접근하게 된다면, 다음 그림과 같이 orderItems가 로딩이 되는 것인가요? order.stream().forEach(o -> o.getOrderItems().getPrice())(첫 번째)Batchsize가 2이므로 첫 두 Order에 대한 orderItems 로딩(두 번째)Batchsize가 2이므로 그 다음 두 개의 Order에 대한 orderItems 로딩
-
미해결김영한의 실전 자바 - 중급 2편
HashSet 실제 구현
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]HashSet의 코드를 보니 HashMap을 사용하여 구현이 되어있는데 실제 구현도 결국에는 강의 내용처럼 배열안에 LinkedList 나 TreeSet으로 구현과 최적화가 되는건가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
h2.sh 실행이 되질 않습니다.
안녕하세요. 터미널에서 h2.sh이 안됩니다. h2w.bat을 직접 열어서 연결을 누르면이런 화면이 나오긴 합니다.java --version 화면입니다.H2환경 별수 설정 화면입니다.h2.sh를 폴더에서 더블클릭해서 실행시키면명령프롬프트 창이 뜨면서 Error: Could not find or load main class org.h2.tools.ConsoleCaused by: java.lang.ClassNotFoundException: org.h2.tools.Console라고 잠깐 뜨고 창이 닫힙니다. 홈에는 test.mv.db파일 있습니다. 어떻게 하면 될까요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
Mysql 연결 부분 오류
spring: datasource: url: "jdbc:mysql://localhost/library" username: "root" password: "비밀번호" driver-class-name: com.mysql.cj.jdbc.Driver위와 같이 application.yml 파일을 작성했는데, 사용자 등록을 하면 서버 내부 오류라고 뜨면서 아무것도 안되더라구요.개발자 도구로도 봤는데 뭐가 문제인지 잘 모르겠어서 구글을 찾아보다가 jpa: database: mysql hibernate.ddl-auto: update show-sql: trueapplication.yml 파일에 추가로 이걸 입력하니까 정상적으로 작동하네요.. 혹시 이렇게 두고 실행해도 괜찮은건지 여쭤보고싶었습니다!
-
미해결김영한의 실전 자바 - 기본편
자식 클래스와 protected 메서드
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. package parent; public class Parent { protected static void staticTest(){ System.out.println("정적 메서드"); } protected void notStaticTest(){ System.out.println("인스턴스 메서드"); } } package child; import parent.Parent; public class Child extends Parent { public static void main(String[] args) { / Paretn.staticTest(); //정적 메서드는 정적 메서드 호출가능 Parent parent = new Parent(); parent.notStaticTest(); // 호출불가 컴파일 오류 Child child = new Child(); child.notStaticTest(); // 호출가능 Child 클래스가 Parent 클래스를 상속 받았고notStaticTest 메서드의 접근제어자가protected 인데Parent parent = new Parent();parent.notStaticTest();// 호출불가 컴파일 오류Child child = new Child();child.notStaticTest();// 호출가능 둘의 차이가 무엇이어서호출의 가능여부가 다른지 궁금합니다.