묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
webapp 폴더 아래에 있는 파일에 접속이 안됩니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]localhost:8080로 시작하는 경로를 크롬에서 실행하였으나 webapp 폴더 아래에 있는 파일들이 보이지 않습니다. 이전까지의 강의에서 @WebServlet 어노테이션의 urlPattern에 설정해 놓은 경로로는 다 잘 들어가졌는데 webapp에 있는 파일들의 경로를 크롬에 직접 쳐서 들어가려고 하면 문제가 발생하는것 같습니다. 어떻게 해결하는게 좋을까요?감사하겠습니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
회원 웹기능 조회가 안됩니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]회원 등록을 모두 한 후에 회원 조회을 하면 Whitelabel Error Page 가 나옵니다.어디가 문제인지 도저히 모르겠습니다.코드 구글드라이브 링크 첨부하겠습니다.도움 부탁드립니다!https://drive.google.com/file/d/1lv8SJTWHjyc_gJBVFh0PFG0BTv3y_SPK/view?usp=sharing
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
준영속 엔티티의 기준
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요, 강의 수강 중 질문이 생겨 여쭤봅니다.강의에서는 사용자에게 입력받은 BookForm form의 데이터를 새로운 객체인 Book book = new Book();에 할당하고 있습니다. (5분 54초) 강의 중 '임의로 만든 엔티티이지만 식별자 pk를 가지고 있기에 준영속 엔티티이다' 라고 말씀하셨는데, 준영속 엔티티의 기준이 궁금합니다.이미 DB에 persist된 객체의 참조가 아닌 식별자 값만 공유하더라도 준영속 엔티티가 되는 것일까요 ? Book book = (Book) itemService.findOne(form.getId()); 이렇게 DB에서 참조를 직접 조회하지 않고 단순히 id값만 DB에서 가져와서 할당해도 준영속 엔티티의 기준이 되는지 궁금해서 여쭤봅니다 !
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
학습
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요 영한님 저는 영한님 수업을 정말 잘 듣고있는 대학생입니다. 이번 spring강의를 들으면서 개인 velog에 학습겸 포스팅을 하고싶은데 주된내용이 영한님이 알려주시는 코드인지라 이런것들을 포스팅 해도되는지 여쭙고싶습니다. 인프런 강의보니까 모든 코드와 영한님이 만드신 pdf파일은 퀄리티가 상당하여 함부로 velog에 작성해도되는지 조심스럽습니다. 혹시 약간의코드와 배운 지식을 학습차원에서 게시해도 되는지 여쭈어봐도 될까요?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
트랜잭션과 롤백
안녕하십니까 선생님, 이렇게 세션을 Redis에 저장할 때에는 예외 발생 시 트랜잭션, 롤백 같은 기능은 어떤 식으로 처리를 해야 하는 지 질문 드립니다.
-
미해결죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.
예제 실행 명령어 오류
SystemDeathJobConfig 예제 실행 명령어가> ./gradlew bootRun --args='--spring.batch.job.name=recordSystemKillJob inputFile=/path-to-kill-batch-system/system_death.jsonl' ... SystemDeath[command=destroy, cpu=99, status=memory overflow] SystemDeath[command=explode, cpu=100, status=cpu meltdown] SystemDeath[command=collapse, cpu=95, status=disk burnout] ...로 되어 있는데job.name이 recordSystemKillJob -> systemDeathJob으로 바껴야 할 것 같습니다🫡JsonRecordSeparatorPolicy 예제도 함께 바꿔야 할 것 같아요🫡
-
미해결죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.
[분산 서버 로그 처형 작전] 중 scp 오류
[작전명: 분산 서버 로그 처형 작전] [상황설명]: 코드 작성 후 최종 실행시, 비밀번호 입력 프롬프트 없이 아래 에러 발생org.springframework.batch.core.step.tasklet.SystemCommandException: Execution of system command failed with exit code 255 at org.springframework.batch.core.step.tasklet.SystemCommandTasklet.execute(SystemCommandTasklet.java:129) ~[spring-batch-core-5.2.2.jar:5.2.2][환경]: mac, intellij [분석]: 터미널에서는 scp localhost 하면 비밀번호 프롬프트가 잘 떴으나, 배치실행시에만 에러가 발생[추가시도]ssh-keygen -t rsa -b 4096 으로 키쌍 생성 후ssh-copy-id -i ~/.ssh/id_rsa.pub localhost 공개키를 등록 후ssh localhost 하여 비밀번호 없이 접근 확인 이후 정상 처형 확인 완료
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
스프링 3 버전 이상 rollbackFor 변경된듯요
rollbackOn으로 변경된거같네요 스펙이
-
미해결스프링 핵심 원리 - 기본편
예제 코드 파일
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요.스프링 핵심 원리 - 기본편 에서 김영한님이 작성하신 코드 파일을 다운로드 받을 수 있나요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
index.html 경로 인식
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요 복습을 진행중 입니다멀티모듈 프로젝트로 만들어서 그런지 index.html 위치를 제대로 설정하였는데도 http://localhost:8080/ 로 들어가면 404에러가 뜨는데 이유를 모르겠습니다 ㅠ사진은 디렉토리 구조입니다/resources/static 아래에 두면 웰컴 페이지로 잘 동작하지만, 그 후 jsp사용한 회원 가입 등을 할 때 404에러가 발생하여 질문드리게 되었습니다
-
미해결토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1
EmailSender, passwordEncoder 빈 주입 문의
안녕하세요, 강사님. 올려주신 강의를 열심히 듣고 있습니다.제가 코드를 따라하고 있는데 MemberService에서 주입한 emailSender와 passwordEncoder에 Could not autowire. No beans of 'PasswordEncoder' type found. 라는 오류가 뜹니다.찾아보니 해당 인터페이스가 빈으로 등록되지 않아서 생긴 오류라고 하는데 어디서 빈으로 등록한건지 못찾겠습니다. 급한대로 두 인터페이스에 @Component를 해봤는데 MemberService의 오류는 사라졌지만 MemberResisterTest에 NoSuchBeanDefinitionException 문제가 뜹니다. 원래는 인터페이스들을 어떻게 빈으로 등록했던건가요?
-
미해결재고시스템으로 알아보는 동시성이슈 해결방법
DataSource Hikari 사용 이유
DataSource 관련 질문이 있습니다!1. 왜 Hikari Pool을 사용하신건지 궁금합니다.2. Maximum Connection Pool Size를 40개로 설정하신 이유도 궁금합니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
예외 발생 요청 흐름에서 필터와 인터셉터 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]예외 발생 흐름이 WAS - 필터 - 서블릿 - 인터셉터 - 컨트롤러 순이라고 배웠습니다이때, 서블릿은 Spring의 DispatcherServlet을 의미하는 것으로 알고 있습니다그렇다면 여기서 말하는 "필터"와 "인터셉터"는 개발자가 직접 구현한 것을 뜻하는 건가요?아니면 Spring 자체 구조 안에 필터와 인터셉터가 내장되어 있는 건가요?
-
해결됨재고시스템으로 알아보는 동시성이슈 해결방법
saveAndFlush 사용 이유 문의
decrease 함수 안에서 일반적인 save가 아닌 saveAndFlush를 사용하는 이유가 궁금해서 문의 드립니다. 다른 이유가 있을까요?
-
미해결죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.
jobConfiguration 구성 질문
안녕하세요, 강의를 보던 중 문득 궁금한 점이 생겨 문의드립니다. Spring Batch에서 Job 설정 클래스를 구성할 때, 아래와 같이 두 가지 스타일이 혼용되는 것을 자주 보게 되는데요.🥔 PotatoJobConfiguration (생성자 주입 방식)@RequiredArgsConstructor public class PotatoJobConfiguration { private final JobRepository jobRepository; private final PlatformTransactionManager transactionManager; @Bean public Job potatoJob() { return new JobBuilder("potatoJob", jobRepository) .start(potatoStep()) .build(); } @Bean public Step potatoStep() { return new StepBuilder("potatoStep", jobRepository) .tasklet((contribution, chunkContext) -> RepeatStatus.FINISHED, transactionManager) .build(); } }🥬 KimchiJobConfiguration (메서드 파라미터 주입 방식)@RequiredArgsConstructor public class KimchiJobConfiguration { @Bean public Job kimchiJob( final JobRepository jobRepository, final Step kimchiStep ) { return new JobBuilder("kimchiJob", jobRepository) .start(kimchiStep) .build(); } @Bean public Step kimchiStep( final JobRepository jobRepository, final PlatformTransactionManager transactionManager ) { return new StepBuilder("kimchiStep", jobRepository) .tasklet((contribution, chunkContext) -> RepeatStatus.FINISHED, transactionManager) .build(); } }강의를 보다 보면 예시마다 사용되는 경우가 다르던데,어떤 기준에 따라 생성자 주입 방식과 메서드 파라미터 주입 방식을 구분해서 사용하시는지 궁금합니다. 실무에서도 보통 이 둘을 혼용하는 편인지,아니면 상황에 따라 선호되는 방식이 명확히 나뉘는지 조언 부탁드립니다. 감사합니다.
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
트랜잭션 전파 질문.
두가지 질문 있습니다. 1) 16분 30초부터 설명하는 내부 트랜잭션 응답 흐름에서 궁금한점이 있습니다.이번 강의에서 내부 트랜잭션이 참여하게 되면 이것은 아무것도 하지 않는 것이다라고 하셨고내부 트랜잭션이 커밋해도 신규 트랜잭션이 아니기 때문에 실제 커밋을 호출하지 않는다. 그리고 실제 커넥션에 커밋이나 롤백을 호출하면 트랜잭션을 끝나기 때문에 안되기 때문에 실제 커밋을 호출하면 안되고 여기서는 아무것도 안한다 라고 설명하시는데요.그렇다면 다음 코드에서@Test void inner_commit() { log.info("외부 트랜잭션 시작"); TransactionStatus outer = txManager.getTransaction(new DefaultTransactionAttribute()); log.info("outer.isNewTransaction()={}", outer.isNewTransaction()); log.info("내부 트랜잭션 시작"); TransactionStatus inner = txManager.getTransaction(new DefaultTransactionAttribute()); log.info("inner.isNewTransaction()={}", inner.isNewTransaction()); log.info("내부 트랜잭션 커밋"); // txManager.commit(inner); log.info("외부 트랜잭션 커밋"); txManager.commit(outer); }내부 트랜잭션에서 실제 커밋을 호출하면 안되고 어차피 아무것도 하지 않는 것이라면 없어도 되는 코드 아닌가? 라고 생각했는데 아래 다른 분이 하신 비슷한 질문의 답변에서 내부 트랜잭션을 사용한다고 결정했다면 항상 내부 트랜잭션을 커밋이나 롤백을 결정하셔야 합니다. 라고 답변 하신 것을 보았는데요. 아무것도 하지 않는데 내부 트랜잭션은 왜 커밋을 해주어야하는건가요? 2) 1번 질문이랑 관련 있는 것 같기는한데요.이전 강의에서 모든 논리 트랜잭션이 커밋되어야 물리 트랜잭션이 커밋된다고 하셨는데요, 이번 강의에서나 다음 강의에서나 외부(물리) 트랜잭션만 커밋해도 실제 커넥션에 모두 커밋되는 것 같은데.. 아닌가요? 이것이 맞다면 1번 질문과 마찬가지로 외부 (물리) 트랜잭션만 하면 되니 txManager.commit(inner) 코드는 필요 없는 것 아닌가요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
빌드 시작부터..
빌드 시작부터 오류가 나요;;
-
미해결죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.
jobExecutionContext 에 접근하는 방법
치치직...1장 작전 3에서,키보드는 꽉 잘 잡았는데 궁금한게 발생했다. jobExecutionContext 에 접근/수정할 때chunkContext 를 통해서 접근하는 방법과 contribution 을 통해서 접근하는 방법 두가지를 알게 되었다. 일부러 두가지 침투 방식 을 알려준 것 같으나 두 방식의 차이가 있는지, 무엇이 더 선호되는지 아니면 취향의 문제인지 궁금하다.
-
미해결토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1
동일 프로젝트에 서비스 간 의존성 주입 질문
안녕하세요. 강의 잘 보고 있습니다. 헥사고날 아키텍처 구조에서 궁금한 점이 있습니다.동일 프로젝트에 회원, 부서 도메인이 있고, 회원 서비스가 부서 서비스를 의존하고 있을 경우이 경우에는 포트+어댑터 패턴을 유지하는게 좋을까요? 아니면 부서 패키지 내에 존재하는 서비스 인터페이스로 주입받아도 괜찮을까요?포트 + 어댑터 구조로 할 경우 어댑터가 단순히 부서 서비스를 의존받아 호출만 하는 용도로만 사용하는거 같아 장점을 잘 모르겠습니다. (회원, 부서 도메인이 별도 프로젝트로 분리될 가능성은 희박하다는 전제입니다.)
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
ControllerV3 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.controllerV3를 만들때 파라미터로 Map<String,String>으로 전해주시는데 이것은 V2에서는 사용안하는 response를 없애기 위한것인가요?그렇다면 파라미터로 그냥HttpServletRequest requestt만 받게 하면 안되나요?