묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨웹 애니메이션을 위한 GSAP 가이드 Part.01
autoAlpha를 사용한다고 해도 성능상의 이점은 없는거 아닌가요?
Q. FOUC에 대한 보완으로 autoAlpha를 사용하면 효율적인 이유가 뭘까요? FOUC 강의에서 authAlpha를 사용함으로써 GSAP가 효율적으로 visibility를 visible로 바꿀 수 있다 라고 말씀하셨습니다. 그런데 생각해보니 GSAP 객체도 해당 Element의 style에 접근해서 attribute 값을 바꾸는게 아닌가? 하는 생각이 들어서 질문드려봅니다.이렇게 되면 사실 문법적인 설탕(syntatic sugar) 같은게 아닌가요? 🤔
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
postman에 /login으로 send 시 무한 로딩 에러
postman에서는 이런 오류가 뜨구요..위에는 index.js 파일이고User.js 파일입니다!몇일을 열심히 구글링해봐도 답을 찾을 수가 없네요,, register은 잘 작동합니다. 어떤 문제가 있는지 부탁드려요,,,
-
해결됨비전공자를 위한 진짜 입문 올인원 개발 부트캠프
로그 이미지 주소 중 절대 경로 원리에 관한 질문
본 강의 중 로그가 나오지 않는 이슈에 관하여경로 설정에 문제가 있다고 하셨고, grab_market_web/src/App.js의 내용 중 로그 src의 경로를"./imgages/icons/log.png"에서 -> "/imgages/icons/log.png"으로 변경하라고 하였습니다. 작동은 잘 되는데, 작동 원리가 궁금합니다./ 절대값 root경로의 시작은 어디로 설정되어 있나요?이전에는 메인 화면에서는 ./ 상대 경로 중, 현재 경로로 설정되어 있었는데 잘 작동했던 이유도 궁금합니다.App.js파일의 내용이니까 App.js가 존재하는 grab_market_web/src 디렉토리가 현재 경로라고 이해되는데,그보다 상위 디렉토리에 존재하는 grab_market_web/public이 ./ 현재 경로로 인식되어grab_market_web/public/images가 호출 되는 것도 이해가 잘 되지 않으며/ 절대 경로로 설정시에도grab_market_web/public/images가 호출되는 것이 잘 이해가 되지 않습니다.
-
미해결실전! Querydsl
p6spy 쿼리 파라미터 노출 안됨
안녕하세요!이번에 spring boot 3.1.0 version 으로 p6spy 라이브러리 설정 후 테스트 코드 실행을 하는데 쿼리 파라미터 값이 확인되지 않습니다.Hibernate: insert into hello values ( ) 2023-06-20T14:55:04.965+09:00 INFO 28956 --- [ main] p6spy : #1687240504965 | took 5ms | statement | connection 1| url jdbc:mysql://20.249.79.13:3306/patron_dev?characterEncoding=UTF-8 insert into hello values ( ) insert into hello values ( ); Hibernate: select h1_0.id from hello h1_0 2023-06-20T14:55:05.596+09:00 INFO 28956 --- [ main] p6spy : #1687240505596 | took 7ms | statement | connection 1| url jdbc:mysql://20.249.79.13:3306/patron_dev?characterEncoding=UTF-8 select h1_0.id from hello h1_0 select h1_0.id from hello h1_0; 2023-06-20T14:55:05.717+09:00 INFO 28956 --- [ main] p6spy : #1687240505717 | took 9ms | rollback | connection 1| url jdbc:mysql://20.249.79.13:3306/patron_dev?characterEncoding=UTF-8 ; 2023-06-20T14:55:05.759+09:00 INFO 28956 --- [ionShutdownHook] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default' 2023-06-20T14:55:05.763+09:00 INFO 28956 --- [ionShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated... 2023-06-20T14:55:05.849+09:00 INFO 28956 --- [ionShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed. Process finished with exit code 0 위 로그 화면에서 보는 것처럼 rollback 이 되기전 insert 문이 실행될 때 값이 비어 있는 상태로 전달되고 있습니다이유를 모르겠습니다 ㅠㅠ
-
미해결실전! Querydsl
JPQL 실행직전 flush외에 clear도 함께 해주는것인지
자바 ORM 표준 JPA프로그램 듣고 넘어왔습니다.이전 기본강의에서는 JPQL이 flush를 먼저 수행이 된후 JPQL쿼리가 동작한다고 배웠는데요.이게 EntityManager의 일반적인 find() 메소드의 경우clear()을 한 뒤 준영속상태에서 비로서 select쿼리가 나가는것으로 알고있습니다. (그렇지 않으면 1차 캐시에서 조회)근데 JPQL의 경우 flush는 자동으로 호출 되지만 clear 즉, 1차캐시와 연관성이 있느냐 없느냐에 대해서 궁금증이 생겼습니다.clear를 직접 해주지 않았음에도 불구하고 쿼리가 나가는 이유에 대해서 clear를 자동으로 해줘서 쿼리가 나가게 된것인지? 혹은 1차 캐시와 상관없이 자연쿼리가 나가게 되는것인지 한번 더 다잡고 가고싶습니다.답변 감사히 기다리겠습니다.
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
redux toolkit에서는 redux thunk가 들어있는건가요?
import { configureStore } from "@reduxjs/toolkit"; import { createWrapper } from "next-redux-wrapper"; import reducer from "../reducers"; function getServerState() { return typeof document !== "undefined" ? JSON.parse(document.querySelector("#__NEXT_DATA__").textContent)?.props .pageProps.initialState : undefined; } const serverState = getServerState(); console.log("serverState", serverState); const makeStore = () => { configureStore({ reducer, devTools: true, middleware: (getDefaultMiddleware) => getDefaultMiddleware(), preloadedState: serverState, // SSR }); }; export default createWrapper(makeStore); https://redux-toolkit.js.org/api/getDefaultMiddleware이걸 읽어보니configureStore에서 middleware의getDefaultMiddleware()에 redux thunk가 이미 추가가 되어있는거 같은데 맞나요?
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
프록시 호출 관련 질문
안녕하세요 강사님좋은 강의 감사드립니다.참여했던 실무 프로젝트에서 @Transactional 을 잘 이해하지 못한 채 사용했던 적이 있습니다.특정 서비스의 한 메소드에서 @Transactional을 선언하고 해당 메소드가 여러 작업을 하기 때문에 다른 메소드를 호출하는 방식이었습니다.이때 저는 트랜잭션의 특징을 잘 몰라서 두 메소드에 다 @Transactional을 선언했었습니다.예시)@Transactionalpublic void ex1() {...// 로직 수행 후 다른 메소드 호출ex2();}@Transactionalpublic void ex2() {// 로직 수행}테스트를 하는데 로직 수행중 ex1에서 에러가 나든 ex2에서 에러가 나든 트랜잭션 롤백이 안됐었는데 이런 케이스는 무엇이 원인인지 알려주실 수 있나요?강의에서처럼 ex1이 아예 @Transactional이 선언되어 있지 않았다면 롤백이 안되는게 맞다고 생각이 드는데 저는 두 메소드 다 선언했었거든요,,확인해주시고 답변 주시면 정말 감사드리겠습니다ㅠ(혹시나 해서 강의 코드의 externalCall 메소드에 트랜잭션 선언해보고 테스트 돌려봤는데 트랜잭션 적용 되더라고요)+추가 질문으로 이런 경우에는 ex1 메소드에만 @Transactional을 선언하면 될까요?
-
미해결홍정모의 따라하며 배우는 C++
복사 생성자 부분에서 질문이 있습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강의 9.11, 11분 21초 입니다.교수님께서 복사 생성자를 MyString(const MyString &src) { cout << "Copy constructor" << endl; m_length = src.m_length; m_data = new char[m_length]; if (src.m_data != nullptr){ for (int i = 0; i < m_length; i++) m_data[i] = src.m_data[i]; } else m_data = nullptr; } 이렇게 정의 하셨는데 해당 코드에서는 m_data의 제일 끝에 널 문자를 두지 않습니다. 제가알기로 문자열의 끝부분에는 널문자를 둔다고 기억하는데 왜 이렇게 해도 되는지 궁금합니다!
-
해결됨실전! Querydsl
sequence id값이 공유(?)되는 현상에 대한 질문
@GeneratedValue에 의해 Sequence가 호출되어서 순차값이 id에 부여되어 저장되는것으로 알고있습니다.근데, team의 id와 member의 id의 sequence가 마치 공유가 되는듯이 team의 id가 1, 2 그리고 member의 id가 3, 4, 5, 6 으로 저장이 되는 부분에 대해서@Column으로 각각의 id 이름을 다르게 부여했다고 하더라도 @GeneratedValue 어노테이션은 엔티티에 정의한 필드명에 맞춰서 생성이 되어서 그런것인지 궁금합니다.또한, 만약 위 원리가 맞다면 실무에서는 이런 부분에 대해서 각각을 명확하게 구분지어서 해야할거같다 라는 생각이 들었으며,그렇다면 실무에서는 애초에 @Column에 의한 DB 컬럼명 변경이 아닌 엔티티 자체의 필드명에서 부터 다르게 지정해 줘야 하는것이 아닐까 하는 생각을 해봤습니다.이 부분에 대해 바람직하게 생각한것이 맞을까요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
이 강의에서 타입스크립트를 사용하지 않은 이유가 있나요??
요즘은 타입스크립트가 대세라는 소리를 어디서 들은 것 같아서 질문드립니다.왜 타입스크립트를 안썼냐고 따지는 것은 절때 아니고...단순히 자바스크립트를 사용했는데 어떠한 의도를 갖고 했는지가 궁금합니다.작성하기가 쉬울 수도 있고, 코드의 길이가 짧을 수도 있고, 기존에 만들어진게 자바스크립트일 수도 있다는 생각이 들긴 하지만 직접 물어보는게 더 좋을꺼같아서 질문드립니다.
-
미해결Do it! 알고리즘 코딩테스트 with JAVA
7강 1940 런타임 에러
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer tk = new StringTokenizer(br.readLine()); int N = Integer.parseInt(tk.nextToken()); int M = Integer.parseInt(tk.nextToken()); int[] nums = new int[N + 1]; for (int i = 1; i < N + 1; i++) nums[i] = Integer.parseInt(tk.nextToken()); Arrays.sort(nums); int start = 1, end = N, answer = 0; while (start != end) { int sum = nums[start] + nums[end]; if (sum < M) start++; else if (sum > M) end--; else { answer++; start++; end--; } if (start > end) break; } System.out.println(answer); } }안녕하세요 ~항상 좋은 강의를 만드시기 위해 노력해주셔서 감사합니다!강사님의 강의를 참고해 위 코드로 재출을 했는데 인텔리제이에서는 정상적으로 실행되지만,백준에 재출했을 때 런타임 오류가 발생하는 이유를 모르겠어서 질문드립니다 ㅠㅠ오류 코드는 아래와 같습니다.Error: Main method not found in class Main, please define the main method as: public static void main(String[] args)제대로 main 객체와 메서드가 있는데 왜 인식을 못하는지 모르겠네요 ㅠㅠ감사합니다 :)
-
미해결타입스크립트 입문 - 기초부터 실전까지
에러 ㅠㅠ
똑같이 따라 해봤다고 생각했는데 다시 켜보니..이런 일이 벌어졋습니다 ㅠㅠ 뭐가 문제인지 알고싶습니다 ㅠㅠ
-
미해결프론트엔드 개발자를 위한 웹팩
바벨없이 import 구문을 빌드한 의도파악하기
안녕하세요 판교님, 강의 섹션에서 질문하신 *다른 분의 글(es6와 es5...)을 보고 글을 남겨요.3:27 부분에서 index.js 파일에서는 ES6 구문을 쓰고,import _ from 'lodash'webpack.config.js 파일에서는 ES5(commonJS) 구문을 var path = require('path')쓰셨더라구요, 모든 브라우저에서 호환 가능하려면 바벨은 필수인데 최신 브라우저는 네이티브 모듈을 지원하니까 별도의 빌드 도구 없이 모듈을 로드할 수 있으니 편의상 진행하신거라고 이해하면 될까요?
-
해결됨실전! 스프링 데이터 JPA
Spring Data JPA 페이징과 default_batch_fetch_size
JPA에서 컬렉션 조회와 페이징을 함께 사용하려면ToOne (OneToMany, OneToOne) 관계를 모두 페치 조인하고, 지연 로딩 성능 최적화를 위해 hibernate.default_batch_fetch_size 옵션을 적용해야 한다.라고 배웠었는데 이 내용이 Spring Data JPA에서도 컬렉션을 조회하면서 페이징 관련된 Pageable, Page 등을 사용하기 위해서는default_batch_fetch_size 를 적용해줘야 하는 거죠??
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
질문있습니다.
처음에 문제를 풀고 문제가 틀렸다고 나와서 강의까지 다봤습니다.우선순위 큐를 사용하지 않아도 풀 수 있을거 같다고 생각했고 실제로 예제도 통과 했고 다른 분이 반례가 있다고 올리셨던 것도 통과 했는데 어느 부분이 잘못되었는지 알고싶습니다.http://boj.kr/4f9206a6cf05456a8fa340a8e2fad5c4코드공유드립니다.
-
미해결
프론트엔드 개발(리액트) 앞으로 어떤 식으로 공부해야할까요?
학교 프로젝트로 웹사이트를 만들었습니다.https://www.novelforum.site/<모바일 대응은 못시켰습니다 ...ㅠㅠ>리액트 정말 기본 강의만 들었고, 구글링해서 구현했습니다. (검색기능(카테고리별, 검색어), 커뮤니티, 보관함 공유 등))지금까지는 cra사용 + 컴포넌트 분할하여 리액트훅(navigate, useState,useEffect)를 써서 동적으로 화면을 구현한게 거의 대부분인 거 같아요.다음 번 프로젝트를 할 때 이보다 더 개선된 프로젝트를 하고 싶은데 어떻게 하면 좋을까요? 가고싶은 기업 채용공고에서 요구하는 기술을 사용하려고 노력해야할까요?아니면 그냥 필요한 기능을 생각하고 그에 필요한 기술을 배워 사용하는게 맞을까요?지금 제 머리속에서 정리한바로는1. 화면 구현 : 부족한 점은 유명한 사이트들 소스 찾아서 유사하게 부분적으로 구현2. 기술 : 유명 회사 채용공고에 쓰이는 기술스택들 분석하고 프로젝트에 반영 인데이 두 가지를 다음 프로젝트 때 반영해보려는데 조언 부탁드립니다..
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
||(or)연산자를 쓰시는 이유가 있나요?
dfs나 bfs문제를 푸실때 if(ny < 0 || ny >= n || nx < 0 || nx >= n) continue; if(a[ny][nx] == 0) continue; if(visited[ny][nx]) continue; 와 같이 or연산을 써서 조건문을 쓰시는데요. and연산자를 쓰지 않고 or연산을 쓰시는 이유가 따로 있으신가요?http://boj.kr/09a17090441545d8ad3b0b7bcac3fb4b 에서 14번 라인과 같이 and연산자로 매번 코드를 짜는데 제가 놓지고 있는게 있나 싶어 여쭈어 봅니다.
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
초기 password 문의
도커를 실행시키고 docker run -d -p 8080:8080 -p 50000:50000 --name jenkins-server --restart=on-failure jenkins/jenkins:lts-jdk11 을 통해 젠킨스 이미지를 다운 받고 실행을 시켰습니다.docker ps 를 통해 jenkins 도커가 실행중임을 확인 하였고, http://127.0.0.1:8080/ 접속을 통해 젠킨스 로그인 창이 뜨는것 까지 확인 했습니다.그런데, 초기 비밀번호는 어디에서 확인할수 있는걸까요? 제가 진행한 Flow에서는 강의영상 9분 46초에 나와있는 화면을 접하지 못했습니다.제가 어떤 부분을 놓친걸까요?
-
미해결실전! Querydsl
PostgreSQL JDBC and json 타입 column 데이터 save
DB mysql 에서는 잘 동작하던 것이 DB 변경할 일이 생겨, mysql -> postgresql 로 전환하였습니다.데이터 insert 시 json 타입 때문에 발생한 에러인데.. 어떻게 조치하면 좋을지 모르겠습니다.SchedulingTask 엔티티@Entity @Getter @Setter @NoArgsConstructor @Slf4j public class SchedulingTask { @Id @Column(name = "task_id") @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Column(columnDefinition = "jsonb") private String requestBodyString; }저장 하는 코드 public SchedulingTask save(Dbaas dbaas, int priority, ReqInfo reqInfo, String requestBodyString) { log.info("requestBodyString : {}", requestBodyString); SchedulingTask schedulingTask = reqInfo2SchedulingTaskMapper.to(reqInfo, requestBodyString, priority, dbaas); log.info("schedulingTask : {}", schedulingTask.getRequestBodyString()); return schedulingTaskRepository.save(schedulingTask); } log2023-06-20T10:19:10.064+09:00 INFO 15806 --- [nio-8087-exec-1] c.k.c.a.s.t.SchedulingTaskTxService : requestBodyString : {"parameter_group_id":"86dc6f7f-75c5-48a2-b0c6-5e07d5c54f5a","request_type":"scheduled instant","reservation_date_time":"2023-09-30 15:02:00"} 2023-06-20T10:19:10.068+09:00 INFO 15806 --- [nio-8087-exec-1] c.k.c.a.s.t.SchedulingTaskTxService : schedulingTask : {"parameter_group_id":"86dc6f7f-75c5-48a2-b0c6-5e07d5c54f5a","request_type":"scheduled instant","reservation_date_time":"2023-09-30 15:02:00"} 2023-06-20T10:19:10.111+09:00 WARN 15806 --- [nio-8087-exec-1] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 0, SQLState: 42804 2023-06-20T10:19:10.111+09:00 ERROR 15806 --- [nio-8087-exec-1] o.h.engine.jdbc.spi.SqlExceptionHelper : ERROR: column "request_body_string" is of type jsonb but expression is of type character varying Hint: You will need to rewrite or cast the expression. Position: 359 repository 에 직접 저장 시, requestBodyString 을 json 으로 직접 바꿔줘야 하나요??
-
해결됨직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피
hwp.XHwpWindows.Item(0).Visible = True 명령어 작성시 에러가 뜹니다.
여러 블로그 나 구글링을 해봤는데 보통은 hwp = win32.gencache.EnsureDispatch("hwpframe.hwpobject")이단계에서 에러가 많이 나더군요. 흠 제 컴퓨터가 이상한건지... 도와주세요!