묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실전 리액트 프로그래밍
질문있습니다 !
[REMOVE] : (state,action) => ( state.timelines = ... ) 에서 " ( " 괄호와 ":"가아닌 "=" 를 사용하신 이유가 궁금합니다. 1."(" 괄호는 없어도 정상작동되는데 굳이 사용하신 이유가 있으신가요 ?! 2. 속성값을 덮어씌울 땐 ":" 로 나열해서 덮어씌웠는데, immer에서는 "=" 로 속성을 덮어씌워주는건가요 ?
-
미해결2022 30분 요약 강좌 시즌 1 : HTML, CSS, Linux, Bootstrap, Python, JS, jQuery&Ajax
atom 단축키 문의
안녕하세요! 브라우저로 실행하기 위해서 ctrl+shift+q를 눌러야된다고 나왔는데 현재 mac으로 진행하다보니 브라우저 창으로 실행되는 것이 아니라 켜져있는 모든 브라우저 창이 종료되네요 ㅠㅠ mac에서도 동일하게 작용되기 위해서 어떤 단축키를 사용해야되나요?
-
미해결스프링 핵심 원리 - 기본편
안녕하세요
경력이 5년이 넘었는데도, 스프링을 쓸줄만 알지 이해도는 낮다고 생각되어 수강하고있는 개발자입니다. 예전부터 궁금하다가 답을 못찾고, 이번 강의를 보면서 제가 생각했던게 맞았지만, 과연 이것때문에 모든 코드를 이렇게 구현할까? 라는 의문점이 들어 여쭤보려 하는데요. 서비스를 구현할 때 인터페이스, 구현체로 하는 이유가 있을까요? 실무에서 항상 XXXservice, XXXserviceImpl로 업무를 했는데요. 인터페이스를 사용하며 구현체를 바꿔사용하는것은 이해됩니다. CarService을 확장한 ToyotaImpl, KiaImpl등등을 그에 맞게 확장가능한거는 이해가 되는데... 굳이 이 이유 하나만으로 인터페이스를 사용하는지 좀 궁금해서요.
-
미해결[Django] 장고로 인프런 따라만들기
파이참과 vscode
안녕하세요 현재 강의 수강을 시작한 사람입니다.제가 현재 vscode를 사용중입니다. 파이썬 기초강의를 몇 개 수강한 후에 html css javascript 등을 배우면서 가장 편한 에디터라고 생각했거든요.이번 강의를 들을때에도 파이참 대신 vscode로 진행하려고 하는데 문제가 없을까요?
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
맥에서 실행할 때 에러
맥북에서도 c++을 쓸 일이 있어서 vscode를 깔고 파일을 다운받아 cpp_study 파일에서 빌드를 실행했는데 사진과 같은 에러가 발생하네요 ㅠㅠ 구글링을 해봐도 vscode가 비주얼 스튜디오랑은 많이 다른것 같아서 설정을 어찌 바꿔야 할 지 모르겠는데 혹시 알고계신다면 알려주시면 감사하겠습니다
-
해결됨mongoDB 기초부터 실무까지(feat. Node.js)
find한 다음에 console.log로 데이터 출력할 때
Pretty()라는게 있는데 nodejs에서 find뒤에 사용하니 pretty() is not a function이라고 나옵니다. 이걸 사용해서 원하는 데이터만 보이도록 출려하고 싶은데 pretty말고 다른 방법있을까요? 아, ! 그리고 실제 업무에서 pretty()를 잘 사용하나요?
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
user와 good 관계설정 질문드려요
user.js static associate(db) { db.User.hasMany(db.Auction); db.User.hasMany(db.Good, { as: 'Owner'}); db.User.hasMany(db.Good, { as: 'Sold'});} good.js static associate(db) { db.Good.hasMany(db.Auction); db.Good.belongsTo(db.User, { as: 'Owner'}); db.Good.belongsTo(db.User, {as: 'Sold'});} user 와 good 모델의 관계가 Owner, Sold 두개 인거 같은데실행 후에 goods 테이블보면 총 3개의 foreign key 가 생성되어있는데.. 혹시 왜 그런건가요??
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
REST API로 로그인 설정 시 remember-me 문제
안녕하세요, 기선님. 항상 강좌 잘 듣고 있습니다! 다름이 아니라, 제가 이 강좌를 바탕으로 현재 프로젝트를 진행중인데 프론트엔드는 Vue.js로 진행하므로 rest api를 사용하고 있습니다. 현재 postman으로도 테스트중인데 alwaysRemember 값을 true로 설정해도 remember-me 쿠키가 들어오지 않더라구요 ㅜㅜ 하지만 네이버 oauth2 로그인을 하면 또 멀쩡하게 들어옵니다.. 현재 일반 로그인에서는 리다이렉션을 막아뒀는데 혹시 그것과 관련이 있을까요? 며칠동안 이것저것 찾아보다 도저히 답이 안나와서 이렇게 질문 남깁니다.. 코드도 첨부하겠습니다 @Componentpublic class AuthSuccessHandler extends SavedRequestAwareAuthenticationSuccessHandler { @Override public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) throws ServletException, IOException { response.setStatus(HttpServletResponse.SC_OK); }} @Slf4jpublic class CustomAuthenticationFilter extends UsernamePasswordAuthenticationFilter { private boolean postOnly = true; private HashMap<String, String> jsonRequest; @Override protected String obtainPassword(HttpServletRequest request) { String passwordParameter = super.getPasswordParameter(); if(request.getHeader("Content-Type").equals(ContentType.APPLICATION_JSON.getMimeType())) { return jsonRequest.get(passwordParameter); } return request.getParameter(passwordParameter); } @Override protected String obtainUsername(HttpServletRequest request) { String usernameParameter = super.getUsernameParameter(); if(request.getHeader("Content-Type").equals(ContentType.APPLICATION_JSON.getMimeType())) { return jsonRequest.get(usernameParameter); } return request.getParameter(usernameParameter); } @Override public Authentication attemptAuthentication(HttpServletRequest request, HttpServletResponse response){ if(postOnly && !request.getMethod().equals("POST")) { throw new AuthenticationServiceException("Authentication method not supported : " + request.getMethod()); } if(request.getHeader("Content-Type").equals(ContentType.APPLICATION_JSON.getMimeType())) { ObjectMapper objectMapper = new ObjectMapper(); try { this.jsonRequest = (HashMap<String, String>) objectMapper.readValue(request.getReader().lines().collect(Collectors.joining()), new TypeReference<Map<String, String>>() { }); } catch (IOException e) { e.printStackTrace(); throw new AuthenticationServiceException("Request Content-Type(application/json) Parsing Error"); } } String username = obtainUsername(request); String password = obtainPassword(request); //String rememberMe = request.getParameter("remember-me"); if(username == null) username = ""; if(password == null) username = ""; username = username.trim(); UsernamePasswordAuthenticationToken authRequest = new UsernamePasswordAuthenticationToken(username, password); setDetails(request, authRequest); return this.getAuthenticationManager().authenticate(authRequest); } @Override public void setPostOnly(boolean postOnly) { this.postOnly = postOnly; }} @Overrideprotected void configure(HttpSecurity http) throws Exception { http.oauth2Login() .userInfoEndpoint() .userService(customOAuth2UserService); http.exceptionHandling() .authenticationEntryPoint(restAuthenticationEntryPoint); // 인증 실패시 401 http.formLogin().disable(); http.logout() .logoutSuccessUrl("/"); // 로그인 유지 String rememberKey = "remember_me"; http.rememberMe() .key(rememberKey) .rememberMeParameter(rememberKey) .rememberMeCookieName(rememberKey) .userDetailsService(memberService) .alwaysRemember(true) .tokenRepository(tokenRepository()); http.csrf().disable(); http.cors(); // Json http.addFilterBefore(customAuthenticationFilter(), UsernamePasswordAuthenticationFilter.class);}// Json@Beanpublic CustomAuthenticationFilter customAuthenticationFilter() throws Exception { CustomAuthenticationFilter filter = new CustomAuthenticationFilter(); try { filter.setFilterProcessesUrl("/login"); filter.setAuthenticationManager(this.authenticationManagerBean()); filter.setUsernameParameter("email"); filter.setPasswordParameter("password"); filter.setAuthenticationSuccessHandler(authSuccessHandler); //filter.setAuthenticationFailureHandler(authFailureHandler); } catch (Exception e) { e.printStackTrace(); } return filter;}@Beanpublic PersistentTokenRepository tokenRepository() { JdbcTokenRepositoryImpl jdbcTokenRepository = new JdbcTokenRepositoryImpl(); jdbcTokenRepository.setDataSource(dataSource); return jdbcTokenRepository;}
-
미해결데브옵스(DevOps)를 위한 쿠버네티스 마스터
안녕하세요...
동일하게 vm들을 생성했는데 ip가 안나오네요.. (네트워크에서 natnetwork로 선택하고 시작하면 네트워크 연결이 실패했습니다.. 라고 나오는데 이것과 연관이 있는걸까요??) 감사합니다.
-
해결됨실전 자바스크립트
2:30초 경 그림 질문
그림에 getYounger의 위치에 대해서 질문있습니다. static 메서드 getYounger는 Programmer가 아니라 Person으로 가야하는 것 아닌가요? 프로토타입 체인에 의해서 연결되어있기 때문에, Person이 가지고 있고, 이것을 Programmer가 프로토타입 체인을 통해서 접근가능한 것 아닌가요? 혹시 일반 클래스 필드처럼 값의 레퍼런스가 아니라 static의 경우에도 값을 복사해서 가지고 가나요? https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Public_class_fieldsmdn 문서에 따르면 `Public static fields are not reinitialized on subclasses, but can be accessed via the prototype chain.` 라고 나와 있어서 혼란스럽습니다 ㅜㅜ
-
해결됨홍정모의 따라하며 배우는 C언어
char *title char *authour 이 Not recommended 인 이유가 뭔가요?
바로 앞 강의에 이유가 나온다고 하셨는데 앞강의 보고왔는데 그런내용을 못본거같아서요..
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
bp관련 질문입니다.
스택에서 함수를 2개쓴다 가정하고 1번함수 이전bp값을 BP에 저장하고 2번함수로 넘어가서 2번함수의 이전bp값을 또 저장할때 BP에 넣는데 이러면 1번함수의 BP값을 에 2번함수의 BP값으로 덮어씌우는데 그러면 1번함수의 BP값이 소실되어 1번함수의 스택프레임 공간을 모르는게 아닌가요?
-
해결됨실전 자바스크립트
constructor 질문있습니다!
강의 마지막에 있는 constructor를 보고 궁금증이 생겨서 코드를 한번 만들어서 돌려봤는데, 제가 생각한것과 전혀 다른 ? 방식으로 동작해서 질문드립니다. 아래 코드를 보면, 생성자에 name을 받고, 상위의 클래스를 통해서 생성자호출을 하였는데, 왜 클래스 필드의 초기값이 p1.name이 iu가 아니라 다른 값이 나올까요? 참고: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Public_class_fieldsPublic instance fields are added with Object.defineProperty() either at construction time in the base class (before the constructor body runs), or just after super() returns in a subclass. 라고 되어있는데 이게 후자에 해당하는 부분인가요? 저는 이해가 안가는 부분이, 클래스필드를 생성자를 통해서 초기화를 해주어야 맞지 않나? 라는 생각을 하고 있거든요.. class Person { name = 'memberPerson'; constructor(name){ this.name = name; } } class Programmer extends Person { name = 'memberProgrammer'; constructor(name) { super(name); } } const p1 = new Programmer('iu'); p1.name; >>> memberProgrammer
-
미해결Javascript ES6+ 제대로 알아보기 - 중급
들어보니 자바의 클래스와 개념이 같은거 같은데 맞나요?
자바의 클래스와 개념이 같다고 이해하면 될 까요? 문법은 다른데 super를 써서 최상위 클래스를 초기화 한 후 사용하는 방식이랑 상속도 그렇고... 비슷한데 그러면 최상위 메서드 오버라이딩도 가능한가요? 그리고 다형성도 성립이 되나요 그럼?
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 유튜브 사이트 만들기
npm run dev 에서 부터 막힙니다.
(node:5188) Warning: Accessing non-existent property 'count' of module exports inside circular dependency [0] (Use `node --trace-warnings ...` to show where the warning was created) [0] Server Listening on 5000 [0] (node:5188) Warning: Accessing non-existent property 'findOne' of module exports inside circular dependency [0] (node:5188) Warning: Accessing non-existent property 'remove' of module exports inside circular dependency [0] (node:5188) Warning: Accessing non-existent property 'updateOne' of module exports inside circular dependency [1] Failed to compile. [1] [1] ./src/components/views/LoginPage/LoginPage.js [1] Attempted import error: 'Icon' is not exported from 'antd'. [0] MongoDB Connected... 이러한 에러가 뜨고 ICON이 antd에서 익스포트되는게 아니라는데 어떻게 해결해야 되나요?
-
해결됨리액트로 나만의 블로그 만들기(MERN Stack)
이런 에러는 뭔가요
모달 창 띄우고 서브밋을 눌러보면 모달에서 msg로 나와야한데 안나오네요
-
미해결[백문이불여일타] 데이터 분석을 위한 중급 SQL
My-sql
My-sql은 보니까 EXCEPT, MINUS(차집합) INTERSECT(교집합) FULL OUTER JOIN 이런것들을 지원안하는데도 코딩테스트에서 My-sql을 쓰는게 좋은가요..? 오라클에 비해 지원 안되는게 벌써 3개니 더 불편해 보이긴 합니다 오히려 사용안하는게 실행시간을 단축하는데 좋은가요? 뭐 각자 취향차이겠지만 저는 둘다 초보라 하나를 메인으로 가려고 해서 여쭤봅니다. 원래 oracle을 약간 기본적인거만 써봤는데 초급반, 중급반 강의 my-sql쓰면서 다시 oracle로 바꾸기고 그렇네요
-
미해결진짜 현업에서 쓰이는 직장인의 실무 엑셀 - 데이터 가공부터 분석까지
expression Error: 열거형에 요소가 너무 적어 작업을 완료할 수 없습니다.
안녕하세요? url 주소 편집후, 탐색창에서 body 부분 클릭시 [Expression Error: 열거형에 요소가 너무 적어 작업을 완료할 수 없습니다.]라고 되고 로드할 수 없는데 무슨 문제일까요? ㅠㅠ
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
local에서 terminal이나 aws에서 서버를 백그라운드로 돌리는 방법 문의
서버를 백그라운드로 어떻게 돌리나요? aws에서 npm run start 로 하면 서버가 백그라운드에서 돌지 않아서 cli 창을 끄면 서버가 종료됩니다. pm2 start server/index.js 로 하면 서버가 계속 돌아가긴 하지만 이미지를 못 찾아서 not found 에러가 발생합니다. 해결 방법 말씀해주시면 감사하겠습니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
상품주문 테스트에 대한 질문있습니다.
안녕하세요 선생님 테스트에 관한 질문 하나 올립니다. 1. 상품 주문 관련테스트를 진행할 때 그전에 Member와 Item을 insert하는 과정에서 영속성 컨텍스트에 저장해두고서 실제 아래와 같이 findeOne과 같이 영속성 컨텍스트에서 조회해온다라고 이해하고 있습니다. 다음 줄에 영속성 컨텍스트를 지워주고 난후에 조회시 em.flush();em.clear(); assertEquals부분에서 오류가 납니다 오류 내용은 아래와 같습니다. 테이블을 확인해보니 order_item에 oder_id값이 null이여서 그런거였습니다. 왜 null 이들어가는지 확인이 안되네요 ..ㅠㅠㅠ Order Entity에는 아래와 설정이 되어있습니다. 생성메소드에서 무언가 수정해줘야할까요 ..