inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

트랜잭션 적용 확인

미해결

스프링 DB 2편 - 데이터 접근 활용 기술

[질문 내용] TxBasicTest 클래스 안에 BasicService가 있는데 왜 Autowired로 의존성주입이 필요한지 헷갈리고 궁금합니다ㅠㅠ

  • spring
  • mvc
  • jpa
  • querydsl
  • spring-data-mybatis
  • spring-jpa
해톨 댓글 2 좋아요 0 조회수 337

User와 loanhistory 관계

미해결

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

User가 UserLoanHistory를 가지게 됨으로써 대출하는 로직이 간단해지지만 UserLoanHistory관련 CRUD를 전부 User에서 비즈니스 로직을 처리해야하는 건가요? User가 처리하는 로직이 너무 많아지는 것 같아 이게 객체지향적인 게 맞나 고민이 되네요 현재 경우는 C U 밖에 없지만 만약 예를 들어서 작가와 책 엔티티가 있을 때 연관관계의 주인은 책에 있지만 작가가 보유한 책을 조회하는 로직을 더 간편하게 처리하기 위해 작가는 책을 리스트로 가지면서 생명주기를 관리하면, 책을 수정하거나 삭제할 때도 무조건 작가의 도메인에서 로직을 처리하게 되는 건가요? 단일책임원칙을 위배하는 것이 아닌가 고민이 되어 질문드립니다!

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
gang01 댓글 1 좋아요 1 조회수 303

영상이 한참전에 만든 영상같네요.

미해결

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

개인적으론 아쉽네요. JDK, JPA, H2 버전을 보니 최소 3년 이상 된듯.. javax가 jakarta로 넘어간게 2021년도 였나 그런데.. 1.8버전이면 한참된듯.. 일단 수업자료 받은걸로 참고하면서 진행하겠습니다.

  • java
  • jpa
Minkoo Lee 댓글 2 좋아요 1 조회수 1833

김영한강사님 스프링 강의 로드맵 질문드려요.

미해결

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

안녕하세요. 저는 얼마전에 미국에서 컴퓨터 과학을 전공한 사람입니다. 자바에 대한 기본적인 이용은 할줄 아는 상태이구요. 앞으로 한 2달뒤에 취업을 해야하는데요. 자바 백엔드 신입으로 취직하기 위해 들어야 하는 최소 정도를 알고 싶어서요. 김영한 강사님이 보시기에 자바 백엔드 신입으로 일하는데 최소한 역량을 갖추려면 어떤 강의들을 들어야 하죠? 최소한이요. 항상 존경합니다. 김영한 강사님.

  • java
  • spring
  • mvc
  • spring-boot
  • 김영한
개발자 댓글 2 좋아요 1 조회수 588

jsonignore와 지연로딩?

해결됨

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

[섹션3 - 간단한 주문조회 V1 엔티티를 직접 노출] 강의에서 [6:09] 처음에 api를 호출했을때는 양방향 연관관계 때문에 무한루프가 발생하였는데요, 이때는 지연로딩에 의한 이슈가 없었는데 [11:07] JsonIgnore를 추가하여 순환 참조가 되는 상황을 제거했을때는 왜 지연로딩에 의한 이슈가 생기는 건가요?? 잘 동작하던 프록시객체가 JsonIgnore가 생겼다고 에러가 나는 상황이 잘 이해가 안되어 질문을 올립니다

  • java
  • spring
  • spring-boot
  • jpa
하춘화마타타 댓글 2 좋아요 3 조회수 559

예외처리시 e.printstacktrace()

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 여기에 질문 내용을 남겨주세요. 현재 웹백엔드 개발자로 재직중입니다. 최근 security prism 보안취약점 점검으로 인해 catch 부분에서 printstacktrace 를 사용하면 로그에 어디서 에러가 발생했는지 상세내역이 누적되고 이게 해커에게 노출되면 보안상 좋지않다고 해서 printstacktrace 부분을 다 제거하고 있습니다.. 근데 이렇게 다 제거하다보니 고객사에서 오류가 발생했을때 에러를 잡기가 힘들어졌습니다. 이럴땐 어떤 방법을 사용하면 에러를 찾기 쉬울까요..?

  • java
  • 객체지향
backendman 댓글 1 좋아요 0 조회수 683

abstract클래스의 인스턴스 생성

미해결

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

[질문 내용] 안녕하세요! 궁금한게 있어서 질문을 남깁니다. 자식클래스로부터 인스턴스가 생성되면 부모클래스의 인스턴스도 함께 생성되는 것으로 공부하였습니다. 추상 클래스는 실체인 인스턴스가 존재하지 않는다고 하였는데, 추상 클래스를 상속 받은 자식 클래스로부터 인스턴스를 생성하면 왜 추상클래스 인스턴스도 함께 생성되는 것인가요?

  • java
  • 객체지향
더블지 댓글 3 좋아요 1 조회수 479

test 코드에 static을 사용하는 이유와 new 생성자가 나오는 이유

미해결

스프링 DB 2편 - 데이터 접근 활용 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 너무 늦게 눈치챈 일이긴 합니다만, 테스트 코드를 짤 때, 강의 전반적으로 static 클래스를 사용하는 것을 발견했습니다. 평소 Config를 구성할 땐 static을 사용하지 않았었는데 말이죠. 몇 가지 실험을 통해 발견한 것은 @Slf4j 애너테이션이 non-static nested classes엔 지원하지 않는다 였습니다. 그렇다면 RollbackTestConfig 클래스에선 스태틱 클래스를 new 키워드로 생성하는 부분은 왜 그런 것인지 @TestConfigurationstatic class RollbackTestConfig { @Bean RollbackService rollbackService() { return new RollbackService(); } } , @Slf4j 이외에 static을 쓰는 이유가 무엇인지 궁금합니다.

  • spring
  • mvc
  • jpa
  • querydsl
  • spring-data-mybatis
  • spring-jpa
노동준 댓글 1 좋아요 0 조회수 298

테스트가 실패해요

미해결

재고시스템으로 알아보는 동시성이슈 해결방법

하다가 안돼서 깃허브 소스 복붙하고 돌려도 테스트가 실패해요.

  • java
  • spring
  • 동시성
dev 댓글 2 좋아요 0 조회수 454

6-1 질문

해결됨

실리콘밸리 엔지니어가 가르치는 파이썬 장고 웹프로그래밍

runserver을 하기 위해서 manage.py 를 사용하는데 만약에 mysite를 이용하기 위해서는 mysite에 있는 manage.py 를 이용해야하고 dealershop을 이용하기 위해서는 거기있는걸 이용해야하는건가요?? 처음에 mysite의 manage.py 를 이용해서 하다가 inventory로 안넘어가길래 무슨 문제가 있나 했어요ㅠㅠ

  • python
  • django
  • bootstrap
  • rest-api
  • drf
최진욱 댓글 1 좋아요 1 조회수 233

내부 호출에 대한 재질문

해결됨

스프링 DB 2편 - 데이터 접근 활용 기술

제가 좀 헷갈려서 다시 질문을 좀 드립니다. @Transactional이 있으면 프록시 생성이 된다 그런데 내부 호출을 하면 대상 객체(this)의 메소드를 호출하니까 트랜잭션이 발생하지 않는다 그래서 문제이다. 이를 해결하기 위한 방법 중에서 제일 권장하는 것이 클래스를 분리하는 것이다 라고 이해를 했습니다. 그런데 실무에서는 @Transactional (<= 클래스 전체에 트랜잭션을 걸었다는 표현입니다 어떻게 했는지는 잘 모르겠지만...클래스에 걸린 것은 확실합니다) class ServiceImpl implements Servcie { public void mainMethod() { // 메인 메서드 deleteMethod(); // 내부 메서드 호출 insertMethod(); // 내부 메서드 호출 } public void deleteMethod() {} // 내부 메서드 public void insertMethod() {} // 내부 메서드 } 보통 위와 같이 코딩을 자주 하는데 이때는 클래스에 @Transactioanl 어노테이션이 있어 전체 메서드에 @Transactional 이 적용된다는 것은 이해를 합니다. "그런데 mainMethod()에서 deleteMethod()를 호출하면 내부 호출이라 대상 객체의 즉, ServiceImpl 클래스에서 deleteMethod()를 호출하므로 트랜잭션이 적용되지 않는다" 가 맞지 않나요? 아니면 굳이 클래스를 분리하지 않고 클래스 단위에 @Transactional 애노테이션을 적용시키면 내부 호출에 문제가 없다는 뜻인지? 글로 질문을 하기가 어렵습니다. 답변을 글로써 하시기는 더욱 더 어려우실 것 같은데 너무 궁금해서 다시 질문을 드리니 양해 바랍니다.

  • spring
  • mvc
  • jpa
  • querydsl
  • spring-data-mybatis
  • spring-jpa
gaabi1204 댓글 1 좋아요 1 조회수 383

한글 깨짐 현상

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 메인클래스 실행 시 사진과 같이 한글이 깨져서 나옵니다. 구글링 해서 나온 방법대로 해봐도 안돼서 질문 드립니다. 수정할 때마다 인텔리제이 재접속도 해봤습니다. 혹시 몰라 수업자료 받은 파일도 실행해봤는데 똑같이 깨져서 나왔습니다.

  • java
  • 객체지향
댓글 4 좋아요 0 조회수 495

7:58 예제 코드 찾는 법

미해결

스프링 웹 MVC

안녕하세요 기선님! 기선님의 스프링 강좌 재탕하고 있습니다. 7:58 부분에 스프링의 테스트 코드 예제는 보통 어떻게 검색하여 찾으시는건가요? 그냥 깃허브에서 검색하셨는지 꿀팁이 있다면 알려주시면 감사하겠습니다.!

  • java
  • spring
  • mvc
Aurora 댓글 2 좋아요 0 조회수 271

강의자료 다운로드 문의드립니다.

해결됨

[리뉴얼] 처음하는 파이썬 백엔드와 웹기술 입문 (파이썬 중급, flask[플라스크] 로 이해하는 백엔드 및 웹기술 기본) [풀스택 Part1-1]

구름 모양 버튼으로 강의자료를 받으려했는데, 실패가 계속 뜨더라구요 ! 보안 알림도 같이 뜨는데 확인 부탁드립니다 !

  • python
  • rest-api
  • flask
쿼발자 댓글 1 좋아요 1 조회수 298

코드에 대한 피드백 부탁드립니다.

미해결

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. package array; import java.util.Scanner; public class ArrayEx10_1 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String[] productName = new String[10]; int[] productPrice = new int[10]; int productCount = 0; while (true) { System.out.println("1. 상품 등록 | 2. 상품 삭제 | 3. 상품 목록 | 4. 종료\n메뉴를 선택하세요." ); String options = scanner.nextLine(); if (options.equals("1") && productCount < 10) { System.out.print("상품 이름을 입력하세요: "); productName[productCount] =scanner.nextLine(); System.out.print("상품 가격을 입력하세요: "); productPrice[productCount] =scanner.nextInt(); productCount++; scanner.nextLine(); } else if (options.equals("1") && productCount == 10) { System.out.println("더 이상 상품을 동록할 수 없습니다."); } else if (options.equals("2") && productCount > 0) { for (int i = 0; i < productCount; i++) { System.out.println((i+1) + ". "+ productName[i] + ": " + productPrice[i] + "원"); } System.out.println("삭제할 품목의 번호를 입력해주세요."); int delNum = scanner.nextInt(); if ((delNum-1) < productCount) { productName[delNum-1] = null; productPrice[delNum-1] = 0; productCount--; System.out.println(delNum + "번 품목이 삭제되었습니다."); scanner.nextLine(); } else { System.out.println("올바른 품목의 번호를 입력해주세요."); scanner.nextLine(); } } else if (options.equals("2") && productCount == 0) { System.out.println("삭제할 품목이 없습니다."); } else if (options.equals("3") && productCount > 0) { for (int i = 0; i < productCount; i++) { System.out.println((i+1) + ". "+ productName[i] + ": " + productPrice[i] + "원"); } } else if (options.equals("3") && productCount == 0) { System.out.println("등록된 상풍이 없습니다."); } else if (options.equals("4")) { System.out.println("프로그램을 종료합니다."); break; } else { System.out.println("올바른 메뉴를 선택해주세요."); } } } } 실습을 하다가 삭제기능도 있었으면 해서 만들어 봤습니다.우선, 강의를 봤을 때와 조금 다르게 만든거 같구요. 메뉴를 선택할 때 글자를 넣으면 오류가 떠서 스트링형으로 바꿨습니다. 위 코드에서 가독성 측면이나 중복 등 피드백 가능하실까요...?또 추가로 강사님이었으면 어떻게 하셨을 것 같나요??

  • java
  • 객체지향
김대경 댓글 2 좋아요 0 조회수 310

학습 내용과 번외로 의존관계 주입 시 궁금증

해결됨

스프링 DB 2편 - 데이터 접근 활용 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 1. 의존관계 주입 방법 @Configuration public class HelloConfig{ @Autowired private DataSource dataSource; @Bean public PlatformTransactionManager txManager(){ return new DataSourceTransactionManager(dataSource); } } 2. 의존관계 주입 방법 @Configuration public class HelloConfig{ @Bean public PlatformTransactionManager txManager(DataSource dataSource){ return new DataSourceTransactionManager(dataSource); } } 안녕하세요 의존관계 주입 연습 도중 궁금한 점이 생겨 올렸습니다 ! 보통 1번방법으로 스프링 부트에서 자동으로 등록해준 히카리 커넥션 풀 DataSource 구현체를 dataSource 변수에 의존관계 주입(@Autowired) 받았었습니다 그런데 2번 방법으로 시도해보니까 자동으로 dataSource 변수에 의존관계 주입이 되어서 DataSourceTransactionManager 객체가 정상적으로 빈으로 등록되는 것을 확인할 수 있었습니다. @Autowired가 있지도 않았는데 이것이 가능한 원리가 무엇인지 궁금합니다 !

  • spring
  • mvc
  • jpa
  • querydsl
  • spring-data-mybatis
  • spring-jpa
경민 댓글 1 좋아요 0 조회수 346

authentication관련 질문...

미해결

스프링과 JPA 기반 웹 애플리케이션 개발

public void login(Account account) { System.out.println(account); UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(account.getNickname(), account.getPassword(), Collections.singleton(new SimpleGrantedAuthority("ROLE_USER"))); SecurityContextHolder.getContext().setAuthentication(token); } 우선 AccountService에 있는 login입니다. 제가 테스트를 하던 도중 나머지는 다 되는데 authetication부분에서 문제가 있는것을 발견했습니다. 단위테스트로 하다보니 권한이 부여가 되지 않아서 회원가입을 해도 다시 원상태로 복구되더군요 springsecurity6로 바뀌면서 새로 바뀐부분이 있길래 구글링해서 바꿀만큼 바꿔보고 찾을만큼 찾아봤다 생각했는데도 자꾸 권한부여 부분에서 문제가 생깁니다(위의 login함수) 이럴경우 어떻게 바꾸어야 할까요...? 저 위에 SecurityContextHolder.getContext().setAuthentication(token); 라는 코드전에 토큰을 출력해 보니 UsernamePasswordAuthenticationToken [Principal=jungsik, Credentials=[PROTECTED], Authenticated=true, Details=null, Granted Authorities=[ROLE_USER]] 이렇듯 AUtheticated는 true로 반환되는데 redirect될때는 권한이 사라지는것 같습니다

  • java
  • spring
  • spring-boot
  • jpa
  • thymeleaf
최정식 댓글 2 좋아요 0 조회수 514

안녕하십니까! 질문이 있습니다.

미해결

[개정판] 딥러닝 컴퓨터 비전 완벽 가이드

32 32 에서는 보다 작은 이미지들이 검출되고 4 * 4에는 보다 큰 이미지들이 검출된다고 말씀하셨는데. FC layer은 사이즈 마다 실행되는건가요? 예를들어 32 32에서는 사람이 검색되고 4 4에서는 자동차가 검출되었다고 했을 때 32 32에서도 FClayer가 수행이되고 4 4에서도 FClayer가 수행되서 결과로는 자동차 & 사람 모두가 검출되는 원리 인건가요?

  • python
  • 머신러닝
  • 딥러닝
  • keras
  • tensorflow
  • 컴퓨터-비전
Alex 댓글 1 좋아요 0 조회수 206

mybatis적용2 오류

해결됨

스프링 DB 2편 - 데이터 접근 활용 기술

[질문 내용] https://drive.google.com/file/d/14dXFBLKqzY9hcZZAXjr0e1CCKV9u_U22/view?usp=sharing 제자리에 다 맞게 넣은 것 같은데 Could not detect default configuration classes for test class 오류가 뜹니다 ... 이렇게 애노테이션을 추가해도 오류가 뜹니다 @ContextConfiguration(classes = ItemServiceApplication.class

  • spring
  • mvc
  • jpa
  • querydsl
  • spring-data-mybatis
  • spring-jpa
해톨 댓글 1 좋아요 0 조회수 585

generated생성경로

미해결

스프링 DB 2편 - 데이터 접근 활용 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요 compilejava를 하면 강의와는 달리 프로젝트 바로밑에 build폴더가 생기고 그안에 generated/source/annotationProcessor/main....Qitem이 생깁니다. 그런데 아래를 실행하면 build폴더부터해서 아래폴더들이 다 지워집니다. 경로가 강의와는 달리 생성되는것과, 밑의 delete file을 실행했을 때, 어떻게 생성된 것들이 지워지는지 궁금합니다.(경로가 다른데) clean { delete file('src/main/generated') }

  • spring
  • mvc
  • jpa
  • querydsl
  • spring-data-mybatis
  • spring-jpa
왕이될상인가 댓글 1 좋아요 0 조회수 350

인기 태그

인프런 TOP Writers

주간 인기글