묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
회원 웹 기능 - 등록 부분/ MemberForm 클래스 질문드립니다.
createMemberForm.html에서 input에 값을 입력하고 '등록'버튼을 눌러서 컨트롤러에 요청하는 부분을 공부하고 있습니다. 여기서 한 가지 의문점이 생겼는데요 제가 알고 있기론 html에서 컨트롤러로 요청될 때 순서가 1. html에서 스프링 컨테이너로 url을 요청하면 그걸 컨트롤러에서 받음. 2. 비즈니스 로직을 수행하고 적절한 값을 리턴 이런식인걸로 알고 있습니다. 그래서 1. createMemberForm.html에서 id 값을 input에 입력한 후 등록버튼을 눌러주면 @PostMapping(value="/member/new")로 전달되는거까진 이해가 가는데 2. 그 아래 메서드 public String create(MemberForm form) 에서는 어떻게 MemberForm 클래스와 상호작용하는건지 모르겠습니다. MemberController에 써준 String create(MemberForm form) 메서드에서 파라미터를 받을 때 html에서 전송되는 form 값이 MemberForm 클래스를 거쳐서 오는 것 같이 보여지는데.. 별개로 생성된데다가 @Controller도 써주지 않은 MemberForm 클래스와 어떻게 연결되는건가요? 그냥 MemberForm form 이렇게 써주면 자동적으로 스프링이 MemberForm 클래스를 찾아서 거기서 form으로 전송된 name 값을 setter로 MemberForm 클래스 객체에 저장하고 다시 public String create(MemberForm form) 메서드로 가져오는 것인가요? 그렇다고 하기엔, MemberForm 클래스는 @Controller도 안 해주었기 때문에 스프링 컨테이너에 등록이 안 된 상태 아닌가요?
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
아나콘다 설치 관련해 질문드립니다!
사진과 같은 메시지가 아나콘다 설치시 표시됩니다. 기존에 사용하던 파이참 및 파이선 프로그램을 다 삭제하고 재시도 해봐도 같은 메시지가 표시되서요.. 답변 부탁드립니다 ㅜㅜ
-
미해결[2021] 요즘 누가 유료로 웹서비스 구축하나, 파이어베이스의 모든 것 - Javascript
firebase cloud function 외부 디비 연결 문의
강의는 모두 수강했습니다. 강의가 길지 않고 지루하지않아서 쉽게 수강했습니다. 문의사항이 있습니다. 강의에는 구글 클라이우드 자체 DB에 연결해서 CRUD작업을 하는데요 aws rds mysql 로 연결해서 CRUD 작업을 할려면 firebase cloud function 을 이용해야 한다고 하는데요 어떻게 하면 되는지 참조할만한 문서나 사이트가 있을까요 ? 감사합니다.
-
미해결[2026년 출제기준] 웹디자인개발기능사 실기시험 완벽 가이드
active 클래스가 안먹혀요ㅠㅠ
html 부분:<div class="btn"> <a href="#none" class="active">공지사항</a> <a href="#none">갤러리</a> </div> css 부분:.btn a{ border: 1px solid black; display: inline-block; width: 100px; padding: 3px; text-align: center; text-decoration: none; color: black; border-radius: 5px 5px 0 0; margin-right: -6px; border-bottom: none; background-color: lightgray; margin-bottom: -1px; } .btn a.acitve{ background-color: white; } 이렇게 작성했는데, 내용 부분 tab1, tab2는 바뀌는데 active 적용해서 공지사항이나 갤러리 배경이 하얀색으로 바뀌어야되는데 안바뀝니다ㅠㅠ
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
마스킹 관련 질문!
삭제된 글입니다
-
미해결
DDD 의 boundary context 에 대한 고민이 있습니다!
최범균님의 DDD start 로 입문하고 설계에 대해서 요즘 많이 고민하고 있는데요. JPA 를 쓰는 입장에서 boundary context 즉 경계처리를 어떻게 해야하는지 고민입니다. 예를들어 Member, Order Entity 가 있고 Order 의 boundary context 는 Orderer 가 되는데 Orderer (id, name) 를 포함하고 있습니다. 만약 주문정보를 저장하게되면 Orderer 로 인해 Member 의 id 와 name 이 저장되고 이렇게 되면 Member 값이 바뀔시 name 이 달라지는 데이터 무결성이 발생한다고 생각합니다. 그럼 Orderer 처리를 어떻게 하면 좋을까요? 너무 두서없는 질문인데 어떻게 더 표현해야 할지 잘 생각이 안나네요 ㅜ
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
안녕하세요 ㅎㅎ
강의 이제막 시작하는 데이터분석에 관심이 있는 학생입니다. 혹시 아나콘다 주피터 노트북환경말고 평소에 파이썬을 visual studio code로 실행해 왓는데 vscode로 해도 크게 상관없을까요?
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
MongoDB의 USD설정을 KRW로 바꿀 수 있나요??
안녕하세요 선생님, 열심히 잘 보고 따라하고 있습니다! 나름의 수정작업을 곁들이며 하는 중인데요. 혹시 MongoDB에서 지원하는 달러단위를 원화로 바꿀 수 있는 방법이 있을까요?? MongoDB Docs에도 monetary usage 관련 사용법만 나오고, 전환법이나 다른 방법에 대해 나오지는 않아서요! 늘 감사합니다! :)
-
미해결HTML+CSS+JS 포트폴리오 실전 퍼블리싱(시즌1)
:before로 적용된 배경이 100%로 채워지지 않습니다 ㅜㅜ
인스타그램 로고 부분에 그라데이션 효과를 주고 싶어서 배경(.sns a:nth-child부분)에 컬러를 주고 :before부분(.sns a:nth-child:before)에 화이트를 주어서 작업해보았는데요. 작동은 잘되는데 hover하기전 before부분의 height가 100%일때 사진처럼 상하좌우에 배경색이 조금씩 표시가 됩니다 ㅜㅜ before부분의 width랑 height를 100%이상으로 더 늘려봐도 똑같네요.. 어떻게 해야 깔끔하게 올화이트로 보이게 할수 있을까요??
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
숙제에 대한 정답
숙제에 대한 정답이 소스가 있을까요?
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
빈스탁 상태 회색으로나오는 문제
-
미해결앨런 iOS Concurrency(동시성) - 디스패치큐와 오퍼레이션큐의 이해
lazy var 관련 질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. GCD 자료 277p에서 lazy var와 관련된 질문 사항인데요. testVar라는 변수가 클로저에 ()가 붙여져 있는데, 제가 알기론 이렇게 되어있다면, testVar을 읽을 때마다 클로저가 호출되서 async로 보내든 말든 매번 랜덤한 수가 나와야되는데 실제론 그렇지 않더라구요. GCD와 관련된 질문은 아니지만, 이걸 정확히 이해하면 뒷내용을 확실히 파악할 수 있을 것 같아서요. 혹시 이유를 알 수 있을까요? 사실상 저 변수는 클로저인데 사용할 때마다 매번 호출되어 {}에 있는 코드들이 매번 실행되어야하는 거 아닌가요? 감사합니다.
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
배열 질문!
강의에서 배열이란것 자체가 시작위치를 가리키는 포인터라고 표현을 하셨는데 시작위치를 가리키고 있다는 것은 배열의 시작지점을 배열이란것이 주소 값을 통해 가지고 있는다라고 이해가되는데 이런 의미라고하면 디버깅 모드에서 statinfo 라는 자료형의 monsters 배열을 메로리 검색해보면 바로 값이 내장되어있는 스택메모리의 위치가 보여지고 만약 monsters 배열이 배열의 시작주소를 가리키고 있다면 &monsters 검색하게된다면 가령 배열의 주소가 0x007AFB4C 이라면 (배열의 값을 가지고 있는주소임) &monsters 는 0x007AFB4C를 가지고 있는 또하나의 메모리가 되어야 하는 건 아닌가요? 마치 포인터 처럼 예를들어 main 안에 int number = 0xaaaaaaaa; int * ptr = &number; 일때 number 의 주소값이 ptr 이라는 포인터변수안에 들어가있고 디버깅을 찍어서 확인해보면 &ptr 메모리검색을해보면 실제로도 number 의 주솟값이 들어가 있는것을 알수있습니다. 물론 배열이란것자체가 주소값이기 때문에 포인터 변수에 대입가능하고 메모리 검색자체도 &를 붙이지 않아도 되고 주소값이라는 건 충분히 이해가 되었지만 배열이란것이 "처음 주소를 가리키고 있다" 라는 말이 이해가안됩니다. 내부적으로 배열이 처음주소를 가리킨다면 그 처음주소를 가리키는 또다른 메모리가 존재를 해야하는것이아닌가요? 궁금해서 질문 드립니다.
-
미해결<M.B.I.T> 테스트 페이지 만들기! with Django
location
6:41 let url에서 copyBtn은 location.href로 사용하시고 facebook에서는 window.location.href 사용하셨는데 어떤 차이점때문에 다르게 선언하셨나요?
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
함수 question에 제가 원하는 함수조건을 조금 추가해보았는데요.
function Seller(product){ if (product === products[0].name){ return products[0].seller } else { return products[1].seller }}이렇게 작성해보았는데 출력은 잘 되었어요. 해당 함수를 더 깔끔하게 작성할 수 있을까요? 아니면 좀 더 편하게 '농구공의 판매자에 접근하는' 방법이 있을까요? 언제나 답변 감사드립니다. 좋은 하루되세요!
-
미해결스프링 핵심 원리 - 기본편
request 스코프 문의드립니다..
안녕하세요! 첫 질문글 이네요.. 우선 항상 좋은강의 정말 잘 듣고 있어서, 정말 감사드립니다. 강의덕에 개발이 더 재밌고, 예전보다는 발전하고 있다는 생각이 드네요.. 감격~ ㅎㅎ 강의를 듣다가.. 궁금한 부분이 생겨서 문의드려요..원래 보통 찾아보는데, 검색하기가 좀 애매한것 같아서요 제가 궁금한 것은, ObjectProvider의 동작 원리입니다. 우선 제가 이해한 것은 스프링이 시작되고, 컨테이너가 만들어지고 어노테이션을 읽어들이며... @Component에 @Scope(value = "request")가 붙어 있으면 객체를 바로 싱글턴으로 생성하지는 않지만, 스프링이 관리하는 대상 클래스 타입 리스트?에 올려놓는것 이라 생각하겠습니다. 이후에, ObjectProvider<MyLogger> 객체의 getObject같은 함수가 실행되면 내부적으로는 정확하진 않지만 컨테이너에서 getBean을 요청하는 것이라 생각하겠습니다.; 이때, 객체가 없으면 새로 만들어서 주는것이고 있으면 있는것을 그대로 리턴해준다고 생각하겠습니다. 여기서 좀 햇갈리게 된게.. 싱글턴 객체면 상관이 없는데.. request는 각기 다른 요청 갯수만큼 만들어지는 것이잖아요? 요청이 끝나면 파괴된다고 하지만.. 예를들어 서비스로직이 10초가 걸리는데(thread.sleep(10000)) 이때 동시에 요청이 2개 발생하고 프로바이더.getObject()를 하면 10초동안은 스프링 컨테이너에는 2개의 빈이 존재하는것이라고 배웠습니다... 여기서 햇갈리는게, 첫번째 요청이 들어오면 컨트롤러에서 myLoggerProvider.getObject(); 하는순간 빈이 만들어 질테고, 이 빈이 소멸되지 않은 상태에서 바로 두번째 요청이 들어오면.. 컨테이너에는 빈이 있지만, 자신요청에 해당하지 않는 빈이란것을 알고 새로 만드는 것과... 그다음에 서비스 로직에서 또 myLoggerProvider.getObject();하면 같은 타입의 빈이 컨테이너에 2개 잇는 상태에서 자신이 진짜 사용할 빈을 자동으로 반환 받는 과정이.. 궁금하더라구요. 이게 코드에는 힌트가 없이 내부적으로 그냥 이런식으로 동작해주는것 같은데.. 그냥 추측만 할뿐이네요; getObject의 구현체가 내부적으로 요청하는 함수(정확히는 쓰레드가 맞겟네욤)에 맞는 객체를 분류해서 리턴해주는 기능처럼.. 구현되어 있는것이 맞을까요? 원리는 잘 모르겠지만, 강의 내용중 쓰레드로컬 말씀하신걸 보면.. 이름에서 주는 느낌처럼 getObect를 요청할때 요청하는 쓰레드 종류까지 기억하고 있다가 해당하는 쓰레드에 맞는 빈을 반환하는.. 뭐이런식이지 않을까 생각들긴 하는데 확실치 않아서요.. 이부분 관련해서 검색해보고 싶은데, 찾아보기가 좀 어렵네요... (디버그해보면서 구현체 까보고 싶은데, 이클립스만 써봐서 인텔리제이가 익숙치 않아서 힘듭니다 ㅠㅠ) 다른 강의 들으면 혹시 더 알 수 있는 내용일까요? 예전에 빈 싱글턴 들으면서 싱글턴 객체에 멤버변수 있으면 어쩌지? 한참 고민하다가 그냥 다음강의 들으면서 알게 됐었는데... 이건 이제 곧 완강이라 문의드려욤ㅎㅎ 앞으로 들으면서 좀 감이 안오는 부분은 정리해서 질문 많이 드릴게요 ㅎㅎ; 다시한번 말씀드리지만 정말 많이 배우고 있습니다 ㅎㅎ 곧 스프링 부트랑 JPA강의 수강할껀데.. 그때도 궁금한거 있으면 많이 여쭤볼게요 ^^; 그럼 감사드립니다.~~
-
미해결딥러닝 CNN 완벽 가이드 - TFKeras 버전
torchvision.transforms.transform과 albumentation이랑 차이가 있나요?
안녕하세요 API랑 인터페이스가 서로 비슷한거 같은데, 다른 점이 있나요?
-
미해결스프링 핵심 원리 - 기본편
테스트, DI 컨테이너
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강의 중 있었던 테이스 코드들을 봤을 때, MemberServiceTest 같은 경우에는 순수하게 자바코드로 돌리는 테스트로 보입니다. BeanDefinitionTest를 보면 ApplicationContext를 이용하는 코드이기 때문에 DI 컨테이너가 필요한 테스트라고 생각합니다. 그런데, @SpringBootTest 애노테이션을 붙인 테스트와 달리 로그에 스프링의 띄우지 않는 것처럼 보입니다. @SpringBootTest를 넣음에 따라서 달라지는 부분이 있나요? 왜 이런 현상(?)이 발생하는지 궁금합니다. --수정-- https://www.inflearn.com/questions/211302을 보니 @SpringBootTest가 스프링 부트가 제공하는 스프링 컨테이너를 사용해서 테스트를 실행하게 하고 이로 인해 @Component를 포함하는 애노테이션이 붙은 클래스에 대해 컴포넌트 스캔을 진행하여 DI를 진행하는 걸로 이해했습니다. 이를 기반으로 아래와 같은 궁금증이 생겼습니다. 1. @SpringBootTest가 들어갔을 때 띄우는 데에만 해도 시간이 길어지는게, 컴포넌트 스캔 대상이 애플리케이션 전체로 확대되어서 그런 것인가요? 혹시 스프링 부트가 제공하는 스프링 컨테이너를 띄울 때 강의에서 AppConfig 스프링 컨테이너(이 표현이 맞는지 모르겠습니다 ^^)를 띄울 때와 달리 부가적으로 수행하는 작업이 있나요? 2. 필드 주입을 적용한 클래스로 테스트를 할 때 @SpringBootTest를 꼭 넣어야 하나요? 필드 주입을 적용한 클래스와 해당 클래스에서 필요로 하는 클래스를 스캔할 수 있는 @Configuration을 이용해도 @SpringBootTest가 꼭 필요한가요?
-
미해결Vue.js 끝장내기 - 실무에 필요한 모든 것
쿠키에 저장이 안되는 이유
methods: { async submitForm() { try { // 비즈니스 로직 const userData = { username: this.username, password: this.password, }; const { data } = await loginUser(userData); // token 확인 및 store에 저장(commit) console.log(data.token); this.$store.commit('setToken', data.token); // username을 store에 저장하고 메인 페이지로 push this.$store.commit('setUsername', data.user.username); saveAuthToCookie(data.token); saveUserToCookie(data.user.username); this.$router.push('/main'); } catch (error) { // 에러 핸들링할 코드 console.log(error.response.data); this.logMessage = error.response.data; } finally { this.initForm(); } }, initForm() { this.username = ''; this.password = ''; }, }, 7_til-list 브랜치에서 강의 따라가고 있는데 cookies.js를 import 해서 로그인 폼 제출시 saveAuthToCookie와 saveUserToCookie를 사용했는데 브라우저의 쿠키에 저장이 되질 않습니다. 해결 방법을 알 수 있을까요? 7_til-list 브랜치에서 강의 진행 내용 외에 따로 건드린 것은 없습니다.
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
연속 부분수열1
안녕하세요 선생님. 이렇게 코드를 작성한 경우, 선생님께서 설명해주신 코드보다 시간복잡도에서 차이가 클까요? function solution(m, arr){ let n = arr.length; let p1 = p2 = 0; let answer = 0; while (p2 < n){ let sum = arr.slice(p1, p2+1).reduce((a,b)=>a+b, 0); if( sum < m ){ p2++; } else if(sum > m){ p1++; } else{ answer ++; p1++; } } return answer; }