묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결하울의 안드로이드 인스타그램 클론 만들기
signAndSignup()에서 moveMainPage()
moveMainPage()의 괄호 안에 작성한 것을 자바로는 어떻게 작성하는지 알 수 있을까요?? 자바로 개발하고 있는데 코틀린을 자바로 바꾸는게 어렵네요ㅜㅜ
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
Table drop 후 재 생성시, Exception 피하는 법에 대한 문의
섹션7의 고급 매핑 따라하면서 Exception이 발생 하여 질문 드립니다. 섹션7의 고급 매핑처럼, class로 Item, Book, Album, Movie를 만들었습니다. Main Class에 아래 처럼 코딩 하여 돌려면 Movie 와 Item table에 값이 들어 갑니다. Persistence.xml 에 설정이 <property name="hibernate.hbm2ddl.auto" value="create" /> 라서 매번 Debug로 Intellig 실행시 table이 drop 되고 다시 create 됩니다. ====== Persistence.xml =========== <?xml version="1.0" encoding="UTF-8"?><persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence" version="2.1"> <persistence-unit name="hello"> <properties> <!-- 필수 속성 --> <property name="javax.persistence.jdbc.driver" value="org.h2.Driver"/> <property name="javax.persistence.jdbc.user" value="sa"/> <property name="javax.persistence.jdbc.password" value="bistel01"/> <property name="javax.persistence.jdbc.url" value=" jdbc:h2:tcp://localhost/~/h2database"/> <property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect" /> <!-- 옵션 --> <property name="hibernate.show_sql" value="true" /> <property name="hibernate.format_sql" value="true" /> <property name="hibernate.use_sql_comments" value="true" /> <property name="hibernate.id.new_generator_mappings" value="true" /> <property name="hibernate.hbm2ddl.auto" value="create" /> </properties> </persistence-unit></persistence> Intellig 에서 한번 수행은 정상적으로 되나 그후 두번째 debug 로 수행 하면 Table drop 할때 exceptin 이 납니다.Exception을 보면 Item 과 Movie 에 이미 data가 들어가 있고, 두 table 간의 연관 관계가 FK(?) 로 잡혀 져 있는데 Table Drop을 sub table 즉 movie, book, album을 먼저 수행 하고 그 다음에 Item을 해야 하는데 drop 순서가 Albme, Book, Item , Movie 이다 보니 발생 하는 듯 합니다. 이럴때는 어떻게 Table의 연관 관계를 끊나요 .( 오라클은 이처럼 지우면 되는데==> DROP TABLE CASCADE CONSTRAINTS) ======EXCEPTION LOG====== INFO: HHH10001003: Autocommit mode: false 8월 18, 2020 2:47:18 오후 org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl$PooledConnections <init> INFO: HHH000115: Hibernate connection pool size: 20 (min=1) 8월 18, 2020 2:47:18 오후 org.hibernate.dialect.Dialect <init> INFO: HHH000400: Using dialect: org.hibernate.dialect.H2Dialect 8월 18, 2020 2:47:19 오후 org.hibernate.cfg.AnnotationBinder processJoinedDiscriminatorProperties WARN: HHH000457: Joined inheritance hierarchy [hellojpa.shopmall.Item] defined explicit @DiscriminatorColumn. Legacy Hibernate behavior was to ignore the @DiscriminatorColumn. However, as part of issue HHH-6911 we now apply the explicit @DiscriminatorColumn. If you would prefer the legacy behavior, enable the `hibernate.discriminator.ignore_explicit_for_joined` setting (hibernate.discriminator.ignore_explicit_for_joined=true) Hibernate: drop table Album if exists Hibernate: drop table Book if exists Hibernate: drop table Item if exists 8월 18, 2020 2:47:20 오후 org.hibernate.resource.transaction.backend.jdbc.internal.DdlTransactionIsolatorNonJtaImpl getIsolatedConnection INFO: HHH10001501: Connection obtained from JdbcConnectionAccess [org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess@317a118b] for (non-JTA) DDL execution was not in auto-commit mode; the Connection 'local transaction' will be committed and the Connection will be set into auto-commit mode. 8월 18, 2020 2:47:20 오후 org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl handleException WARN: GenerationTarget encountered exception accepting command : Error executing DDL " drop table Item if exists" via JDBC Statement org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL " drop table Item if exists" via JDBC Statement at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:67) at org.hibernate.tool.schema.internal.SchemaDropperImpl.applySqlString(SchemaDropperImpl.java:375) at org.hibernate.tool.schema.internal.SchemaDropperImpl.applySqlStrings(SchemaDropperImpl.java:359) at org.hibernate.tool.schema.internal.SchemaDropperImpl.dropFromMetadata(SchemaDropperImpl.java:241) at org.hibernate.tool.schema.internal.SchemaDropperImpl.performDrop(SchemaDropperImpl.java:154) at org.hibernate.tool.schema.internal.SchemaDropperImpl.doDrop(SchemaDropperImpl.java:126) at org.hibernate.tool.schema.internal.SchemaDropperImpl.doDrop(SchemaDropperImpl.java:112) at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:144) at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:72) at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:310) at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:467) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:939) at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:56) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:79) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54) at hellojpa.JpaMain.main(JpaMain.java:15) Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Cannot drop "ITEM" because "FK5SQ6D5AGRC34ITHPDFS0UMO9G" depends on it; SQL statement: drop table Item if exists [90107-200] at org.h2.message.DbException.getJdbcSQLException(DbException.java:576) at org.h2.message.DbException.getJdbcSQLException(DbException.java:429) at org.h2.message.DbException.get(DbException.java:205) at org.h2.command.ddl.DropTable.prepareDrop(DropTable.java:98) at org.h2.command.ddl.DropTable.update(DropTable.java:124) at org.h2.command.CommandContainer.update(CommandContainer.java:198) at org.h2.command.Command.executeUpdate(Command.java:251) at org.h2.server.TcpServerThread.process(TcpServerThread.java:406) at org.h2.server.TcpServerThread.run(TcpServerThread.java:183) at java.lang.Thread.run(Unknown Source) at org.h2.message.DbException.getJdbcSQLException(DbException.java:576) at org.h2.engine.SessionRemote.done(SessionRemote.java:611) at org.h2.command.CommandRemote.executeUpdate(CommandRemote.java:237) at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:228) at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:201) at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:54) ... 15 more
-
해결됨따라하며 배우는 노드, 리액트 시리즈 - 영화 사이트 만들기
자동완성
강의와 관련있는 질문을 남겨주세요.• 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등)• 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색을 해주세요. (중복 질문을 자제해주세요.)• 서비스 운영 관련 질문은 인프런 우측 하단 ‘문의하기’를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달에도 요령이 필요합니다.• 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요.• 강의실 페이지(/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다.• 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재해주세요. • 수업 특정 구간에 대한 질문은 꼭 영상 타임코드를 남겨주세요! 구체적인 질문일수록 명확한 답을 받을 수 있어요.• 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요.• 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요.• 정확한 질문 내용과 함께 코드를 적어주시거나, 캡쳐 이미지를 첨부하면 더욱 좋습니다. 기본적인 예의를 지켜주세요.• 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. • 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. • 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용은 스팸 처리 등 제재를 가할 수 있습니다. useEffect만 쳐도 useEffect( () => { },input)이렇게 완성되도록 어떻게 설정하나요? ctrl+스페이스 눌려도 useEffect까지만 완성됩니다. 윈도우 사용자입니다. 감사합니다.
-
미해결예제로 배우는 스프링 입문 (개정판)
Web server failed to start. Port 8080 was already in use.
처음 프로그램을 실행하면 잘 실행되는데, 코드를 수정한 후 실행하면 Web server failed to start. Port 8080 was already in use. 에러가 뜹니다 cmd 창에서 해당 포트를 종료한 후 실행하면 잘되는데, 코드를 수정할때마다 포트를 종료시켜줘야하나요?
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
(windows) jupyter notebook 실습환경
향후 colab이나 GCP가 아닌 GPU 컴퓨터의 일반 jupyter notebook 내에서 가능한 실습도 추가가 될 예정인가요?
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
Sklearn LDA클래스 파라미터 질문입니다!
안녕하세요! 질 좋은 강의에 감사인사드립니다! 다름이 아니라 Scikit-learn의 LDA클래스에서 제공하는 하이퍼파라미터인 'max_iter'에 대한 질문입니다. LDA가 동작하는 과정 중에서 모든 단어들이 토픽 할당 분포가 변경되지 않을 때까지 반복적인 수행을 거치기 때문에 이에 관련된 파라미터로 max_iter가 있다고 하셨습니다! 그렇다면 혹시 max_iter를 예를들어 300으로 설정했는데 알고리즘이 동작하다가 200번째에 모든 단어들의 토픽 할당이 수렴이 된다면 그 때 바로 그냥 멈추고 결과를 출력하나요? 마치 XGBoost나 뉴럴네트워크 처럼 early_stopping 기능처럼요! 감사합니다 :)
-
미해결C 프로그래밍 - 입문부터 게임 개발까지
void p(int num) 함수에 char형 "a" 대입
p(int num)이라고 하는 의미가 p라는 함수에는 int형의 변수를 넣으라는 의미이고 그 변수를 함수내에서는 num으로 쓴다는 것으로 이해를 했는데.... char a= "abc" 이렇게 추가하고 p(a)를 하니까 동작이 되면서 "48"로 인식이 됩니다. 제가 이해한 의미가 아닌가요...??
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
도커 질문
안녕하세요! John Ahn님의 React+nodejs+MongoDB를 이용한 쇼핑몰 만들기, 영화앱 만들기 강의를 수강후 완료된 웹에 도커를 사용하고싶어 강의를 수강하게 되었습니다. 이번 강의는 mysql로 강의해주시는거 같은데 mongoDB로 개발한 환경도 이 강의가 도움이 될까요?
-
미해결Svelte 입문 강의 - A부터 Z까지
임포트하는 이유에 대해..
부모 컴포넌트에 자식 컴포넌트를 선언할 때 스크립트 태그에 임포트를 따로 해주는 이유가 있나요? 스크립트 태그에 임포트하지 않고 <Child/> 이런식으로 자식컴포넌트만 선언해줘도 불러와지던데 굳이 임포트하는 이유가 궁금합니다.
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
안녕하세요 css 서버사이드랜더링이안되있어서 질문드립니다.
_document.js 에 적은 코드들인데 이파일에서 css 서버사이드 랜더링하는게 아닌가요? import React from "react"; import Document, { Html, Head, Main, NextScript } from "next/document"; import { ServerStyleSheet } from "styled-components"; export default class MyDocument extends Document { static async getInitialProps(ctx) { const sheet = new ServerStyleSheet(); const originalRenderPage = ctx.renderPage; try { ctx.renderPage = () => originalRenderPage({ enhanceApp: (App) => (props) => sheet.collectStyles(<App {...props} />), }); const initialProps = await Document.getInitialProps(ctx); return { ...initialProps, styles: ( <> {initialProps.styles} {sheet.getStyleElement()} </> ), }; } finally { sheet.seal(); } } render() { return ( <Html> <Head /> <body> <Main /> <script src="https://polyfill.io/v3/polyfill.min.js?features=es6,es7,es8,es9,NodeList.prototype.forEach&flags=gated" /> <NextScript /> </body> </Html> ); } }
-
미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
'pip' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다
저도 pylint do not show again눌러버려서 터미널에서 저 명령어를 치니까 설치가 안된다고 하네요. 찾아보니 파이썬 설치 위치 때문이라는데 어떻게 해야하나요?
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
OrderService의 order() 메서드 파라미터 관련 질문드립니다!
안녕하세요! 쉽고 재밌는 강의 만들어주셔서 감사합니다! OrderService 서비스의 public Long order() 메서드 관련해서 질문드리고자 합니다. 강의해주신 대로는 order() 함수에서는 여러 orderItem을 넣을 수 있는 것으로 설계가 되어 있습니다. 그래서 order 객체를 생성할 때 orderItem 여러 개를 파라미터로 받을 수 있도록 OrderItem... orderItems로 설정해주셨습니다. 그런데 public Long order() 함수에서는 파라미터가 하나의 itemId 및 count만을 받아서 order() 함수 내에서 order 객체를 생성할 때 하나의 orderItem만 추가 가능하다고 생각했습니다. 이 경우 아이템마다 외부에서 item마다 order() 함수를 호출하여 order객체의 필드인 orderItems에 orderItem을 추가하여야 하는 것인지 궁금합니다. 감사합니다!
-
미해결대세는 쿠버네티스 (초급~중급편)
kube-proxy에 대해
kube-proxy 에 대해 자세한 설명좀 부탁드립니다. 검색으로는 잘 이해가 안되네요..대시보드 설명시 잠깐 나오기는 하는데.....이녀석에 대한 특별한 언급은 없었던것 같은데 master에서 보면 kube-proxy 데몬이 /usr/local/bin/kube-proxy --config=/var/lib/kube-proxy/config.conf --hostname-override=k8s-master ps -ef | grep kube-proxy로 보면 항상 떠잇거든요... 실제 config 경로 위치에 config.conf파일도 존재하지도 않고요...죽여도 죽지 않구요... 검색해보면 노드마다 기본적으로 떠있어서 통신하는거라고 하던데 kubelet앞단에서말이죠... 이거 master에는 kube-proxy가 왜 꼭 떠있는건가요? 그리고 게다가 LISTEN 포트가 9000번 이던데 변경가능한지도 궁금하고 또 kill -9 옵션으로 죽여서 바로 되살아나던데 master에 필요한 이유와 안죽는 이유 그리고 포트변경 가능한지 가능하다면 어떻게 변경한지 궁금합니다. 자세한 설명 부탁드릴께요~~감사합니다.
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
상태 관리에 대해 질문드립니다.
이 강의에서 만드는 게임과는 조금 벗어난 이야기이지만 궁금해서 여쭤봅니다. 하나의 객체가 동시에 여러개의 상태를 가질 수 있다면 어떻게 관리하는게 좋을까요? 쉽게 말해 3D액션게임의 경우에는 이동하면서 점프도 하며 점프도중에 스킬도 쓸 수 있는데 이 경우에 열거형으로는 관리가 힘들 것 같습니다. 어떤 방식으로 관리하는게 좋을까요?
-
해결됨파이썬 무료 강의 (활용편1) - 추억의 오락실 게임 만들기 (3시간)
기본기 - 텍스트 부분에서 시간이 화면에 나오지 않아요
안녕하세요. 잘따라가고 있다 생각했는데 화면에 시간이 출력되지 않아 당황스럽네요 ㅠㅠ 10초뒤에 화면 꺼지는건 되는데 (= 시간은 가는데) 그 시간 가는게 나도코딩님처럼 게임화면에 나타나지 않네요 아래는 제 코드입니다..! import pygame pygame.init() # 초기화 (반드시 필요) # 화면 크기 설정 screen_width = 480 # 가로 크기 screen_height = 640 # 세로 크기 screen = pygame.display.set_mode((screen_width,screen_height)) # 화면 타이틀 설정 pygame.display.set_caption("Ureal Game") # 게임 이름 # FPS clock = pygame.time.Clock() # 배경 이미지 불러오기 background = pygame.image.load("C:/realc/PythonWorkSpace/pygame_basic/background.png") # 캐릭터(스프라이트) 불러오기 character = pygame.image.load("C:/realc/PythonWorkSpace/pygame_basic/ch.png") character_size = character.get_rect().size # 이미지의 크기를 구해옴 character_width = character_size[0] # 캐릭터의 가로 크기 character_height = character_size[1] # 캐릭터의 세로 크기 character_x_pos = screen_width / 2 - character_width / 2 # 화면 가로의 절반 크기에 해당하는 곳에 위치 character_y_pos = screen_height - character_height # 화면 세로 크기 가장 아래에 해당하는 곳에 위치 # 이동할 좌표 to_x = 0 to_y = 0 # 이동 속도 character_speed = 1 # 적 enemy 캐릭터 enemy = pygame.image.load("C:/realc/PythonWorkSpace/pygame_basic/enemy.png") enemy_size = enemy.get_rect().size # 이미지의 크기를 구해옴 enemy_width = enemy_size[0] # 캐릭터의 가로 크기 enemy_height = enemy_size[1] # 캐릭터의 세로 크기 enemy_x_pos = screen_width / 2 - enemy_width / 2 # 화면 가로의 절반 크기에 해당하는 곳에 위치 enemy_y_pos = screen_height / 2 - enemy_height / 2 # 화면 세로 크기 가장 아래에 해당하는 곳에 위치 # 폰트 정의 game_font = pygame.font.Font(None, 40) # 폰트 객체 생성 (폰트, 크기) # 총 시간 total_time = 10 # 시작 시간 정보 start_ticks = pygame.time.get_ticks() # 현재 tick 을 받아옴 # 이벤트 루프 running = True # 게임이 진행중인가? while running: dt = clock.tick(60) # 게임화면의 초당 프레임 수를 설정 for event in pygame.event.get(): # 어떤 이벤트가 발생하였는가? if event.type == pygame.QUIT: # 창이 닫히는 이벤트가 발생하였는가? running = False # 게임이 진행중이 아님 if event.type == pygame.KEYDOWN: # 키가 눌러졌는지 확인 if event.key == pygame.K_LEFT: to_x -= character_speed elif event.key == pygame.K_RIGHT: to_x += character_speed elif event.key == pygame.K_UP: to_y -= character_speed elif event.key == pygame.K_DOWN: to_y += character_speed if event.type == pygame.KEYUP: if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT: to_x = 0 elif event.key == pygame.K_UP or event.key == pygame.K_DOWN: to_y = 0 character_x_pos += to_x * dt character_y_pos += to_y * dt if character_x_pos < 0 : character_x_pos = 0 elif character_x_pos > screen_width - character_width : character_x_pos = screen_width - character_width if character_y_pos < 0: character_y_pos = 0 elif character_y_pos > screen_height - character_height : character_y_pos = screen_height - character_height # 충돌 처리를 위한 rect 정보 업데이트 charcter_rect = character.get_rect() charcter_rect.left = character_x_pos charcter_rect.top = character_y_pos enemy_rect = enemy.get_rect() enemy_rect.left = enemy_x_pos enemy_rect.top = enemy_y_pos # 충돌 체크 if charcter_rect.colliderect(enemy_rect): print("충돌했어요") running=False # 타이머 집어 넣기 # 경과 시간 계산 elapsed_time = (pygame.time.get_ticks() - start_ticks) / 1000 # 경과 시간(ms)을 1000으로 나누어서 초(s) 단위로 표시 timer = game_font.render(str(int(total_time - elapsed_time)), True, (255,255,255)) # 출력할 글자, True, 글자 색상 screen.blit(timer, (10,10)) # 만약 시간이 0 이하이면 게임 종료 if total_time - elapsed_time <= 0 : print("타임아웃") running = False screen.blit(background, (0,0)) # 배경 그리기 screen.blit(character, (character_x_pos,character_y_pos)) screen.blit(enemy, (enemy_x_pos,enemy_y_pos)) pygame.display.update() # 게임 화면을 다시 그리기! # 잠시 대기 pygame.time.delay(2000) # 2초 정도 대기 # pygame 종료 pygame.quit()
-
미해결홍정모의 따라하며 배우는 C언어
연습문제
안녕하세요. int flag = scanf("%f", &library[count].price); 에서 int flag라고 변수를 따로만드는 이유는 무엇인가요? scanf("%f", &library[count].price); 이렇게만 해두는거랑 무슨 차이가있나요? #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> #define MAX_TITLE 40 #define MAX_AUTHOR 40 #define MAX_BOOKS 3 char* s_gets(char* st, int n) { char* ret_val; char* find; ret_val = fgets(st, n, stdin); //공백을 포함한 문자열 if (ret_val) { find = strchr(st, '\n'); //st에서 \n을 찾는다. if (find) *find = '\0'; else while (getchar() != '\n') continue; } return ret_val; } struct book { char title[MAX_TITLE]; char author[MAX_AUTHOR]; float price; }; int main() { struct book library[MAX_BOOKS] = { {"Empty","Empty",0.0f}, }; //구조체배열 선언과 초기화 int count = 0; while (1) { printf("Input a book title or press [Enter] to stop.\n>>"); if (s_gets(library[count].title, MAX_TITLE) == NULL) break; if (library[count].title[0] == '\0') break; printf("Input the author.\n>>"); s_gets(library[count].author, MAX_AUTHOR); printf("Input the price.\n>>"); int flag = scanf("%f", &library[count].price); while (getchar() != '\n') continue; //버퍼비우기 count++; if (count == MAX_BOOKS) { printf("No more books.\n"); break; } } if (count > 0) { printf("\nThe list of books:\n"); for (int index = 0; index < count; index++) printf("\"%s\" written by %s: $%.1f\n", library[index].title, library[index].author, library[index].price); } else printf("No books to show.\n"); return 0; }
-
미해결HTML+CSS+JS 포트폴리오 실전 퍼블리싱(시즌1)
오디오가 들렸다 안들렸다 합니다
이건 안 들릴때구요 이건 들릴때 인데 audio 태그 images 앞에 /을 붙이거나 src코드를 다시 작성하거나 하면 갑자기 이렇게 들릴때도 있어요 근데 저장하고 새로고침 하면 또 다시 안 들립니다 진짜 바로 듣고싶으면 controls 태그를 넣어서 화면에서 직접 켜줘야 들을수 있어요 이때는 개발자도구 콘솔창에 GET http://127.0.0.1:2809/favicon.ico 404 (Not Found) 라는 문구가 뜨면서 favicon.ico와 piano-bgm.mp3 파일이 전달됩니다 그전에는 없다가요 파비콘은 쓰지도 않았는데 이게 왜 뜨는거죠? 개발자도구 네트워크에 piano-bgm.mp3 파일 눌러보면 Failed to load response data라고 뜹니다 파일경로도 완벽하고 코드도 틀린것이 없는데 오디오 전까지는 다 잘됬는데 뭐가 문제인지 잘 모르겠습니다 도와주세요
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 챗봇 사이트 만들기
자동 스크롤
대화가 진행될 때 스크롤을 자동으로 아래로 내려가게 할려면 어떻게 해야하나요 ? 도와주세요!
-
해결됨스프링 시큐리티
한글 인코딩 오류
안녕하세요. 한글 인코딩 오류 문제로 문의 드립니다. FormAccessDeniedHandler class의 handle method에서 accessDeniedException.getMessage() 의 결과값이 강의의 영문과는 다르게 한글로 "접근이 거부되었습니다."가 리턴이 되었습니다. 이 경우 LoginController class의 @RequestParam(value = "exception", required = false) String exception 인자에서 넘겨받은 "접근이 거부되었습니다." String이 "??? ???????."로 넘어오는데요. 혹시 원인으로 짐작되시는게 있으실까요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
sagas/ user.js 에서 result로 받은 user 정보를 me에 넣어줄때 ...
sagas/ user.js 에서 result로 받은 값을 data: result로 하지 않고 왜 data: result.data로 넣는지 궁금합니다. function* logIn(action) { try { const result = yield call(logInAPI, action.data); yield put({ type: LOG_IN_SUCCESS, data: result.data, // 서버로 부터 결과를 받는다. }); } catch (err) { yield put({ type: LOG_IN_FAILURE, error: err.response.data, }); } }