묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
완전탐색 시간초과
안녕하세요 큰돌님덕분에 알고리즘을 재미있게 공부하고 있습니다!질문사항이 있는데요완전탐색으로 풀이를 해보았는데 시간초과가 났습니다.그래서 방법을 바꿔 visited를 사용하지 않고 풀어보았는데 통과했습니다.시간초과가 발생한 정확한 이유를 모르겠어서 디버깅을 해보았는데 두코드간의 함수호출 횟수가 분명 차이가 있었습니다.하지만 그 원리를 이해하지 못해서 질문드립니다.디버깅을 하면 할수록 머리가 더 복잡해지는것 같습니다...시간초과 코드http://boj.kr/9ca3908dd4624835a28aca2db266321e정답 코드http://boj.kr/18bd16121a7d46ada6f06e4313594796
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
ObjectMapper 작성 후 서버 실행이 안됩니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]2:50초ObjectMapper import하고 코드 작성 후 부터서버 실행이 실패했다고 뜹니다.처음엔 톰캣 문제인줄 알고 지운후 다시 연동해봤으나 안되고objectmapper 부분을 주석처리하니 정상적으로 서버 실행이 됩니다. import com.fasterxml.jackson.databind.ObjectMapper 으로 가져왔는데 혹시 임포트 주소가 잘못된걸까요?
-
미해결실전! 스프링 데이터 JPA
@Query의 트랜잭션에 대해 질문있습니다.
스프링 데이터 jpa에 정의된 save나 findById같은 메서드들은 기본적으로 @Transactional이 포함돼있어서 비지니스 로직 영역에서 @Transactional을 포함하지 않아도 트랜잭션이 걸리면서 잘 실행되는 것을 확인하였는데 @Query로 선언한 네임드 query같은 경우에도 비지니스 로직 영역에서 @Transactional을 포함하지 않아도 트랜잭션이 걸리면서 실행이 되는 것을 확인했습니다. 왜 그런건가요??
-
미해결토비의 스프링 부트 - 이해와 원리
@MyAutoConfiguration 애노테이션 역할
안녕하세요. 토비님.강의를 들으면서 DispatcherServletConfig와 TomcatWebServerConfig 정보는 ...import 파일에서 정보를 가져와서 빈으로 등록하는 것으로 이해하였습니다.그러면 의아했던 점이 ..Config 클래스에 선언한 @MyAutoConfiguration 애노테이션의 역할을 import 파일이 대신 해주고 있는 것으로 이해하였는데, 이 애노테이션도 같이 선언되어있어서 이 애노테이션은 어떤 역할을 하는지 궁금합니다.실제로 @MyAutoConfiguration이 애노테이션을 삭제하고 스프링을 실행해도 정상적으로 동작을 하고 테스트도 통과하였습니다. (강의 내에서 토비님께서 관례상으로 붙인다고 말씀하셨던 것으로 기억을 하는데, 이가 @MyAutoConfiguration 애노테이션을 관례상 붙여준다는 의미였는지는 정확히 잘 모르겠어서 질문드렸습니다.) 좋은 강의 만들어주셔서 잘 듣고 있습니다! 감사합니다!!
-
미해결트렐로 개발로 배우는 Vuejs, Vuex, Vue-Router 프론트엔드 실전 기술
nextTick 관련 질문
ref 태그로 특정 input 태그를 가져와 focus를 주는 과정에서 nextTick 프로퍼티를 통해 작업 순서를 앞당겨주는 것으로 focus를 곧바로 실행시키는 부분은 이해하고 있습니다( nextTickQueue와 MicroTaskQueue는 이벤트루프상 특정 큐의 실행을 마치기 직전 실행하고 종료하는 것으로 알고 있습니다) 그런데 왜 여기서 ref로 잡아낸 태그에 focus를 주는 과정의 렌더링 사이클이 뒤로 밀리는건지 이해를 못했습니다.클릭이벤트 실행시 onAddList 함수를 실행하게되면 해당 click 이벤트가 큐로 빠지고, focus 이벤트도 큐로 빠져서 실행하게 될텐데, 그러면 렌더링 순서에는 문제가 없다고 보아야 하지 않을까요? 이게 단순 자바스크립트 이벤트루프 문제로 보아야할지 뷰 라이프사이클 개념에서 별도의 렌더링 단계가 있다고 보아야할지, 아니면 아예 제가 감을 잘못 잡고 있는건지 헷갈립니다.
-
미해결Java TPC (생각하고, 표현하고, 코딩하고)
선생님 질문있습니다.
부모 클래스의 eat()함수를 자식클래스에서 사용할수는 없는지 궁금해서요. 상속받으면 하위클래스의 eat만 출력되잖아요..
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
H2 시퀀스
[질문 내용]안녕하세요.H2에 시퀀스가 연속적으로 나오지 않고 ID 값이 1,2,33처럼 나옵니다.그래서 다른분들의 질문을 참고해보았는데INFORMATION_SCHEMA에 들어있는 시퀀스를 바꿔야하는데항상 이와 같은 질문에 첨부해주신 블로그에는 따로 시퀀스가 파일??이 존재하였고 그걸 참고로 다양한게 대입해서 바꾸려고 하는데 안되네요... 어떻게 해야하나요.. 대입했던 내용ALTER SEQUENCE HIBERNATE_SEQUENCE RESTART WITH 1ALTER SEQUENCES SEQUENCES RESTART WITH 1 ALTER SEQUENCES INFORMATION_SCHEMA.SEQUENCES RESTART WITH 1
-
해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
추상클래스 (abstract class)와 인터페이스(interface)의 최적의 쓰임?
안녕하세요 나도코딩 선생님...ㅎ몇 주전에 나도코딩 자바편 강의를 완강하고 다시 2회차로 강의를 듣는 중입니다...ㅎ추상 클래스 (abstract class)와 인터페이스(interface) 관련 강의를 들으면서 각각의 특징들 및 차이점들에 대해서 다시 조금씩 알아가고 있는데... (예를 들면, 추상클래스는 abstract 키워드를 가지고, abstract메소드를 가지고 있어서 객체를 생성할 수 없는 반면, 인터페이스(interface)는 보통 -able 키워드, 변수 X, 생성자 X, 오로지 메소드만 있다 등)이 둘, 그러니까 추상 클래스 (abstract class)와 인터페이스(interface)는 '어느 때 (또는 어느 시점)'에 활용하는게 가장 적절한지 디테일하게 알 수 없을까요?항상 좋은 강의와 답변 감사합니다...ㅎ
-
해결됨냉동코더의 알기 쉬운 Modern Android Development 입문
GSON 이 아닌 Moshi 를 사용하시는 이유가 있을까요?
냉동코더님은 GSON 이 아닌 Moshi 를 사용하시는 이유가 무엇인지 궁금하네요!
-
해결됨Slack 클론 코딩[백엔드 with NestJS + TypeORM]
데이터베이스 연결 싪패
DB연결 문제라고 해서, 처음부터 새로 생성해서 시도해보았으나, 에러 코드가 동일하게 출력됩니다ㅠㅠ ==============================시도해본 것들mysql 비밀번호 초기화, 재설정mysql db 다시 세팅dotenv 코드말고 직접 데이터베이스 정보 입력후 실행 터미널 메세지base) C:\Users\user\Downloads\master\a-nest> npm run db:create > a-nest@0.0.1 db:create > ts-node ./node_modules/typeorm-extension/dist/cli/index.js db:create -d ./dataSource.ts C:\Users\user\Downloads\master\a-nest\node_modules\mysql2\lib\packets\packet.js:728 const err = new Error(message); ^ Error: Access denied for user ''@'localhost' (using password: YES) at Packet.asError (C:\Users\user\Downloads\master\a-nest\node_modules\mysql2\lib\packets\packet.js:728:17) at ClientHandshake.execute (C:\Users\user\Downloads\master\a-nest\node_modules\mysql2\lib\commands\command.js:29:26) at Connection.handlePacket (C:\Users\user\Downloads\master\a-nest\node_modules\mysql2\lib\connection.js:489:32) at PacketParser.onPacket (C:\Users\user\Downloads\master\a-nest\node_modules\mysql2\lib\connection.js:94:12) at PacketParser.executeStart (C:\Users\user\Downloads\master\a-nest\node_modules\mysql2\lib\packet_parser.js:75:16) at Socket.<anonymous> (C:\Users\user\Downloads\master\a-nest\node_modules\mysql2\lib\connection.js:101:25) at Socket.emit (node:events:513:28) at Socket.emit (node:domain:489:12) at addChunk (node:internal/streams/readable:324:12) at readableAddChunk (node:internal/streams/readable:297:9) { code: 'ER_ACCESS_DENIED_ERROR', errno: 1045, sqlState: '28000', sqlMessage: "Access denied for user ''@'localhost' (using password: YES)", sql: undefined. } app.module.ts@Module({ imports: [ ConfigModule.forRoot({ isGlobal: true }), TypeOrmModule.forRoot({ type: 'mysql', host: 'localhost', port: 3307, autoLoadEntities: true, entities: [ ChannelChats, ChannelMembers, Channels, DMs, Mentions, Users, WorkspaceMembers, Workspaces, ], keepConnectionAlive: true, migrations: [__dirname + '/migrations/*.ts'], charset: 'utf8mb4_general_ci', synchronize: false, logging: true, }), TypeOrmModule.forFeature([Users]), UsersModule, WorkspacesModule, ChannelsModule, ], controllers: [AppController], providers: [AppService], }) export class AppModule implements NestModule { configure(consumer: MiddlewareConsumer): void { consumer.apply(LoggerMiddleware).forRoutes('*'); // consumer.apply(FrontendMiddleware).forRoutes({ // path: '/**', // method: RequestMethod.ALL, // }); } }
-
미해결실전! Querydsl
@OneToMany 에서 Cascade 되어있는데 foreign key로 연결되어 있는 테이블 삭제가 안됩니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]영상에서 12분 40초 부분에 bulkDelete와 관련된 내용입니다. 저는 일단 예제와는 조금 다르게 진행을 하였는데요. delete 하려는 User entity에는 OneToMany 관계로 되어있는 테이블이 하나 있습니다. 그래서 User entity에 Cascade All을 추가했는데 querydsl에서는 에러가 뜨면서 실행이 안되더라구요.제가알기로는 cascade를 설정해주면 entity가 삭제될 때 관련된 foreign key를 삭제해주는걸로 알고 있는데 아무리 찾아봐도 답이 안보여서 이렇게 질문남깁니다.
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
배열 2개로 푸는 것도 괜찮은 방법인가요 ?
import java.util.*; import java.io.*; public class P03_결혼식 { public static void main(String[] args) throws Exception { // 초기 세팅 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); int[] starts = new int[73]; int[] ends = new int[73]; for (int i=0; i<N; i++) { StringTokenizer st = new StringTokenizer(br.readLine()); int start = Integer.parseInt(st.nextToken()); int end = Integer.parseInt(st.nextToken()); starts[start]++; ends[end]++; } // 로직 int max = 0; int count = 0; for (int i=0; i<starts.length; i++) { count += starts[i]; count -= ends[i]; max = Math.max(max, count); } // 출력 System.out.println(max); } } 저는 이렇게 풀었는데 따로 정렬하는 Class 안 만들고 이렇게 하는것도 괜찮나여 ? 방대한 데이터가 들어왔을 경우에도 문제없는 코드인지 궁금합니다 !
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
properties와 yaml 질문
application.properties로 하면 오류가 뜨고 application.yaml로 하면 문제가 해결이 됩니다.. 뭐가 문제인지 모르겠습니다. spring.output.ansi.enabled=always # DB 설정 spring.datasource.url=jdbc:h2:tcp://localhost/~/capstone spring.datasource.username=sa spring.datasource.password= spring.datasource.driver-class-name=org.h2.Driver # JPA 관련 spring.jpa.hibernate.ddl-auto=create-drop #애플리케이션을 시작할 때 데이터베이스를 초기화하고 다시 테이블 생성 # ddl-auto=none로 하면 데이터 보존 spring.jpa.properties.hibernate.format_sql=true #실행되는 query를 보여준다. # JPA Log -> SQL 로거를 통해 출력, 바인딩 되는 파라미터 확인 2가지 가능하도록 logging.level.org.hibernate.SQL=DEBUG logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE # JPA Log #spring.jpa.show-sql=true system.out은 안되야 하므로 이건 X 위가 application.properties이고 logging: level: org: hibernate: SQL: DEBUG type: descriptor: sql: BasicBinder: TRACE spring: datasource: driver-class-name: org.h2.Driver password: url: jdbc:h2:tcp://localhost/~/capstone username: sa jpa: hibernate: ddl-auto: create-drop #??????? ??? ? ??????? ????? ?? ??? ??' properties: hibernate: format_sql: true #???? query? ????.' output: ansi: enabled: always위가 application.yaml로 실행했을 때 입니다. 어째서 yaml로 해야만 실행되는지 모르겠습니다. 모든 설정은 같은거 같은데 혹시 부트 3.0이라 그런 것인지 궁금합니다.
-
해결됨성공적인 SQL 인젝션 공격을 위한, SQL 기본 문법
질문이요
name과 email을 추가할때 seq번호를 모르고 1로 통일해버렸는데, seq 번호를 1,2,3,4,5로 바꾸는건 어떻게 하나요?
-
미해결Node.js로 웹 크롤링하기
2019년도 영상이라 error가 나는 걸까요? 2-4. csv에 출력하기에서 error
v16.19.18.19.3mac 2-4. csv에 출력하기 Error: Protocol error (Target.createTarget): Target closed.at /Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:74:56at new Promise (<anonymous>)at Connection.send (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:73:12)at Browser._createPageInContext (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:174:47)at BrowserContext.newPage (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:367:26)at Browser.newPage (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:166:33)at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:112:23)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)-- ASYNC --at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:111:15)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)Error: Protocol error (Target.createTarget): Target closed.at /Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:74:56at new Promise (<anonymous>)at Connection.send (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:73:12)at Browser._createPageInContext (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:174:47)at BrowserContext.newPage (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:367:26)at Browser.newPage (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:166:33)at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:112:23)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)-- ASYNC --at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:111:15)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)Error: Protocol error (Target.createTarget): Target closed.at /Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:74:56at new Promise (<anonymous>)at Connection.send (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:73:12)at Browser._createPageInContext (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:174:47)at BrowserContext.newPage (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:367:26)at Browser.newPage (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:166:33)at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:112:23)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)-- ASYNC --at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:111:15)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)Error: Protocol error (Target.createTarget): Target closed.at /Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:74:56at new Promise (<anonymous>)at Connection.send (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:73:12)at Browser._createPageInContext (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:174:47)at BrowserContext.newPage (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:367:26)at Browser.newPage (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:166:33)at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:112:23)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)-- ASYNC --at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:111:15)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)Error: Protocol error (Target.createTarget): Target closed.at /Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:74:56at new Promise (<anonymous>)at Connection.send (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:73:12)at Browser._createPageInContext (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:174:47)at BrowserContext.newPage (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:367:26)at Browser.newPage (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:166:33)at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:112:23)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)-- ASYNC --at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:111:15)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)Error: Protocol error (Target.createTarget): Target closed.at /Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:74:56at new Promise (<anonymous>)at Connection.send (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:73:12)at Browser._createPageInContext (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:174:47)at BrowserContext.newPage (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:367:26)at Browser.newPage (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:166:33)at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:112:23)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)-- ASYNC --at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:111:15)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)Error: Protocol error (Target.createTarget): Target closed.at /Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:74:56at new Promise (<anonymous>)at Connection.send (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:73:12)at Browser._createPageInContext (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:174:47)at BrowserContext.newPage (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:367:26)at Browser.newPage (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:166:33)at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:112:23)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)-- ASYNC --at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:111:15)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)Error: Protocol error (Target.attachToTarget): Target closed.at /Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:74:56at new Promise (<anonymous>)at Connection.send (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:73:12)at Connection.createSession (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:153:36)at Target._sessionFactory (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:116:75)at Target.page (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Target.js:73:32)at Target.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:112:23)at Browser._createPageInContext (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:177:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)at async /Users/youssi/crawler/lecture/index.js:15:20-- ASYNC --at Target.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:111:15)at Browser._createPageInContext (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:177:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)at async /Users/youssi/crawler/lecture/index.js:15:20at async Promise.all (index 0)at async crawler (/Users/youssi/crawler/lecture/index.js:13:5)-- ASYNC --at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:111:15)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)Error: Protocol error (Target.attachToTarget): Target closed.at /Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:74:56at new Promise (<anonymous>)at Connection.send (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:73:12)at Connection.createSession (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:153:36)at Target._sessionFactory (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:116:75)at Target.page (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Target.js:73:32)at Target.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:112:23)at Browser._createPageInContext (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:177:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)at async /Users/youssi/crawler/lecture/index.js:15:20-- ASYNC --at Target.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:111:15)at Browser._createPageInContext (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:177:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)at async /Users/youssi/crawler/lecture/index.js:15:20at async Promise.all (index 1)at async crawler (/Users/youssi/crawler/lecture/index.js:13:5)-- ASYNC --at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:111:15)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)Error: Protocol error (Target.attachToTarget): Target closed.at /Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:74:56at new Promise (<anonymous>)at Connection.send (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:73:12)at Connection.createSession (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Connection.js:153:36)at Target._sessionFactory (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:116:75)at Target.page (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Target.js:73:32)at Target.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:112:23)at Browser._createPageInContext (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:177:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)at async /Users/youssi/crawler/lecture/index.js:15:20-- ASYNC --at Target.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:111:15)at Browser._createPageInContext (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/Browser.js:177:31)at processTicksAndRejections (node:internal/process/task_queues:96:5)at async /Users/youssi/crawler/lecture/index.js:15:20at async Promise.all (index 2)at async crawler (/Users/youssi/crawler/lecture/index.js:13:5)-- ASYNC --at Browser.<anonymous> (/Users/youssi/crawler/lecture/node_modules/puppeteer/lib/helper.js:111:15)at /Users/youssi/crawler/lecture/index.js:15:34at Array.map (<anonymous>)at crawler (/Users/youssi/crawler/lecture/index.js:13:31)at processTicksAndRejections (node:internal/process/task_queues:96:5) index.jsconst parse = require('csv-parse/lib/sync'); const stringify = require('csv-stringify/lib/sync'); const fs = require('fs'); const puppeteer = require('puppeteer'); const csv = fs.readFileSync('csv/data.csv'); const records = parse(csv.toString('utf-8')); const crawler = async () => { try{ const result = []; const browser = await puppeteer.launch({ headless: false }); await Promise.all(records.map(async (r, i) => { try{ const page = await browser.newPage(); await page.goto(r[1]); const scoreEl = await page.$('.score.score_left .star_score'); if (scoreEl) { const text = await page.evaluate((tag) => { return tag.textContent; }, scoreEl); console.log(r[0], '평점', text.trim()); result.push([r[0], r[1], text.trim()]); } await Page.waitFor(3000); await page.close(); } catch (e) { console.error(e); } })); await browser.close(); const str = stringify(result); fs.writeFileSync('csv/result.csv', str); } catch (e) { console.error(e); } }; crawler(); package.json{ "name": "lecture", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "start": "node index" }, "author": "youssi", "license": "MIT", "dependencies": { "axios": "^1.3.4", "cheerio": "^1.0.0-rc.12", "csv-parse": "^4.4.6", "csv-stringify": "^5.3.0", "puppeteer": "^1.13.0", "xlsx": "^0.18.5" } }
-
미해결스프링 핵심 원리 - 기본편
섹션 7 옵션처리강의 4분경 중복 빈 정의 오류
안녕하세요 수업 중 영한님께서 4분경에 전체 Test코드 돌려보실 때 오류가 안 뜨는데 저는 UnsatisfiedDependencyException 오류가 발생합니다. 같은 타입의 빈이 2개 있어서 어떤걸 주입해야하는지 모르는 것 같아서 발생하는 것 같습니다... 그런데 어느 부분을 손대야 할지 모르겠습니다ㅠㅜ....Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'memberServiceImpl' defined in file [C:\Inprun_SpringCore\core\out\production\classes\hello\core\member\MemberServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type 'hello.core.member.MemberRepository' available: expected single matching bean but found 2: memoryMemberRepository,MemberRepository [MemberServiceImpl][MemoryMemberRepository][AutoAppConfig][AppConfig]java.lang.IllegalStateException: Failed to load ApplicationContextat org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:98)at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:124)at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:118)at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:83)at org.springframework.boot.test.autoconfigure.SpringBootDependencyInjectionTestExecutionListener.prepareTestInstance(SpringBootDependencyInjectionTestExecutionListener.java:43)at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:248)at org.springframework.test.context.junit.jupiter.SpringExtension.postProcessTestInstance(SpringExtension.java:138)at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$8(ClassBasedTestDescriptor.java:363)at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.executeAndMaskThrowable(ClassBasedTestDescriptor.java:368)at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$9(ClassBasedTestDescriptor.java:363)at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177)at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1655)at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.java:312)at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:735)at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:734)at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:658)at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.invokeTestInstancePostProcessors(ClassBasedTestDescriptor.java:362)at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$instantiateAndPostProcessTestInstance$6(ClassBasedTestDescriptor.java:283)at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateAndPostProcessTestInstance(ClassBasedTestDescriptor.java:282)at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$4(ClassBasedTestDescriptor.java:272)at java.base/java.util.Optional.orElseGet(Optional.java:369)at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$5(ClassBasedTestDescriptor.java:271)at org.junit.jupiter.engine.execution.TestInstancesProvider.getTestInstances(TestInstancesProvider.java:31)at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$prepare$0(TestMethodTestDescriptor.java:102)at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare(TestMethodTestDescriptor.java:101)at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare(TestMethodTestDescriptor.java:66)at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$prepare$2(NodeTestTask.java:123)at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)at org.junit.platform.engine.support.hierarchical.NodeTestTask.prepare(NodeTestTask.java:123)at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:90)at java.base/java.util.ArrayList.forEach(ArrayList.java:1541)at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)at java.base/java.util.ArrayList.forEach(ArrayList.java:1541)at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35)at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54)at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:107)at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:88)at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:54)at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:67)at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:52)at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute(SessionPerRequestLauncher.java:53)at com.intellij.junit5.JUnit5IdeaTestRunner.startRunnerWithArgs(JUnit5IdeaTestRunner.java:57)at com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute(IdeaTestRunner.java:38)at com.intellij.rt.execution.junit.TestsRepeater.repeat(TestsRepeater.java:11)at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:35)at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:235)at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:54)Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'memberServiceImpl' defined in file [C:\Inprun_SpringCore\core\out\production\classes\hello\core\member\MemberServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type 'hello.core.member.MemberRepository' available: expected single matching bean but found 2: memoryMemberRepository,MemberRepositoryat org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731)at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408)at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)at org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:136)at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:141)at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:90)... 72 moreCaused by: org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type 'hello.core.member.MemberRepository' available: expected single matching bean but found 2: memoryMemberRepository,MemberRepositoryat org.springframework.beans.factory.config.DependencyDescriptor.resolveNotUnique(DependencyDescriptor.java:220)at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1369)at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311)at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)... 90 more
-
해결됨CUDA 프로그래밍 (6) - C/C++/GPU 병렬 컴퓨팅 - 서치 & 소트
예제 코드에 대해서 질문 드립니다.
안녕하세요!38-4 강의를 수강하고 예제 코드를 확인하는 과정에서 몇 가지 궁금증이 생겨 질문을 드립니다.kernel 함수 내 변수에서 register를 붙이시던데 이렇게 붙였을때 이점이 있을까요?두 번째 for문 같은 경우에 halfsize *= 2 이렇게 표현할 수 있는데 비트연산으로 나타 내시던데 이유를 알 수 있을까요??변수를 선언할때 unsigned 만 작성하시던데 이것도 이유가 있을까요??어찌 보면 굉장히 사소할 수 있는 질문들이지만, 그래도 이유를 알면 배울 수 있는 부분이 많을거 같아 질문 드립니다.
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Could not find or load main class 에러 해결
Error: Could not find or load main class jpabook.jpashop.JpashopApplicationCaused by: java.lang.ClassNotFoundException: jpabook.jpashop.JpashopApplication위에 처럼 뜹니다.혼자서 검색도 해보았고 환경변수도 바꿔보았는데 무엇이 문제 인가요? 예전에 학습한다고 해봤을떄는 잘되었는데 지금은 안되네요...지금 파일은 영한님 '강의 소스 코드' 파일 입니다 -> 자바 버전 수정 하니 해결완료됨
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
널 예외가 발생합니다.
안녕하세요.선생님이 작생해 주신 코드를 하나하나 검토를 해봐도 아래와 같이 널 예외가 발생합니다.어떤 문제가 있는걸까요?
-
해결됨코딩테스트 [ ALL IN ONE ]
not stact의 위치 질문입니다.
s= "[({" def re(): arr=[] for i in s: if i =="[": arr.append("]") elif i == "{": arr.append("}") elif i == "(": arr.append(")") elif not arr or arr.pop() != i: print(arr) return False if not arr: return True else: return False print(re())s= "[({" 이라고 할때 not arr의 위치 질문입니다. 마지막 elif문에 not arr조건은 가지 못하니까(for문이 이미 끝났기 때문에) 마지막 elif문이 아니라 for문이 끝나고 arr이 비어 있는지 확인해야 하는거아닌가요??s= "[({" def re(): arr=[] for i in s: if i =="[": arr.append("]") elif i == "{": arr.append("}") elif i == "(": arr.append(")") elif arr.pop() != i: return False if not arr: return True else: return False print(re())위에 식처럼 해야하는 거 아닌지 궁금합니다.답변주시면 정말 감사하겠습니다.