선생님! AWS에 이미지 호스팅 서비스 관련해서 궁금한게 있습니다. 제가 테스트를 해봤는데 썸네일 이미지 크기(가로/세로)에 상관없이 실제 운영 환경에는 동일한 크기의 썸네일 이미지로 보여지더라구요. 그러면 이게 AWS 이미지 호스팅 할 때 이미지 크기를 리사이징해서 조절해주는 작업이 일어나는거라고 저는 추측하고 있는데요. 만약 이런 작업이 일어난다면 결국 AWS에 불필요한 작업으로 인한 비용이 발생이 되는거라서... 혹시 이미지 사이즈 크기에 대한 팁이 있을까요?
강의의 3분 정도 쯤에, (beforeLogin)/i 폴더와 파일들을 (beforeLogin)/@modal/(i) 로 복사 한 후 http://localhost:3000/i/flow/login 접속시 무한 GET 접속 시도가 터미널 창에 보입니다. 이때, <Link href ="login" className ={styles.login}>로그인</Link> 입니다. 그런데, <Link href ="/i/flow/login" className ={styles.login}>로그인</Link> 변경하면, http://localhost:3000/i/flow/login 접속시, 터미널 창에서는 무한 GET 접속시도는 사라집니다. 어떻게 해서 이렇게 되는지요?
강의 50초 정도에, i, login, page.tsx는 {children}에서 렌더링, 여기는 (@modal 의 하위 폴더와 파일 선택) {modal}에서 되죠? 라고 설명하시는 부분이 이해가 안됩니다. 저는, app/(beforeLogin)/layout.tsx 의 {children}은 app/(beforeLogin)/page.tsx 를 가져오는 것이고, {modal}은 @modal 폴더의 page.tsx (default.tsx, i/flow/login/폴더로 리다이렉션) 를 찾는 것으로 이했습니다. 여러 폴더를 모두 보여준다고 설명하신듯하여, 이해가 안되네요.
안녕하세요. 항상 좋은 인사이트와 경험을 공유해주셔서 감사드립니다. 최근 프론트엔드 개발을 공부하면서 "Content Attribute"와 "IDL Attribute"의 사용 방식에 대해 고민하게 되었습니다. 이를 정리해보면서 나름대로 다음과 같은 결론에 이르렀습니다. Content Attribute는 변하지 않는 어트리뷰트 값이나 리소스를 표현할 때 사용하고, 그 외, 동적으로 핸들링이 필요한 경우에는 IDL Attribute를 사용하는 것이 맞다고 이해하고 있습니다. 이러한 개념을 공부하면서, 현업에서 다양한 코드들을 보게 되었는데요, 특히 주니어 개발자분들이 작성한 코드에서는 Content Attribute를 많이 사용하는 반면, 시니어 개발자나 CTO급 분들의 코드에서는 Content Attribute 사용이 상대적으로 적고, 대부분 IDL Attribute를 적극적으로 사용하는 모습을 많이 볼 수 있었습니다. 이런 현상을 보며 자연스럽게 궁금증이 생겼습니다. 왜 경험 많은 개발자일수록 Content Attribute 사용이 줄어드는 걸까? Content Attribute 방식과 IDL Attribute 방식에 대해 어떻게 생각하시고, 어떤 기준으로 선택하시는지 궁금합니다. 혹시 이 부분에 대해 간단히 의견을 들려주실 수 있다면 큰 도움이 될 것 같습니다. (물론 바쁘시다면 답변 주시지 않아도 괜찮습니다! 이렇게 질문을 정리하는 과정만으로도 많은 공부가 되고 있습니다.) 읽어주셔서 감사합니다. 좋은 하루 되세요.
2분 22초에서 return 문 앞에 const sunriseData = weatherData ? new Date(weatherData.sys.sunrise); 이렇게 코드를 적었는데 이후의 코드에서는 갑자기 보이지 않아 이 코드는 어디가고 이후의 return 앞에는 이 코드가 오게 되었는지 궁금합니다. const formatTime = timestamp => { const date = new Date((timestamp - 9 * 3600) * 1000); // UTC timestamp에 9시간 추가 return date.toLocaleTimeString([], {hour: '2-digit', minute: '2-digit'}); // 로컬 시간으로 포맷 }; 제가 이해할 때는 sunriseData가 wetherData의 unixtime을 현재 우리가 보는 시간으로 바꾸어 저장하는 것인데... 아래의 formatTime은 sunriseData를 대체한 코드인가요?(시차도 적용한?)
p id =one onclick=show() 1. five 오브젝트를 클릭할때 one onclick 이벤트삭제 2. five 오브젝트를 클릭할때 one onclick null 로 재할당 2번을 쓰게 되는 경우가 어떤경우가 일까요? 1번방법이 일반적으로 쓰게될 것 같다는 생각이 듭니다
둘의 차이를 테스트 해본 결과 아래와 같은 결과가 나왔습니다. CascadeType.REMOVE 의 경우는 findParent.getChildList().remove(0) 를 해도 자식이 삭제가 안 되고 orphanRemoval = true 는 삭제가 된다. (대신, CascadeType.PERSIST 가 있어야지만 됨) 여기서 의문인 점이 있습니다. orphanRemoval = true 의 경우 왜 CascadeType.PERSIST 가 있을 때만 그렇게 작동하나요?
최근 구글 비공개 테스트 정책으로 인해 12인이 2주동안 테스트가 들어가야하고 만약 허가가 나지않았을시에 다시 2주동안 테스트를 해야하는 문제들이 있는거같은데 저 또한 이러한 문제를 피하기 위해 개인사업자로 duns를 발급하여 조직계정으로 만드는거까지 생각해봤는데 이것 또한 구글 정책으로인해 개인사업자는 개인으로 하지않으면 결제프로필에 문제가 생기는거같습니다.. 이러한 구글정책으로인해 신규진입하는저로써는 이렇게 좀비님처럼 다작으로하는 앱 개발에서 돈을 벌수 있을까라는 생각이들어 선뜻 손이가질않더라구요 좀비님은 이러한 상황에서 앱 개발 신규진입에서도 가능성이 있다고 생각 하시는지 궁금합니다
========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 현재 자동차에 엔진만 사용되기 때문에 내부 클래스로 넣었는데, 만약 차량 실내 작업(계기판 켜지기, 엠비언트 라이트 점등) 클래스가 하나가 더 있다면 inner 클래스를 두개 만드는게 맞는걸까요? .. 아니면 엔진, 실내 작업 두개를 따로 독립적으로 만드는게 나은걸까요? 문의 드립니다~
안녕하세요 코드를 쳐보다가 궁금증이 생겼습니다. 지난번 채팅프로그램은 클라이언트가 서버에 연결되면 연결된 클라이언트와 서버 소켓이 /exit할때까지 끊기지 않았는데요 이번 예시에서는 사용자가 /, /site1, /site2, /search?q=hello 이렇게 각각의 다른 url로 이동할때마다 서버와 클라이언트의 연결이 새로되고 소켓도 새로 생성되는건가요?
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
repository를 user를 다룰때는 repository라는 패키지를 따로 만들어서 했는데, 지금 강의의 book에 관한 repositorty를 따로 만들지 않고 인터페이스만 객체와 같은 패키지에 만들어서 extends로 jpa를 받기 때문에 따로 만들 필요가 없어서 이렇게 만든거라고 이해 했는데 맞게 이해한걸까요? 즉, jpa를 익스텐즈한 인테페이스 덕분에 따로 sql문법을 작성하지 않았다는 말이 맞을까요?> 추가로 왜 객체가 있는 패키지에 인터페이스를 만드는 이유가 띠로 있나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 현재 이렇게 까지만 생성이 되었습니다. 에러로그와 소스코드는 제일 하단에 있습니다! ngframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:390) ~[spring-orm-6.2.6.jar:6.2.6] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:419) ~[spring-orm-6.2.6.jar:6.2.6] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:400) ~[spring-orm-6.2.6.jar:6.2.6] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:366) ~[spring-orm-6.2.6.jar:6.2.6] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1865) ~[spring-beans-6.2.6.jar:6.2.6] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1814) ~[spring-beans-6.2.6.jar:6.2.6] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:607) ~[spring-beans-6.2.6.jar:6.2.6] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) ~[spring-beans-6.2.6.jar:6.2.6] at org.springframework.beans.factory.support .AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) ~[spring-beans-6.2.6.jar:6.2.6] at org.springframework.beans.factory.support .DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) ~[spring-beans-6.2.6.jar:6.2.6] at org.springframework.beans.factory.support .AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) ~[spring-beans-6.2.6.jar:6.2.6] at org.springframework.beans.factory.support .AbstractBeanFactory.getBean(AbstractBeanFactory.java:207) ~[spring-beans-6.2.6.jar:6.2.6] at org.springframework.context.support .AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:970) ~[spring-context-6.2.6.jar:6.2.6] at org.springframework.context.support .AbstractApplicationContext.refresh(AbstractApplicationContext.java:627) ~[spring-context-6.2.6.jar:6.2.6] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) ~[spring-boot-3.4.5.jar:3.4.5] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) ~[spring-boot-3.4.5.jar:3.4.5] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439) ~[spring-boot-3.4.5.jar:3.4.5] at org.springframework.boot.SpringApplication.run (SpringApplication.java:318) ~[spring-boot-3.4.5.jar:3.4.5] at org.springframework.boot.SpringApplication.run (SpringApplication.java:1362) ~[spring-boot-3.4.5.jar:3.4.5] at org.springframework.boot.SpringApplication.run (SpringApplication.java:1351) ~[spring-boot-3.4.5.jar:3.4.5] at jpabook.jpashop.JpashopApplication.main(JpashopApplication.java:10) ~[main/:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:568) ~[na:na] at org.springframework.boot.devtools.restart.RestartLauncher.run (RestartLauncher.java:50) ~[spring-boot-devtools-3.4.5.jar:3.4.5] Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Syntax error in SQL statement "create table delivery (delivery_id bigint not null, city varchar(255), street varchar(255), zipcode varchar(255), status enum ([*]), primary key (delivery_id))"; expected "INTERSECTS (, NOT, EXISTS, UNIQUE, INTERSECTS"; SQL statement: create table delivery (delivery_id bigint not null, city varchar(255), street varchar(255), zipcode varchar(255), status enum (), primary key (delivery_id)) [42001-232] at org.h2.message.DbException.getJdbcSQLException(DbException.java:514) ~[h2-2.3.232.jar:2.3.232] at org.h2.engine.SessionRemote.readSQLException(SessionRemote.java:663) ~[h2-2.3.232.jar:2.3.232] at org.h2.engine.SessionRemote.readException(SessionRemote.java:646) ~[h2-2.3.232.jar:2.3.232] at org.h2.engine.SessionRemote.done(SessionRemote.java:620) ~[h2-2.3.232.jar:2.3.232] at org.h2.command.CommandRemote.prepare(CommandRemote.java:84) ~[h2-2.3.232.jar:2.3.232] at org.h2.command.CommandRemote.<init>(CommandRemote.java:56) ~[h2-2.3.232.jar:2.3.232] at org.h2.engine.SessionRemote.prepareCommand(SessionRemote.java:488) ~[h2-2.3.232.jar:2.3.232] at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1164) ~[h2-2.3.232.jar:2.3.232] at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:245) ~[h2-2.3.232.jar:2.3.232] at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:231) ~[h2-2.3.232.jar:2.3.232] at com.zaxxer.hikari.pool.ProxyStatement.execute(ProxyStatement.java:94) ~[HikariCP-5.1.0.jar:na] at com.zaxxer.hikari.pool.HikariProxyStatement.execute( HikariProxyStatement.java ) ~[HikariCP-5.1.0.jar:na] at com.p6spy.engine.wrapper.StatementWrapper.execute(StatementWrapper.java:115) ~[p6spy-3.9.0.jar:na] at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:80) ~[ hibernate-core-6.6.13.Final .jar: 6.6.13.Final ] ... 44 common frames omitted 이런식으로 에러가 발생하는데 mappedby, @Table 등 설정이 다 되어 있는데 이러한 오류가 발생합니다. 따로 설정한 건 없는데도 이런 오류가 발생을 하네요.. 확인부탁드립니다..! https://drive.google.com/file/d/1XoIDg25sc6iJ0yxQK5RGylSvs38GpiA7/view?usp=sharing
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 내부클래스 활용편에서 car, engine등이 서로의 역할을 강의에서 설정하여 설명하는데... 클래스(설계)를 만드는 처음 구성 방법에 대한 설명은 없는지요? 피그마(?)를 사용해야 하나요?