inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

The server does not support version 5.0 of the J2EE Web module specification.

미해결

실전 JSP (renew ver.) - 신입 프로그래머를 위한 강좌

The server does not support version 5.0 of the J2EE Web module specification. 라는 오류가 발생하면서 서버가 실행되질 않습니다.

  • java
  • jsp
외로운코딩독학 댓글 1 좋아요 0 조회수 447

Thread.sleep() 으로 identity 전략의 insert 쿼리 전송 시점을 테스트 해봤는데 궁금한 점이 있습니다.

해결됨

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

public class JpaMain { public static void main(String[] args) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello"); EntityManager em = emf.createEntityManager(); EntityTransaction tx = em.getTransaction(); tx.begin(); try { Member member = new Member(); member.setUsername("A"); System.out.println("======================"); em.persist(member); Thread.sleep(9000); System.out.println("======================="); tx.commit(); } catch (Exception e) { tx.rollback(); } finally { em.close(); } emf.close(); } } @Entity public class Member { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Column(name = "name", nullable = false) private String username; public Member() { } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } } 우선 생각 했던 결과는 현재 identity 전략이므로 em.persist() 할 경우 insert 쿼리가 DB에 바로 보내지고 DB의 Member 테이블에 값이 저장되는거를 예상했습니다. 실제 실행해 보면 ====================== Hibernate: /* insert for jpa_basic.ex1_hello_jpa.hellojpa.Member */insert into Member (name, id) values (?, default) Thread.sleep(9000) 전까지는 insert 쿼리가 콘솔에 잘 찍힙니다. 그래서 H2 콘솔에 데이터가 잘 저장이 됐는지 확인 해봤습니다. 결과는 저장이 되지 않았습니다. Thread.sleep(9000)가 끝나고 나서야 데이터가 저장이 됩니다. 그래서 생각했던 결과인 identity 전략에서 em.persist() 할 경우 왜 DB에 바로 저장이 안되는건지 궁금합니다. 참고로 http://hibernate.hbm2ddl.auto 옵션은 create입니다. 감사합니다.

  • java
  • jpa
감바스 댓글 1 좋아요 0 조회수 185

초기 설정에서 src 폴더를 생성하지 않아버렸을 때 auth.ts 파일과 middleware.ts의 파일 위치를 어떻게 해야하나요?

미해결

Next + React Query로 SNS 서비스 만들기

아래와 같은 에러가 발생하는 이유가 제가 처음부터 파일구조를 강사님과 다르게 해서 그런가 싶어서 이미 코드는 짜놓은 상태이지만 src폴더를 만들고 그 안에 app 폴더를 넣어 구조를 똑같이 하니 레이아웃이 깨져서(원인은 아직 못 찾았습니다만 단순 import 위치 문제는 아님은 확실합니다.) 다시 src가 없는 상태로 회귀했습니다. auth.ts 파일을 app 폴더와 같은 위치에 두라고 강의에서 말씀하셔서 그대로 두기도 해보았고 혹시나해서 app 폴더 안에 위치시켰으나 handler를 못찾는 에러는 동일했습니다. 혹시 create next 이후에 다시 src를 만들어서 넣는것이 불가능한가요? 불가능하다면 auth.ts와 middleware.ts의 위치를 현재 제 파일 구조상태에서 어느 위치에 두는 것이 맞나요?

  • react
  • next.js
  • react-query
  • next-auth
  • msw
ㅎㅇㄴ 댓글 1 좋아요 0 조회수 251

/home 의 new QueryClient

미해결

Next + React Query로 SNS 서비스 만들기

/home 페이지에서 prefetch를 해주지 않고 PostRecommends & followingPosts에서 useQuery로만 데이터를 불러와도 상관없나요 ?? 1번이 맞다고 하면 prefetch를 통해서 dehydrated를 해주는 이유가 궁금합니다. 아니면 서버 컴포넌트에서 react-query를 이렇게도 사용할 수 있다를 보여주신건지 궁금합니다:)

  • react
  • next.js
  • react-query
  • next-auth
  • msw
석석 댓글 1 좋아요 0 조회수 159

3계층 질문

해결됨

실전! 스프링 데이터 JPA

강의에선 서비스 계층 코드가 없는 관계로 컨트롤러에서 리포지토리를 바로 가져와 사용하셨는데요 실제로 서비스 계층을 구현하지 않은 상태에서 컨트롤러에서 리포지토리를 바로 사용하는 경우도 있는지 궁금합니다

  • java
  • spring
  • spring-boot
  • jpa
피곤한개발자 댓글 1 좋아요 0 조회수 137

MEMBER -ORDER 테이블 에서 JoinColumn 에 관련

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

Member.java @OneToMany @JoinColumn(name="member") private List<Order> orders = new ArrayList<>(); Order.java @ManyToOne @JoinColumn(name="member_id") //맵핑할 컬럼 private Member member; Member 의 joinColumn 은 member 객체 자체이고 Order의 joinColumn은 db의 컬럼 명인데 member 의 joinColumn 을 member_id, 즉 db의 컬럼명으로 또는 그냥 id 라고 하면 안되나요? 안된다면 이유도 알려주시면 감사하겠습니다!!

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
카도아보 댓글 2 좋아요 0 조회수 248

PDF DB 다이어그램

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] PDF에 나와 있는 DB 다이어그램 어떤 사이트나 프로그램 사용하셔서 만든 건가요??

  • java
  • jpa
wjswotmd2 댓글 1 좋아요 0 조회수 135

스프링부트 실행이 안됩니다.

미해결

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

[질문 내용] 강의 보면 이상한게 떠서 그거 누르면 실행이 되던데 저는 그런게 뜨지않아요 도와주세요

  • java
  • spring
  • mvc
  • spring-boot
포비 댓글 2 좋아요 0 조회수 479

em.detach(entity) 에 대해 질문 있습니다.

해결됨

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

em.detach(entity) 을 할 경우 영속성 컨텍스트의 1차 캐시에서 entity도 날라가고 쓰기 지연 저장소에 저장되어 있던 entity에 의해 발생한 변경 관련 쿼리문도 삭제 되는건가요?

  • java
  • jpa
감바스 댓글 1 좋아요 0 조회수 171

jpa에서 쿼리 보내는 시점에 대해 질문 있습니다.

해결됨

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

수정, 삭제, 삽입 같은 경우에는 데이터 변경이라 영속성 컨텍스트의 쓰기 저장소에 보관되어 있다가 커밋 직전에 한번에 보내지는 반면 em.find()를 통해 발생하는 조회 쿼리는 find() 사용시 바로 디비에 전송이 되는건지 궁금합니다. em.find()를 통해 발생한 조회 쿼리는 트랜잭션 커밋 종료에 상관없이 디비에 바로바로 전송이 되는건지 궁금합니다.

  • java
  • jpa
감바스 댓글 1 좋아요 1 조회수 119

테스트 코드 문의

미해결

실전! 스프링 데이터 JPA

DTO 쿼리 작성 시 join fetch 로 작성하는 경우는 에러가 발생하고 join 으로 작성하는 경우에는 에러가 발생하지 않았는데요. join fetch 의 개념은 결국 지연로딩을 작동시키지 않고 한 번에 연관된 것들 다 가져온다는 것인데 왜 여기선 안 되는 것인지 궁금합니다. 엔티티 @Query문하고 DTO @Query 테스트 코드를 돌렸는데 서로 영향을 미쳐 테스트가 실패라고 뜹니다. @Transactional 을 붙여 롤백이 되게끔 하여 해결은 했지만 궁금한 점이 있습니다. 스프링 데이터 JPA 테스트를 돌릴 때 @SpringBootTest 어노테이션 붙이면 자동으로 롤백이 되는 것이 아닌가요? package study.springdatajpa.repository; import org.assertj.core.api.Assertions; 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.springdatajpa.domain.Member; import study.springdatajpa.domain.Team; import study.springdatajpa.dto.MemberDto; import java.util.List; @SpringBootTest class MemberRepositoryTest { @Autowired private MemberRepository memberRepository; @Autowired private TeamRepository teamRepository; @Test @Transactional void testQuery() { Member m1 = new Member("AAA", 10); Member m2 = new Member("BBB", 20); memberRepository.save(m1); memberRepository.save(m2); List<Member> result = memberRepository.findUser("AAA", 10); Assertions.assertThat(result.get(0)).isEqualTo(m1); } @Test @Transactional void testDtoQuery() { Team team = new Team("teamA"); teamRepository.save(team); Member m1 = new Member("AAA", 10); Member m2 = new Member("BBB", 20); m1.setTeam(team); m2.setTeam(team); memberRepository.save(m1); memberRepository.save(m2); List<MemberDto> dtoList = memberRepository.findUserDto(); Assertions.assertThat(dtoList.size()).isEqualTo(2); } }

  • java
  • spring
  • spring-boot
  • jpa
피곤한개발자 댓글 1 좋아요 0 조회수 187

양방향 매핑 제거시 - fetch join/enityGraph

미해결

실전! 스프링 데이터 JPA

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 아니요 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 모르겠습니다..ㅜㅜ 안보이더라고요 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/ [질문 내용] 강사님 fetch join과 entityGraph에 대해서 공부를 해서, 연관된 객체에 대해서 가져올때, fetch join을 통해서 한방에 가져오는 법을 배웠는데, 만약 양방향 매핑을 풀고, 단방향 매핑으로 코드를 작성하려고 하는데, @Data @NoArgsConstructor @Entity(name ="team") public class TeamJpaEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name ="team_id") private Long id; private String name; @OneToMany(mappedBy = "myTeamId") private List<MemberJpaEntity> memberJpaEntityList = new ArrayList<>(); } ---------- @Data @NoArgsConstructor @Entity(name = "user") public class MemberJpaEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name ="user_id") private Long id; private String name; @Column(name = "team_id") private Long myTeamId; } 일때, 양방향 매핑을 끊어서, 단반향 매핑만 되게끔 수정을 했는데, 이렇게 되면 패치조인을 못 하지않나여? 궁금해서 질문을 올립니다...ㅜ 순환참조를 삭제하려고 없애고, TeamJpaRepository.findById(teamId)로 팀이 필요할때 조회할 수 있게 만들었는데, 한방으로는 못 가져오나여?

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

Run JpashopApplication 시간 초과

해결됨

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

안녕하세요, 마지막 커리큘럼 웹계층 강의를 따라하면서 JpashopApplication.main()을 실행시켰는데 5분이 지나도 계속 실행중이고 콘솔도 어느 지점에서 멈춰서 해결방법 질문드립니다. https://drive.google.com/file/d/1vK3NAMKt6E7nTU69Rb0F6qELZEF3pCwU/view?usp=drive_link - 실행 중지시키면 아래와 같이 뜨는데 제가 빨간색 강조해놓은 부분이 원인일까요? Execution failed for task ':JpashopApplication.main()'. > Build cancelled while executing task ':JpashopApplication.main()' * 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. Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0. You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins. For more on this, please refer to https://docs.gradle.org/8.8/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation. BUILD FAILED in 5m 56s 3 actionable tasks: 2 executed, 1 up-to-date

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
sichelmond 댓글 1 좋아요 0 조회수 132

next/image에 대한 질문

해결됨

손에 익는 Next.js - 공식 문서 훑어보기

질문 1. next/image는 (Image컴포넌트) 웹사이트의 로딩 성능에 많은 영향을 미치는 이미지를 사용하는 것만으로도 큰 개선을 볼 수 있도록 해주는 컴포넌트이라서 비용이 비싸다고 하는데 그렇다면 AWS로 배포했을 때 next/image 때문에 비용이 더 올라 가나요? 질문 2. next/image가 비용이 비싸다면 어떤 경우에 사용하는지 궁금 합니다.

  • react
  • typescript
  • next.js
  • next.js13
yho79555 댓글 1 좋아요 1 조회수 299

JPQL(Querydsl) orderby 에 집계함수

미해결

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

영한님 안녕하세요 강의 잘 듣고 있는데, 서브쿼리를 사용하려다.. where, having절에만 사용가능하기에 이 문제를 어떻게 해결할까 고민하다가 질문드립니다.. <문제> 현재 엔티티는 Post(게시글) 엔티티 필드 : postId, content, createdAt , 조회수,댓글 수, 좋아요 수 Post view(게시글 조회) 엔티티 필드 : postViewId, user,post, 조회수,댓글수,좋아요수 이렇게 있습니다. ( post view 엔티티는 특정 유저그룹이 어떤 게시글을 본 히스토리를 관리하고 그 히스토리를 통해 게시글의 인기도를 측정하기 위함입니다.) 이러한 상황에서 , 게시글의 조회수, 댓글 수, 좋아요 수, 특정 유저그룹이 해당 게시글을 조회한 수, 특정 유저그룹이 해당 게시글에 댓글 단 수, 특정 유저그룹이 해당 게시글에 좋아요한 수 로 정렬하고, (where 조건 절은 다 구현됐다는 가정) groupby는 게시글의 pk 로만 하지만, 실제로 dto에 projections.bean()활용해서 매핑할 필드들은 content, createdAt 등 여러가지 컬럼이 추가로 있습니다. 이러한 경우라면, 우선 특정 유저그룹이 해당 게시글에 댓글 단 수, 특정 유저그룹이 해당 게시글에 좋아요한 수로 정렬하려면, 집계함수 sum을 활용해야하기 때문에 orderby절에 집계함수가 써야하고, 그러면 당연히 groupby를 써야하는데 이 때, post의 모든 필드들로 groupby 하는 것보다 pk로만 group by하는게 의미 있다고 생각해서 select 절에는 select postId 만 올 수 있을텐데 그렇다면 이 postId의 리스트를 받아서 다시 이 postId로 다시 post entity를 조회해서 나머지 content, createdAt 값을 받는것이 최선일까요?(이 방법도 그런데 정렬이 유지되지않아서 결국 다시 집계함수로 정렬해야만할까요?) 이렇게 하면 두 번 쿼리를 날리기 때문에 별로 좋지 않은 방법이지 않을까라는 생각이 들지만 jpa는 from 절 서브쿼리를 지원하지않고, 다른 방법이 떠오르지 않아 여쭤봅니다. 조금 중구난방으로 질문한 감이 없지 않아 있지만.. 영한님 답변 부탁드립니다..ㅠㅠ

  • java
  • jpa
jayjoy05 댓글 1 좋아요 0 조회수 147

19강 질문

미해결

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

1. 유저 컨트롤러에서 jdbc를 설정해준적이 없다고 하셨는데 여기서 jdbc클래스설정 이라는게 무슨말인가요? jdbc에 대한 생성자를 말하는건가오? 생성자를 설정안해 줘서 탬플릿을 설정안해준거라면 userservice나 userRepositry 모두 다 템플릿에 대해 설정 안해줬는데 저 둘은 스프링빈도 아닌데 어떻게 jdbc템플릿 가져온건가요

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
우잉 댓글 1 좋아요 1 조회수 139

getter메소드에 락관리

해결됨

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

3:05에서 getBalance()에서 계속 동시성 관리를 하는 이유가 메모리가시화 문제 때문인가요? 만약 그런거라면 앞으로 멀티스레드환경에 노출된 인스턴스변수들은 단순 반환만하는 getter메소드에서도 무조건 volitile이나 락관리를 해야되는게 맞을까요?

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
인프런 댓글 1 좋아요 2 조회수 364

값타입과 불변객체

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 임베디드 타입과 그 후 강의 값 타입과 불변 객체를 들으면서 궁금증이 생겨 게시판에 올립니다. 임베디드 타입에서 엔티티를 가질 수도 있다고 되어있는데 임베디드 타입의 역할은 단순한 값을 나타내기 위한 용도로 불변 객체로 설계되어야한다고 배웠습니다(다음 강의). 근데 만약 임베디드 타입안에 엔티티를 넣으면 불변 객체의 특성이 깨지는거 아닌가요...? 만약 엔티티를 넣으려면 엔티티 또한 수정자를 제거해서 불변 객체로 만들어야할거 같은데 이렇게 설계를 하는 이유를 정확히 감이 잡히지 않습니다(임베디드 타입안에 엔티티를 넣으면 좋은 이점 등을 모르겠습니다). 또한 임베디드 타입 안에 엔티티를 넣는 예제를 따로 생각해도 떠오르지 않네요.. 실무에서 이런 경우가 많이 있나요??

  • java
  • jpa
장재현 댓글 2 좋아요 0 조회수 170

5:42 임포트 단축키

미해결

Next + React Query로 SNS 서비스 만들기

뭔가요?

  • react
  • next.js
  • react-query
  • next-auth
  • msw
Maeil 댓글 1 좋아요 0 조회수 169

연관관계가 있는 엔티티 save 시 영속성 관련 질문입니다.

미해결

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

save를 통해 A라는 엔티티를 하나 저장하려고 합니다. 그 엔티티는 ManyToOne으로 B라는 엔티티와 연관관계를 맺고 있습니다. A를 save할 때, B는 영속성 컨텍스트에 있어야 하는 상태인가요?

  • java
  • jpa
hello_hola 댓글 1 좋아요 0 조회수 146

인기 태그

인프런 TOP Writers

주간 인기글