묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
로그인 구현 질문드립니다.
안녕하세요, 여쭈어보고 싶은게 두가지가 있습니다. 질문1. DB의 username 컬럼에 "sampleID" 값이 있고, password 컬럼에 "samplePassword" 값의 암호화된 값이 있을 때, POST 요청으로 username=sampleID&password=samplePassword 라고 요청이 들어오면, UserDetailService 구현을 안해도 알아서 로그인처리가 되나요? 질문2. UserDetailService에서 이메일 또는 닉네임만 확인해서 반환하고, 비밀번호 확인은 구현이 안되어있는데요, 비밀번호 확인은 어떻게 이루어지고 있는 건가요? 이미 로그인 인증은 처리 된거고, 그 이후에 이메일 또는 닉네임을 확인해서 authentication token을 만들어서 SecurityContextHolder에 넣어주고 있는건가요?? DB의 컬럼값도 email, nickname으로 username이랑 전혀 관련 없는데, 로그인 POST 요청 시 들어오는 username과 password값으로 DB에 있는 값들과의 비교 및 로그인 인증이 어떻게 되는건지 모르겠습니다.
-
해결됨실전 리액트 프로그래밍
이전 상태값을 기반으로 다음 상태값을 사용하는 사례가 어떤게 있을까요?
영상 내에서는 이전 상태값을 이용해서 +1을 계속 해주는 예제를 보여주셨는데요! 영상 속 사례에서는 굳이 [count]를 의존성 배열에 안넣어줘도 작동을 하니까 어느 부분에서 유용하게 쓰이는지가 좀 헷갈리더라구요..! 이전 상태값을 기반으로 다음 상태값을 사용하는 사례가 어떤게 있을까요?
-
미해결[OpenCV] 파이썬 딥러닝 영상처리 프로젝트 2 - 불량사과를 찾아라!
버젼 문제
코랩에서 파이썬 버젼 변경 할 수 있나요? 모델 생성하여 내 PC에서 하니 버젼이 다르다고 합니다. 제 PC는 파이썬 3.6 입니다.
-
미해결단 두 장의 문서로 데이터 분석과 시각화 뽀개기
에러 발생
자꾸 이렇게 에러가 뜨는데 뭐 때문에 그런건가요?
-
미해결웹 개발자와 정보보안 입문자가 꼭 알아야 할 웹 해킹 & 시큐어 코딩
cmd로 db생성까지다했는데여
127.0.0.1/insecure_website 로 접속하면 에러가뜹니다. Apache Server at 127.0.0.1 Port 80 라구요 어떻게 해결하나요 ?
-
해결됨네트워크 패킷 분석 입문 및 악성코드 샘플 분석
안녕하세요 강사님 파일비밀번호에 대해 질문드립니다.
안녕하세요 파일샘플을 다운받았는데요 -> 샘플(password_!보안철저@).zip 파일을 압축풀기 하려고 하는데 비밀번호가 계속 오류가 나네요.. 비밀번호가 변경되었나요..?
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
강사님 에러 질문입니다. ㅠㅠ
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. 2020-11-17 16:24:19.845 ERROR 34406 --- [ restartedMain] o.s.boot.SpringApplication : Application run failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'initDb': Invocation of init method failed; nested exception is java.lang.NullPointerException at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:139) ~[spring-beans-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:413) ~[spring-beans-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1761) ~[spring-beans-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:592) ~[spring-beans-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:514) ~[spring-beans-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:321) ~[spring-beans-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:226) ~[spring-beans-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:319) ~[spring-beans-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) ~[spring-beans-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:863) ~[spring-beans-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:878) ~[spring-context-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550) ~[spring-context-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:141) ~[spring-boot-2.1.16.RELEASE.jar:2.1.16.RELEASE] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:744) [spring-boot-2.1.16.RELEASE.jar:2.1.16.RELEASE] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:391) [spring-boot-2.1.16.RELEASE.jar:2.1.16.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:312) [spring-boot-2.1.16.RELEASE.jar:2.1.16.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215) [spring-boot-2.1.16.RELEASE.jar:2.1.16.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1204) [spring-boot-2.1.16.RELEASE.jar:2.1.16.RELEASE] at jpabook.jpashop.JpashopApplication.main(JpashopApplication.java:10) [classes/:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_201] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_201] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_201] at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_201] at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) [spring-boot-devtools-2.1.16.RELEASE.jar:2.1.16.RELEASE] Caused by: java.lang.NullPointerException: null at jpabook.jpashop.initDb$InitService.dbInit1(initDb.java:43) ~[classes/:na] at jpabook.jpashop.initDb$InitService$$FastClassBySpringCGLIB$$2eb0016.invoke(<generated>) ~[classes/:na] at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) ~[spring-core-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:752) ~[spring-aop-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:295) ~[spring-tx-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:98) ~[spring-tx-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:691) ~[spring-aop-5.1.17.RELEASE.jar:5.1.17.RELEASE] at jpabook.jpashop.initDb$InitService$$EnhancerBySpringCGLIB$$a95ed200.dbInit1(<generated>) ~[classes/:na] at jpabook.jpashop.initDb.init(initDb.java:29) ~[classes/:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_201] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_201] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_201] at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_201] at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:363) ~[spring-beans-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:307) ~[spring-beans-5.1.17.RELEASE.jar:5.1.17.RELEASE] at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136) ~[spring-beans-5.1.17.RELEASE.jar:5.1.17.RELEASE] ... 23 common frames omitted package jpabook.jpashop; import jpabook.jpashop.domain.*; import jpabook.jpashop.domain.Item.Book; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; import javax.annotation.PostConstruct; import javax.persistence.EntityManager; // 총 주문 2 //-userA // JPA1 BOOK // JPA2 BOOK //-userB // SPRING1 BOOK // SPRING2 BOOK @Component @RequiredArgsConstructor public class initDb { private final InitService initService; @PostConstruct public void init() { initService.dbInit1(); } @Component @Transactional @RequiredArgsConstructor static class InitService { private EntityManager em; public void dbInit1() { Member member = new Member(); member.setName("userA"); member.setAddress(new Address("서울","1", "1111")); em.persist(member); Book book1 = new Book(); book1.setName("JPA1 BOOK"); book1.setPrice(10000); book1.setStockQuantity(100); em.persist(book1); Book book2 = new Book(); book2.setName("JPA2 BOOK"); book2.setPrice(20000); book2.setStockQuantity(100); em.persist(book2); OrderItem orderItem1 = OrderItem.createOrderItem(book1, 10000, 1); OrderItem orderItem2 = OrderItem.createOrderItem(book2, 20000, 2); Delivery delivery = new Delivery(); delivery.setAddress(member.getAddress()); Order order = Order.createOrder(member, delivery, orderItem1, orderItem2); em.persist(order); } } } 아마도 initDb 빈 생성에서 에러가 나는거 같은데 왜 그런지 모르겠습니다.
-
미해결업무 자동화를 위한 파이썬 pyautogui, beautifulsoup 크롤링 기초
키에러가 나는데 어떻게 해야하는지 궁금합니다.
import urllib.request from bs4 import BeautifulSoup url = 'https://search.naver.com/search.naver?query=%ED%8C%8C%EC%9D%B4%EC%8D%AC&nso=&where=blog&sm=tab_viw.all' html = urllib.request.urlopen(url).read() soup = BeautifulSoup(html, 'html.parser') title = soup.find_all(class_ = 'api_txt_lines total_tit') for i in title: print(i.attrs['title']) print(i.attrs['href']) 라고 완성했는데 Traceback (most recent call last): File "main.py", line 11, in <module> print(i.attrs['title']) KeyError: 'title' 라고 뜹니다. '다음' 에서도 블로그로 검색했을 때도 그러고 네이버로도 시도해봤는데 키 값이 안 잡히거나 아니면 len으로 값을 찾아봐도 0으로 뜨는데 class를 잘못 잡은 것인지 어디서 오류가 났는지 궁금합니다. 참고로 제가 하는 url내 검사 창에는 title이 없어서 대체할 것을 계속 찾고 있습니다.. 참고로 html만은 또 잘 출력됩니다.
-
해결됨실무자가 알려주는 Git - 입문편
git log 질문
안녕하세요. 1) 강좌에서 git log 만 쳐도, merge 되지않은(fetch만 한) 커밋도 보이는데, 저는 git log --all 까지 입력해야 보입니다. 이건 따로 설정이 있는 건가요? 2) 저는 git log 메세지가 아래와 같이 강사님과 다르게 표시되는데, 이것도 다른 설정이 있는 건가용? ----------------------------------------------------------- commit 72b3ec88d0777eed06fd56395b9fdc58c689104d Merge: 23da45e e36cf25 Author: developingbear <developingbear@gmail.com> Date: Tue Nov 17 15:43:31 2020 +0900
-
미해결[OpenCV] 파이썬 딥러닝 영상처리 프로젝트 2 - 불량사과를 찾아라!
전자책 어디서 볼 수 있는지 알려주세요!
이 전자책은 어디서 볼 수 있나요? 저 홈페이지를 들어가도 안나오네요
-
미해결실전 리액트 프로그래밍
create-react-app 관련
npx create-react-app cra-test 로 생성을 하였는데 저는 serviceWorker.js는 없고 reportWebVitals.js파일이 생성이 되었습니다 버전이 문제일까요?? 아니면 크게 상관이 없나요? 혹시나 해서 질문을 드립니다
-
미해결[라즈베리파이] IoT 딥러닝 Computer Vision 실전 프로젝트
h5 model이 존재하지 않다는 오류가 발생합니다.
강의를 보고 비슷한 모델을 만들어보았는데, 오류가 발생합니다. model = tf.keras.models.load_model('firstmodel.h5') SavedModel file does not exist at: firstmodel.h5/{saved_model.pbtxt|saved_model.pb} 모델을 저장할때는 오류가 발생하지 않았습니다. 왜 계속 오류가 발생할까요?ㅠㅠ modelCheckpoint = tf.keras.callbacks.ModelCheckpoint(filepath=checkpoint_path, save_best_only=True) model=my_model() h=model.fit(x=X_train, y=y_train, batch_size=64, epochs=2, verbose=1, validation_data=(X_test, y_test), shuffle=True, callbacks=[modelCheckpoint, monitor_val_lose])
-
미해결데브옵스(DevOps)를 위한 쿠버네티스 마스터
이틀부족한건 윤달 때문이 아닐까 싶네요
내용무
-
해결됨실무자가 알려주는 Git - 입문편
checkout 명령어 특정 커밋
안녕하세요 제가 아래와 같이 커맨드를 입력했는데요, ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ git checkout (first commit 해쉬) (README.md 파일 수정) git add README.md git commit -m "go to firstcommit" git push origin master ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 을 입력하면 branch를 merge를 안해서 에러 msg가 나올줄 알았는데, Everything up-to-date라는 msg가 출력되고 아무것도 일어나지 않더라고요. 이게 어떤 의민지 궁금합니다. 그리고 git push origin master를 하지않고 git merge master를 하면 머지 충돌이 일어나는데 그 이유도 궁금합니다!
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
node app 실행후 테이블 값이 MySQL Workbench에 들어가지 않습니다
node.app실행 후에 서버 실행중, db연결에 대한 콘솔로그는 정상적으로 작동 하는데 테이블 값이 MySQL Wrokbench에 들어가지 않습니다. MySQL 설치는 https://m.blog.naver.com/bjh7007/221829548634 블로그와 똑같이 진행했고 MySQL Community Server, MySQL Workbench 설치 모두 완료 했습니다. modles 폴더의 comment, hashtag 등 테이블 작성 파일들은 아래 첨부한 post.js 이미지 처럼 강의와 똑같이 동일한 포맷으로 작성 했습니다. 제가 어떤 부분을 놓치고 있는 걸까요 ㅠㅠ.. app.js models/index.js model/post.js node app 실행 후 터미널 package.json MySQL Workbench 메인 화면 MySQL Workbench Local 클릭한 화면
-
미해결인터랙티브 웹 개발 제대로 시작하기
nth-child(n) 정확히 어느때에 쓰이는건가요??
강의마다 자주쓰이는데 왜 쓰이는건지 잘 모르겠네요... 그냥 css에 child말고 .ilbuni1 { code } .ilbuni2 { code } .ilbuni3 { code } 이런식으로 쓰면 코드중복이 심해져서 nth-child 를 사용하는건가요?
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
DB연결
안녕하세요. mysql을 기존에 있던 것을 사용하고 싶은데요.. 그럴려면 Elastic Beanstalk의 환경 속성 부분에 기존의 mysql의해당 정보를 입력하면 되는건가요?
-
미해결실전 리액트 프로그래밍
리덕스 사가의 필요성
export async function addToCart (id) { const body = {id}; const request =await Axios.post(`${USER_SERVER}/addToCart`,body) .then(response=>response.data); return { type :ADD_TO_CART, payload :request } } 안녕하세요 강사님! 위의 코드처럼 actions.js에서 서버와 통신을 하면 비동기 통신이 끝난다고 생각이 드는데요. 이 결과를 redux에 넘겨서 새로운 state를 반환하면 redux-saga나 redux-thunk가 필요없는 게 아닐까 하는 궁금증이 생겼습니다. 이런 방식이 saga를 쓰는 것에 비해 단점이 있어서 안 쓰는건지, 아니면 action객체는 비동기 통신을 해서는 안되서 saga를 사용하는 건지가 궁금합니다. 항상 가려운 부분을 시원히 긁어주셔서 감사합니다.
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
스피너 컴포넌트 소스 주소
vue-advanced 권한 신청 했었고 받은줄 알았는데.. 404 에러가 뜨는 거 보니 권한 추가가 안돼있나봅니다ㅠ 추가 부탁 드립니다.
-
미해결정말 쉽게 풀어보는 코딩 테스트 top 기본 문제 (with 자바)
[Permutation] 자바 기초적인 문법 관련해서 질문이 있습니다 !
Permutation 강의dfs 메소드에서 List<Integer> list = new ArrayList<>(cur); 에서요() 안에 cur을 넣으셨는데1. 리스트 선언할 때, = 기준으로 오른쪽 <>에는 Integer 타입을 생략해도 되는게 맞나요?2. 그리고 = 기준으로 오른쪽 () 안에 들어가야하는건syntax 적으로 정확히 어떤게 들어가야하는건가요?예전부터 리스트 선언시 뭔가 그냥 기계적으로 코딩했었는데문법적인 내용 질문드립니다 ! 감사합니다 !