inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

gradle 관리 방법에대한 의견이 궁금해 문의남깁니다!

미해결

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

안녕하세요! 코프링 대신에 자프링부터 들렀습니다 ㅎㅎ 기존에 maven만 사용해봐서 신규 플젝도 maven으로 생성했는데.. gradle을 이참에 배워보려고 합니다!! gradle이 groovy랑 kotlin 2가지 언어로 나뉜 것 같은데 영상에서 그루비를 선택하신 이유가 있을까요? 혹시 기존 프로젝트도 그루비를 사용하시는거라면 이유가 궁금합니다! 많은 부분을 사용하는건 아니더라도 추후 코프링을 사용한다면 그레이들또한 코틀린으로 관리하는게 더 편하지 않을까 싶어서요!

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
김영욱 댓글 1 좋아요 1 조회수 141

Beautify에 관해서

미해결

퍼블리싱 핵심이론 PDF 교재 및 예제파일(HTML+CSS+FLEX+JQUERY)

유튜브 보면서 비주얼 스튜디오 코드 환경설정 중인데 beautify가 '이 확장은 더 이상 유지 관리되지 않으므로 더 이상 사용되지 않습니다.' 라는 알림문 뜹니다 그래도 다운 받으면 확장 앱 부분에 노란색 경고 아이콘이 계속 뜨는데 이대로 두는게 맞는건가요?

  • HTML/CSS
  • jquery
  • flex
강현경 댓글 1 좋아요 0 조회수 136

질문) 실무 재고처리 에서 비관적 vs 낙관적 lock

미해결

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

안녕하세요 강사님 재밌게 잘 보고 있습니다. 실무에서 주문 수 증가와 같은 단순 연산의 경우는 낙관적락 이 일반적인데, 인벤토리 ( 재고처리 ) 와 같은 도메인에서도 낙관적 락이 일반적인지가 궁금하여 문의드립니다. 재고는 동시에 여러 사용자가 접근하여 변경할 가능성이 있기 때문에, 충돌이 더 빈번하게 발생할 수 있을것 같아 왠지 강의내용으로만 보아서는 비관적 락을 사용할것 같다는 생각이 들긴하지만 ... 통상적으로 사용하는 락이 궁금하여 질문드립니다 감사합니다

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
제트브레인 댓글 1 좋아요 0 조회수 303

Shuttle에 많이 태우기 위해 코드를 수정한 후 생긴 사이드 이팩트

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] ``` package generic.test.ex3; import generic.test.ex3.unit.BioUnit; public class Shuttle<T extends BioUnit> { private BioUnit[] units; private int unitCount; public Shuttle() { units = new BioUnit[10]; } public void in(T unit) { units[unitCount++] = unit; } public T out() { return (T) units[0]; } public void showInfo() { for (int i = 0; i < unitCount; i++) { System.out.println("이름: " + units[i].getName() + " HP: " + units[i].getHp()); } } } package generic.test.ex3; import generic.test.ex3.unit.Marine; import generic.test.ex3.unit.Zealot; import generic.test.ex3.unit.Zergling; public class ShuttleTest { public static void main(String[] args) { Shuttle<Marine> shuttle1 = new Shuttle<>(); shuttle1.in(new Marine("마린", 40)); shuttle1.in(new Marine("마린2", 45)); shuttle1.showInfo(); Shuttle<Zergling> shuttle2 = new Shuttle<>(); shuttle2.in(new Zergling("저글링", 35)); shuttle2.in(new Zergling("저글링2", 35)); shuttle2.in(new Zergling("저글링3", 35)); shuttle2.in(new Zergling("저글링4", 35)); shuttle2.showInfo(); Shuttle<Zealot> shuttle3 = new Shuttle<>(); shuttle3.in(new Zealot("질럿", 100)); shuttle3.in(new Zealot("질럿2", 100)); shuttle3.in(new Zealot("질럿3", 100)); shuttle3.in(new Zealot("질럿4", 100)); shuttle3.showInfo(); UnitPrinter.printV1(shuttle1); UnitPrinter.printV2(shuttle1); } } Shuttle을 생성하고 내부에 많이 태우고 싶어서 코드를 조금 수정해 보았습니다 ! 그런데 코드를 이렇게 수정하니 문제풀이 시간 때 package generic.test.ex3; import generic.test.ex3.unit.BioUnit; public class UnitPrinter { public static <T extends BioUnit> void printV1(Shuttle<T> shuttle) { T out = shuttle.out(); System.out.println("이름: " + out.getName() + "HP: " + out.getHp()); } public static void printV2(Shuttle<? extends BioUnit> shuttle) { BioUnit out = shuttle.out(); System.out.println("이름: " + out.getName() + "HP: " + out.getHp()); } } 이 코드를 출력하기 위해서 Shuttle 클래스에 out메서드에 unit 1명만 출력하기 위해 (T) units[0]을 반환하였는데요, 이렇게 한 덕분에 문제 요구사항 대로 잘 나왔지만, Shuttle 클래스의 out 메서드에 이러한 린트가 발생합니다. Unchecked cast: 'generic. test. ex3.unit. BioUnit' to 'T' 왜 이러한 문제가 발생하는지 파악을 하지 못했고, 혹시 코드를 이렇게 작성하게 된다면 어떤 문제점이 발생하는지, 어떻게 리팩터링 하면 좋을지 조언을 구하고 싶습니다 !

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
강리눅스 댓글 1 좋아요 0 조회수 160

마지막에 하신 테스트 자체는 실패하는 게 맞는거죠??

미해결

실습으로 배우는 선착순 이벤트 시스템

Producer 에는 제대로 값이 찍히는데 하지만 테스트 자체는 실패했는데요 아마 mysql과 연결이 되지 않아서 생긴 오류라고 봐도 될까요?? 아직 뒷 강의는 진행하지 않았습니다!!

  • java
  • docker
  • spring-boot
  • kafka
  • redis
0515 댓글 2 좋아요 0 조회수 303

와일드 카드는 이미 만들어진 제네릭 타입을 활용할 때 사용한다 ?

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요 ! 강의를 통해 제네릭에 대해 알 수 있어서 감명깊었습니다. 회사 코드를 보면서 막혔었는데 점차 이해가 되고 있어요 ! 감사 인사 먼저 전합니다 ㅎㅎ Generic2 정리 부분 11:06초에 질문 있습니다 ! 와일드카드는 제네릭 타입이나, 제네릭 메서드를 선언하는 것이 아니다. 와일드 카드는 이미 만들어진 제네릭 타입을 활용할 때 사용한다. 이 부분이 이해가 잘 되지 않습니다 ...! public static void printV2(Shuttle<? extends BioUnit> shuttle) { BioUnit out = shuttle.out(); System.out.println("이름: " + out.getName() + "HP: " + out.getHp()); } package generic.test.ex3; import generic.test.ex3.unit.BioUnit; public class UnitPrinter { public static <T extends BioUnit> void printV1(Shuttle<T> shuttle) { T out = shuttle.out(); System.out.println("이름: " + out.getName() + "HP: " + out.getHp()); } public static void printV2(Shuttle<? extends BioUnit> shuttle) { BioUnit out = shuttle.out(); System.out.println("이름: " + out.getName() + "HP: " + out.getHp()); } } 강의에서 사용한 와일드카드 메서드 예시입니다 ! printV2가 와일드카드 메서드 인데요, 이 메서드를 구현한 UnitPrinter 클래스는 제네릭 타입을 선언(?)하지 않았는데도 불구하고 사용하고 있는데, 어떤 인스턴스를 기준으로 제네릭이 "이미 만들어진 제네릭 타입"으로 간주하면 될까요? 제가 아직 깊이가 부족하여 이해를 잘 못한 것일 수 있지만, 만약 Shuttle 클래스에서 제네릭 타입을 선언하지 않고, <?>만을 사용하여 메서드를 만든다면 잘못된 사용법인지궁금합니다 ! 와일드카드는 제네릭 타입이나, 제네릭 메서드를 선언하는 것이 아니라 이미 만들어진 제네릭 타입을 활용할 때 사용한다의 예시가 더 있다면 조언 부탁드리겠습니다 ! 감사합니다 ☺

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
강리눅스 댓글 1 좋아요 0 조회수 164

2025년 실기준비할때도 참고하면 좋을 강의일까요?!

미해결

[2026년 출제기준] 웹디자인개발기능사 실기시험 완벽 가이드

아직 결제만하고 강의시청은 안한상태인데 2025년 웹디자인개발기능사로 바뀌는데 내용도 바뀐다고 알고있는데 이 강의로2025년도꺼 준비해도 무리는 없을까요!? 혹시 2025년도 버전 강의가 새로 나오면 그걸로 결제할까해서요 여쭤볼곳이 없어서 여기에 적습니다. 답변주시면 감사하겠습니다.!

  • HTML/CSS
  • jquery
  • 웹-디자인
이희정 댓글 1 좋아요 2 조회수 276

SessionManagerV6 에서 synchronized 부분이 이해가 잘 안갑니다.

해결됨

김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] package network.tcp.v6; import network.tcp.v5.SessionV5; import java.util.ArrayList; import java.util.List; public class SessionManagerV6 { private List<SessionV6> sessions = new ArrayList<>(); public synchronized void add(SessionV6 session) { sessions.add(session); } public synchronized void remove(SessionV6 session) { sessions.remove(session); } public synchronized void closeAll() { for (SessionV6 session : sessions) { session.close(); } sessions.clear(); } } 여기서 closeAll() 에서 스레드가 작업중일때 다른스레드가 remove() 를 호출할 수 없다는 부분이 잘 이해가 안 갑니다. synchronized 는 메서드 단위로 적용이 된다고 알고 있어서 closeAll() 에 스레드가 작업중이더라도 remove() 같은 다른 메서드랑은 관련 없다고 생각했습니다. 뭔가 흐름을 잘못 이해하고 있는 걸까요?

  • java
  • 네트워크
  • 객체지향
물병97 댓글 1 좋아요 0 조회수 305

강의 자료 요청합니다~

미해결

실전! 웹사이트제작! Step by Step! ('크루알라모드'_반응형웹 제작)

강의를 듣기 시작했는데 강의자료는 어디에서 받는지 몰라 질문드려요~ kjj5421@naver.com 으로 자료 요헝 드려도 될까요?

  • HTML/CSS
  • jquery
  • 인터랙티브-웹
  • 반응형-웹
roaddion 댓글 2 좋아요 0 조회수 155

h2데이터베이스에 변경사항이 반영이 안됩니다.

미해결

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

쿼리문이 다음과 같이 날라가는데도 h2데이터 베이스에 변경사항이 반영되지 않습니다 ㅠㅠ 어떤 문제가 있는 걸까요

  • java
  • jpa
주현 댓글 2 좋아요 0 조회수 208

다운로드소스코드 실행 후 창이 다릅니다.

미해결

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

src 폴더 내 array 등 많은 것으로 영상에서는 보여지는데 저는 Main 파일 밖에 없습니다. 다운로드 파일이 잘못된걸까요? ㅠㅠ [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요.

  • java
  • 객체지향
상호 댓글 2 좋아요 0 조회수 183

BlockingQueue에 Task 가 없어요

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] ExecutorService.submit 시점에 디버깅을 걸어서 확인해보니 BlockingQueue 필드인 workQueue 내부에 task가 들어가지 않고 workers라는 HashSet에 들어가지는 것 같습니다 혹시 제가 어디서 놓친건지 모르겠어서 여쭤봅니다 이거 때문에 계속 헷갈려요..ㅜ

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
JHS 댓글 2 좋아요 0 조회수 401

인텔리제이 설치한 후 이상합니다.

미해결

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

강사님께서 말씀하신데로 설치하고 뉴 프로젝트를 눌렀는데, 강의에 나오는 화면과 다릅니다... 너무 어이없지만 여기서부터 막혀서 저도 당황스럽습니다... 빨리 공부하고 싶은데... 이게 대체 무슨 상황인지... 빠른 답변 부탁드립니다.

  • java
  • 객체지향
hyosu92 댓글 2 좋아요 0 조회수 114

closed 사용하는 이유

미해결

김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션

NormalCloseServer 할때 close()가 여러번 호출돼도 예방하는 코드가 있다고 했습니다. 그러면 V6SessionV6에서 closeAll() 하기전에 closed를 확인 안해도 되지 않나요?

  • java
  • 네트워크
  • 객체지향
tjrans303 댓글 2 좋아요 0 조회수 213

강의 자료 그림

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요 ~! 강의 자료에서 처럼 이런 자료들을 draw.io에서 만든다는 정보는 찾았는데요 ! 그 내부에서 어떤 템플릿을 사용하시는지 궁금합니다..! 몇 시간 동안 여러가지 클릭 해봤는데 못 찾아서요 ㅠㅠ 크래파스로 그은듯한 네모와 점선으로 연결된 화살표, dot 네모박스가 궁금합니다 !

  • java
  • 객체지향
강리눅스 댓글 1 좋아요 0 조회수 146

h2 데이터 베이스 버전 오류

미해결

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

지금 현재 2가지 문제가 있는데 해결할 수있을까요? 해결방법을 알고 싶습니다 ㅠㅠ

  • java
  • jpa
주현 댓글 2 좋아요 0 조회수 289

delay 적용 안됨

미해결

HTML+CSS+JS 포트폴리오 실전 퍼블리싱(시즌1)

딜레이가 적용이 안되는데 코드에서 어떤 부분이 잘못된 것일까요?? animation-fill-mode와 animation-delay 모두 다 주었습니다. <!DOCTYPE html> <html lang="ko"> <head> <meta charset="UTF-8"> <title></title> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css"> <style> body { display: flex; justify-content: center; align-items: center; height: 100vh; } .skill-progress { background-color: #333; width: 500px; border-radius: 10px; color : white; text-align: center; padding: 10px; } .item { margin-bottom: 35px; } .item p{ overflow: hidden; margin-bottom: 5px; } .item span:nth-child(1) { float: left; } .item span:nth-child(2) { float: right; } .progress { border : 1px solid aquamarine; padding: 5px; border-radius: 3px; } .progress-level { background: linear-gradient(to right, #fc6c85 0%, gold 100%); height: 7px; animation: ani 1s; animation-fill-mode: both; } @keyframes ani { 0% { width: 0; } } .skill-progress .item:nth-of-type(1) .progress-level { animation-delay: 0s; } .skill-progress .item:nth-of-type(2) .progress-level { animation-delay: 0.2s; } .skill-progress .item:nth-of-type(3) .progress-level { animation-delay: 0.4s; } .skill-progress .item:nth-of-type(4) .progress-level { animation-delay: 0.6s; } .skill-progress .item:nth-of-type(5) .progress-level { animation-delay: 0.8s; } </style> </head> <body> <div class="skill-progress"> <h1>SOFTWARE SKILLS</h1> <div class="item"> <p> <span>HTML5</span><span>90%</span> </p> <div class="progress"> <div class="progress-level" style="width: 90%"></div> </div> <p> <span>CSS3</span><span>80%</span> </p> <div class="progress"> <div class="progress-level" style="width: 80%"></div> </div> <p> <span>jQuery</span><span>65%</span> </p> <div class="progress"> <div class="progress-level" style="width: 65%"></div> </div> <p> <span>Photoshop</span><span>70</span> </p> <div class="progress"> <div class="progress-level" style="width: 70%"></div> </div> <p> <span>illustrator</span><span>82%</span> </p> <div class="progress"> <div class="progress-level" style="width: 82%"></div> </div> </div> </div> <script src="script\jquery-1.12.4.js"></script> <script src="script\custom.js"></script> </body> </html>

  • HTML/CSS
  • jquery
황서영 댓글 1 좋아요 1 조회수 146

구조체 강의 4:31 질문있습니다

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

myCar.model[i] = '\0'; 은 세줄 위의 for에 영향을 받는 것 인가요?? 바로 위 } 에서 for문이 종료됐다고 생각했는데 myCar.model[i] = '\0'; 가 [i]에는 어떤 숫자를 넣어야할지 이해가 되지 않습니다

  • python
  • java
  • c
  • 정보처리기사
kku1804 댓글 2 좋아요 1 조회수 174

LettureLockStockFacadeTest에서 오류가 발생합니다.

미해결

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

package com.example.stock.repository; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Component; import java.time.Duration; @Component public class RedisLockRepository { private RedisTemplate<String, String> redisTemplate; public RedisLockRepository(RedisTemplate<String, String> redisTemplate) { this.redisTemplate = redisTemplate; } public Boolean lock(Long key) { return redisTemplate .opsForValue() .setIfAbsent(generateKey(key), "lock", Duration.ofMillis(3_000)); } public void unlock(Long key) { redisTemplate.delete(generateKey(key)); } private String generateKey(Long key) { return key.toString(); } } package com.example.stock.facade; import com.example.stock.repository.RedisLockRepository; import com.example.stock.service.StockService; import org.springframework.stereotype.Component; @Component public class LettuceLockStockFacade { private final RedisLockRepository redisLockRepository; private final StockService stockService; public LettuceLockStockFacade(RedisLockRepository redisLockRepository, StockService stockService) { this.redisLockRepository = redisLockRepository; this.stockService = stockService; } public void decrease(Long key, Long quantity) throws InterruptedException { while(!redisLockRepository.lock(key)){ Thread.sleep(100); } try{ stockService.decrease(key, quantity); }finally { redisLockRepository.unlock(key); } } } package com.example.stock.facade; import com.example.stock.domain.Stock; import com.example.stock.repository.StockRepository; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import static org.junit.jupiter.api.Assertions.*; @SpringBootTest class LettuceLockStockFacadeTest { @Autowired private LettuceLockStockFacade lettuceLockStockFacade; @Autowired private StockRepository stockRepository; @BeforeEach public void before(){ stockRepository.saveAndFlush(new Stock(1L, 100L)); } @AfterEach public void after(){ stockRepository.deleteAll(); } @Test public void 동시에_100개의_요청() throws InterruptedException { int threadCount = 100; ExecutorService executorService = Executors.newFixedThreadPool(32); CountDownLatch latch = new CountDownLatch(threadCount); for(int i = 0; i < threadCount; i++){ executorService.submit(() -> { try{ lettuceLockStockFacade.decrease(1L, 1L); } catch (InterruptedException e) { throw new RuntimeException(e); } finally { latch.countDown(); } }); } latch.await(); Stock stock = stockRepository.findById(1L).orElseThrow(); assertEquals(0, stock.getQuantity()); } } 이렇게 코딩했고 dockre에 redis를 설치하고 window Shell에서 데이터가 남아 있을까봐 1번 key 값을 삭제해서 돌렸는데도 오류가 발생했습니다. 또한 레디스가 실행이 되지 않은 채 했을까봐 ping을 입력했는데 pong이라는 응답을 받았습니다. Hibernate: drop table if exists stock 2024-11-03T22:08:40.414+09:00 DEBUG 17108 --- [ Test worker] org.hibernate.SQL : create table stock (id bigint not null auto_increment, product_id bigint, quantity bigint, version bigint, primary key (id)) engine=InnoDB Hibernate: create table stock (id bigint not null auto_increment, product_id bigint, quantity bigint, version bigint, primary key (id)) engine=InnoDB 2024-11-03T22:08:40.439+09:00 INFO 17108 --- [ Test worker] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default' 2024-11-03T22:08:41.136+09:00 INFO 17108 --- [ Test worker] o.s.d.j.r.query.QueryEnhancerFactory : Hibernate is in classpath; If applicable, HQL parser will be used. 2024-11-03T22:08:42.092+09:00 WARN 17108 --- [ Test worker] JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning 2024-11-03T22:08:42.990+09:00 INFO 17108 --- [ Test worker] c.e.s.facade.LettuceLockStockFacadeTest : Started LettuceLockStockFacadeTest in 6.21 seconds (process running for 7.345) 2024-11-03T22:08:43.504+09:00 DEBUG 17108 --- [ Test worker] org.hibernate.SQL : insert into stock (product_id,quantity,version) values (?,?,?) Hibernate: insert into stock (product_id,quantity,version) values (?,?,?) 2024-11-03T22:08:44.203+09:00 DEBUG 17108 --- [ Test worker] org.hibernate.SQL : select s1_0.id,s1_0.product_id,s1_0.quantity,s1_0.version from stock s1_0 where s1_0.id=? Hibernate: select s1_0.id,s1_0.product_id,s1_0.quantity,s1_0.version from stock s1_0 where s1_0.id=? 2024-11-03T22:08:44.245+09:00 DEBUG 17108 --- [ Test worker] org.hibernate.SQL : select s1_0.id,s1_0.product_id,s1_0.quantity,s1_0.version from stock s1_0 Hibernate: select s1_0.id,s1_0.product_id,s1_0.quantity,s1_0.version from stock s1_0 2024-11-03T22:08:44.252+09:00 DEBUG 17108 --- [ Test worker] org.hibernate.SQL : delete from stock where id=? and version=? Hibernate: delete from stock where id=? and version=? Expected :0 Actual :100 <Click to see difference> org.opentest4j.AssertionFailedError: expected: <0> but was: <100> at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151) at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132) at org.junit.jupiter.api.AssertEquals.failNotEqual(AssertEquals.java:197) at org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:182) at org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:177) at org.junit.jupiter.api.Assertions.assertEquals(Assertions.java:639) at com.example.stock.facade.LettuceLockStockFacadeTest.동시에_100개의_요청(LettuceLockStockFacadeTest.java:55) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) Java HotSpot(TM) 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended 어디를 더 수정해야 하는지 모르겠습니다..

  • java
  • spring
  • 동시성
소리쨩 댓글 2 좋아요 1 조회수 298

stack구조관련질문

미해결

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

package collection.deque.test.stack; import java.util.ArrayDeque; import java.util.Deque; public class BrowserHistory { private Deque<String> history = new ArrayDeque<>(); private String currentPage = null; public void visitPage(String s) { if(currentPage != null){ history.push(currentPage); } currentPage = s; System.out.println("방문 : "+s); } @Override public String toString() { return "BrowserHistory{" + "stack=" + history + '}'; } public String goBack() { if(!history.isEmpty()){ currentPage = history.pop(); System.out.println("뒤로가기 : "+currentPage); return currentPage; } return null; } public void pop(){ System.out.println(history.pop()); } } 문제와풀이3 -stack시간 수업에관한 질문입니다 stack구조의 경우 마지막에 넣은 입력이 pop()을 하면 나오는데 이경우는 마지막 전에 입력한것이 나옵니다 이유가뭘까요??

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
DG Y 댓글 2 좋아요 0 조회수 80

인기 태그

인프런 TOP Writers

주간 인기글