inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

한글 깨짐 현상

미해결

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

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

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

왜 @Configuration의 WebSecurity 클래스에서 생성자 주입을 하지 않나요?

미해결

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

@Configuration @EnableWebSecurity public class WebSecurity { extends WebSecurityConfigurerAdapter { private UserService userService; private BCryptPasswordEncoder bCryptPasswordEncoder; private Environment env; public WebSecurity(Environment env, UserService userService, BCryptPasswordEncoder bCryptPasswordEncoder) { this.env = env; this.userService = userService; this.bCryptPasswordEncoder = bCryptPasswordEncoder; } 강의에서 보면 @Configuration으로 WebSecurity클래스가 설정되어있기에 userService, bCryptPasswordEncoder, environment 인스턴스가 준비되어 있다고합니다. 따라서 위의 코드와 같이 생성자주입을 하지않는데, 왜 @Configuration으로 설정되어 있으면 @Autowired로 주입을 받지 않아도 되는 걸까요?

  • spring-boot
  • jpa
  • 아키텍처
  • spring-cloud
  • kafka
  • msa
  • rabbitmq
고은우 댓글 1 좋아요 0 조회수 331

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

Hbase sink connector

미해결

[데브원영] 아파치 카프카 for beginners

안녕하세요강의 다 잘들었습니다.처음 만들어보는중인데 최종목표는 PostgreSQL과같은 rdb의 데이터를CDC로Apache atlas로 표현하기 위해 Hbase로 전달하고싶은게 목표입니다 Hbase sink connector를 검색해도 잘안나와서 가능한지와 json으로 어떻게 변환해서 넣어야하느지 궁금합니다

  • kafka
  • 데이터-엔지니어링
댓글 1 좋아요 0 조회수 330

질문드립니다

미해결

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

1분 42초에 lock을 건다고 하는데 이게 어떤 lock을 건다는 의미인지 모르겠습니다. 설명해주시기로는 범위로 락을 잡고 처음에 쿠폰 발급 여부를 가져와서 판단하는 방식입니다.라고 설명해주셨는데 여기서 lock이란게 뭐고 lock을 사용하는 이유가 뭔지 설명해주시면 감사하겠습니다. if문을 통해 확인한다는게 lock인건지 아니면 apply메서드 자체에 lock을 걸고 다른 프로세스가 접근하지 못하게한다는건지 모르겠내요 유저 아이디별로 쿠폰 발급 개수를 한개로 제한할때 Redis에 Set자료구조를 써도되고 Map을 써도될거같은데 Set을 소개해주신 이유가 있을까요?

  • java
  • docker
  • spring-boot
  • kafka
  • redis
answntjd1006 댓글 1 좋아요 0 조회수 274

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

user-service에 로그인 404뜨는데 뭐가 문제일까요?

미해결

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

깃허브 코드대로 했습니다

  • spring-boot
  • jpa
  • 아키텍처
  • spring-cloud
  • kafka
  • msa
  • rabbitmq
elixirgood 댓글 2 좋아요 0 조회수 425

IoT Event Streaming 적용에 대해서

해결됨

카프카 완벽 가이드 - ksqlDB

안녕하세요. IoT Device들의 데이터를 받아서 값들이 조건을 만족하면 이벤트를 발생시키는 개발업무에 있습니다. 그래서 streaming 분석솔루션을 찾던도중 ksqlDB관련을 접하게되었습니다. 강의를 간단하게 훑어보고 ksqlDB 솔루션을 적용해보고싶은데 궁금한점이있어서 질문 드립니다. IoT Device의 개수가 많을 경우에 각각의 Device의 걸어주어야하는 조건이 다양해질수있습니다. 만약에,A device의 조건은 해당 값이 10이 넘어가면 이벤트 발생 그리고 B device의 조건은 값이 15가 넘어가면 이벤트발생 이런식으로 구성될수있습니다. 각 Device마다 고유한 조건이 있기때문에 많은 stream이 생성될수있습니다. 또한 E Device에서 발생한 이벤트 와 J Device에서 발생한 이벤트를 조인해서 새로운 stream을 만들어주어야할때도있습니다. 디바이스가 많고 이벤트처리 흐름이 복잡해질수록 stream,table,Mview가 많이 생길수 있기때문에 성능에대한 우려가 있습니다. 물론 H/W나 traffic, SQL문의 복잡도,네트워크구성등 성능에 미치는 요인들이 많기때문에 성능이 어떻다는 확실히 답변하기 어려울것같긴합니다. 결론은 데이터스트리밍 분석을 위해 많은 stream,table,Mview 작성해도 성능 이슈가 크게 발생하는지(몇백 혹은 몇천개단위). 만약 성능이 부족하다면 kafka를 scale out,up하면 나아질수있는지도 궁금합니다. 강의를 전체적으로 훑는식으로봐서 자세히 듣지못해 틀린부분이 있을수있지만, 부족한점 참고하여 봐주시면 감사하겠습니다.

  • kafka
  • 데이터-엔지니어링
  • ksqldb
햄스터 댓글 1 좋아요 0 조회수 225

특정 dir로 위치를 잡으려면 어떻게 설정을 해야할까요

해결됨

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

config를 root dir에 위치시킨게 아니라 특정 dir에 넣고 싶은데 그럴 때는 어떻게 uri를 잡아야하나요?

  • spring-boot
  • jpa
  • 아키텍처
  • spring-cloud
  • kafka
  • msa
  • rabbitmq
정영돈 댓글 2 좋아요 0 조회수 273

데이터베이스에 쿠폰 insert 실패시

미해결

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

안녕하세요. 강의 잘 듣고있습니다 ! 카프카 컨슈머가 쿠폰레포지토리에 save하는 과정에서 모종의 이유로 실패하여 롤백 되었을 때, 레디스에서는 이미 increment가 되었는데 이걸 하나 빼줘야되는거 아닌가요? 이런 처리는 어떻게하는지 궁금합니다 ! 추가) 뒤에 얘기가 나오는군요 ㅎㅎㅎ.. FailedEvent를 저장하는 것도 실패하였다면, 배치프로그램이 제 역할을 못할 것 같은데요.. ! 그렇다면 로그를 보고 판단해야할 것 같은데 실무에서도 그렇게 진행이 될까요 ? 그리고, FailedEvent를 삽입하는 것에서도 에러가 발생할 수 있기 때문에 또 try catch로 묶어서 이것 마저 실패할 경우에도 로그를 따로 남겨야하는지 궁금합니다 !

  • java
  • docker
  • spring-boot
  • kafka
  • redis
전동혁 댓글 1 좋아요 0 조회수 309

jjwt 0.12 이상으로 하시는 분들에게..

해결됨

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

jjwt가 버전업 되면서 강사님이 업데이트 해주신 코드들도 jwt valid할 때 안되는 경우가 발생하더라고요... 그래서 찾아본결과 다음과 같이 작성하시면 원활하게 동작을 합니다. 참고하세요. private boolean isJwtValid(String jwt) { byte[] secretKeyBytes = Base64.getEncoder().encode(env.getProperty("token.secret").getBytes()); SecretKey signingKey = new SecretKeySpec(secretKeyBytes, SignatureAlgorithm.HS512.getJcaName()); boolean returnValue = true; String subject = null; try { JwtParser jwtParser = Jwts.parser(). verifyWith(signingKey).build(); Jws<Claims> claimsJws = jwtParser.parseSignedClaims(jwt); Claims payload = claimsJws.getPayload(); subject = payload.getSubject(); }catch (Exception ex){ returnValue = false; } if(subject == null || subject.isEmpty()){ returnValue = false; } return returnValue; }

  • spring-boot
  • jpa
  • 아키텍처
  • spring-cloud
  • kafka
  • msa
  • rabbitmq
정영돈 댓글 1 좋아요 2 조회수 665

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

미해결

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

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

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

정답 오류

미해결

프로그래밍 시작하기 : 도전! 45가지 파이썬 기초 문법 실습 (Inflearn Original)

in_str = "../source/22-1.txt" with open(in_str, 'r') as file: txt = file.read() txt = txt.replace(","," ") txt_list = txt.split() print(txt_list) print(len(txt_list)) 영상속에서는 split()을 기본값으로 설정을 안하고 split(" ") 으로 해서 which\npermits 을 한단어로 인식해 정답이 72로 나오는데 기본값으로 하면 73으로 나옵니다 저거는 왜 인식이 안되서 72가 정답이되는거죠? 정규표현식으로 했을때도 저 단어만 인식을 못하고있습니다

  • python
건민 댓글 2 좋아요 0 조회수 288

static 메서드와 this 관련해서 질문이 있습니다.

해결됨

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

public class DecoData { private int instanceValue; private static int staticValue; public static void staticCall() { System.out.println(this.instanceValue); } .... } 안녕하세요! 강의에서 "static 영역 입장에서 힙 영역에 있는 인스턴스의 참조값을 몰라서 인스턴스 변수에 접근할 수 없다." 라고 얘기를 해주셨는데 그러면 this는 클래스 본인의 인스턴스 참조값이니 이 this를 이용하면 static 메서드에서도 인스턴스 변수에 접근할 수 있지 않을까? 라는 생각을 해서 코드를 짰는데 오류가 났습니다. 왜 static 메서드 영역에서 this를 사용해도 인스턴스 변수에 접근할 수 없나요? 감사합니다.

  • java
  • 객체지향
감바스 댓글 1 좋아요 0 조회수 251

Open 키워드를 사용해야 하는 이유

해결됨

실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)

안녕하세요 강사님 덕분에 편히 배우고 있습니다. 다름이 아니라 이번 강의 초반에 @Transactional 어노테이션을 사용할 시 open 키워드를 클래스와 매서드에 다 사용해주어야 하고, 만약 이게 싫다면 플러그인을 적용해야 한다고 말씀하셨는데요, 찾아보니 코틀린에서는 기본적으로 모든 클래스가 최종 클래스고, 그렇기 때문에 상속이 되지 않아 open 키워드를 사용해 상속 가능성을 열어두어야 한다는 것 같더라구요. 그런데 왜 이게 @Transactional 어노테이션을 사용할 때도 해당되는 내용인지 잘 모르겠습니다. 프록시 객체가 생성되기 때문인 걸까요? 제가 코틀린 기본 강의를 들었음에도 잘 기억이 나질 않아 질문드립니다. 항상 감사드립니다.

  • java
  • spring
  • kotlin
  • spring-boot
  • 리팩토링
foodsmith96 댓글 2 좋아요 1 조회수 351

[수정요청] Join이해 중 select inner join a.user_id 수정 필요

미해결

카프카 완벽 가이드 - ksqlDB

안녕하세요.. 수강 하면서 하다 보니, 본의 아니게 수정 사항이 보입니다. KSQLDB/Join 이해 중에 select절에서 a.id 가 아닌 , a.user_id 로 수정 해야 될거 같습니다.

  • kafka
  • 데이터-엔지니어링
  • ksqldb
Byungjin Lee 댓글 2 좋아요 0 조회수 313

안녕하세요 다른분 질문에서 강사님에 답변에서 질문있습니다.!!

미해결

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

똑같은 이름의 책 등록을 막기 위해서는 스프링 부트의 멀티스레드 구조와 단일 인스턴스 - 서버가 1대인 경우 - 일 때의 synchronized 구문, 멀티 인스턴스 - 서버가 N>=2 대 인경우 - 일 때의 DB unique key 등을 언급해야 하고, (이 과정에서 서버의 인프라도 설명이 들어갑니다!) 동시 대출을 방어하기 위해서는 DB의 Lock(잠금) 종류와 원리에 대해 설명해야 합니다. 이렇게 답변주셨는데 대용량 트래픽 개인프로젝트를 설계한다고 해야한다면 서버를 여러대 생각을 하고 DB unique key를 생각을 해야할지 먼저 서버 1대를 생각하고 synchronized 구문으로 똑같은 이름의 책 등록을 막아야할지 고민입니다.!!

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
qheogus55 댓글 1 좋아요 0 조회수 200

그럼 연관관계를 사용하는 것이 항상 좋을까?라는 말씀에 질문있습니다.

미해결

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

비즈니스 요구사항,기술적인 요구사항,도메인 아키텍처 등 여러 부분을 고민해서 연관관계를 사용을 선택해야한다고 하셨고 도메인을 설계할 때 이거는 이렇게 하니까 이렇게 하자 저거는 저렇기 때문에 저렇게하자라고 하셨습니다. 실례가 될수 있지만 강사님께서는 어떻게하시는지 예시를 좀 들어주실수 있을까요..? 개인프로젝트할때 도움이 될것같습니다!!!

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

인기 태그

인프런 TOP Writers

주간 인기글