오타 제보합니다
미해결
김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
사소한 부분이긴 하지만 오타 제보합니다. synchronized vs ReentrantLock 대기 파트의 ReentrantLock 의 대기2: await() 대기 부분에서 WAITING 상대 로 대기 -> WAITING 상태 로 대기 로 수정이 필요할 것 같습니다. 감사합니다.
- java
- 객체지향
- 동시성
- multithread
- thread
172만명의 커뮤니티!! 함께 토론해봐요.
미해결
김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
사소한 부분이긴 하지만 오타 제보합니다. synchronized vs ReentrantLock 대기 파트의 ReentrantLock 의 대기2: await() 대기 부분에서 WAITING 상대 로 대기 -> WAITING 상태 로 대기 로 수정이 필요할 것 같습니다. 감사합니다.
미해결
실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
영상이 만들어진지 시간이 지나서 그런지 프로젝트 자체가 설정이 오래되 자바, gradle 버전 업그레이드하고 존재하지 않는 패키지 포함시켜주니 이런 에러가 뜨면서 실행이 되질 않습니다. 뭐가 문제일 까요.. window11에 java 버전 17입니다.
해결됨
토비의 스프링 6 - 이해와 원리
안녕하세요 토비님, IntelliJ 에서 Ultimate 에디션 인데 Spring Initializr 가 없습니다. 대신 Spring Boot 가 있습니다. IntelliJ 버전은 2024.1.6 입니다. IntelliJ 버전이 올라가면서 변경된 것이 맞는지요. 구글링을 해봐도 다들 커뮤너티 버전 이야기 밖에 없네요. 재미 있는건 플러그인을 확인해 보면 분명히 installed 에 설치 되어 있다고 나옵니다. 제 맥에 설치된 IntelliJ 의 문제 라고 생각 했지만 다른 맥에 역시 동일한 최신 버전의 IntelliJ 를 설치 후 확인해 보니 동일 합니다. 변경된 것이 맞을까요?
해결됨
스스로 구축하는 AWS 클라우드 네트워크 - 기본편
안녕하세요 강의 잘 보고 있습니다 선생님이 실습하신것 처럼 sg 인바운드 80열고 아웃바운드는 디폴트 nacl도 디폴트 그대로 사용하고 있는데(all port range) 웹으로 public ip를 접속하면 접속이 되지 않는데.. 체크해야될 부분이 또 있을까요??
미해결
Java 마이크로서비스(MSA) 프로젝트 실습
config파일이 생성이 되면.. item-service 프로젝트에서.. 만드는 과정중에 에러가 발생하였습니다. 아래와 같은 이슈가 발생되는데.. 해결 방법이 있을까요? 2024-08-13T23:22:04.431+09:00 DEBUG 50092 --- [mstudy] [ restartedMain] o.s.b.d.LoggingFailureAnalysisReporter : Application failed to start due to an exception org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Failed to determine a suitable driver class at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineDriverClassName(DataSourceProperties.java:186) ~[spring-boot-autoconfigure-3.3.2.jar:3.3.2] at org.springframework.boot.autoconfigure.jdbc.PropertiesJdbcConnectionDetails.getDriverClassName(PropertiesJdbcConnectionDetails.java:49) ~[spring-boot-autoconfigure-3.3.2.jar:3.3.2] at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:55) ~[spring-boot-autoconfigure-3.3.2.jar:3.3.2] at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari.dataSource(DataSourceConfiguration.java:117) ~[spring-boot-autoconfigure-3.3.2.jar:3.3.2] at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:578) ~[na:na] at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:146) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:644) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:636) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1355) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1185) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:904) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:782) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:542) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1355) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1185) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:313) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:205) ~[spring-beans-6.1.11.jar:6.1.11] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:954) ~[spring-context-6.1.11.jar:6.1.11] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:625) ~[spring-context-6.1.11.jar:6.1.11] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) ~[spring-boot-3.3.2.jar:3.3.2] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754) ~[spring-boot-3.3.2.jar:3.3.2] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:456) ~[spring-boot-3.3.2.jar:3.3.2] at org.springframework.boot.SpringApplication.run(SpringApplication.java:335) ~[spring-boot-3.3.2.jar:3.3.2] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1363) ~[spring-boot-3.3.2.jar:3.3.2] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1352) ~[spring-boot-3.3.2.jar:3.3.2] at com.study.mstudy.MstudyApplication.main(MstudyApplication.java:10) ~[classes/:na] at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:578) ~[na:na] at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) ~[spring-boot-devtools-3.3.2.jar:3.3.2] 2024-08-13T23:22:04.437+09:00 ERROR 50092 --- [mstudy] [ restartedMain] o.s.b.d.LoggingFailureAnalysisReporter : *************************** APPLICATION FAILED TO START *************************** Description: Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine a suitable driver class Action: Consider the following: If you want an embedded database (H2, HSQL or Derby), please put it on the classpath. If you have database settings to be loaded from a particular profile you may need to activate it (the profiles local are currently active). Process finished with exit code 0
미해결
자바 ORM 표준 JPA 프로그래밍 - 기본편
Error performing load command org.hibernate.InstantiationException: No default constructor for entity 'hellojpa.Member' 이렇게 에러가 나왔는데 어딜 봐야할까요????? 이전까지 잘 됐는데, 변경부분터 저렇게 에러가 뜨네요
미해결
김영한의 실전 자바 - 중급 2편
영상 볼때 옆에 툴바에 커리큘럼 누르면 동영상 목록뜨고 수업 들으면 자동으로 체크 되자나요. 이거 체크 해제 어떻게 하나요. 만약 체크해제 기능이 없으면 유저들을 위해서 만들어 주시면 좋을거 같아요
해결됨
비전공자도 이해할 수 있는 CI/CD 입문·실전
IAM 설정을 처음해보면서 역할과 정책에 대한 개념이 아직 제대로 이해되지 않은거 같아 질문드립니다. '다른 AWS 리소스에 접근하기 위해선 역할이나 사용자를 생성해 그 안에서 정책을 연결해서 권한을 부여해야한다.' 이렇게 이해했는데 맞을까요? ec2에서는 역할을 만들때 정책을 생성했는데 CodeDeploy에서는 정책을 설정하지 않아도 되는 이유가 궁금합니다. EC2 인스턴스는 역할 연결을 통해, github actions는 엑세스 키를 통해 권한을 부여받는다고 이해했는데 맞을까요?
해결됨
비전공자도 이해할 수 있는 CI/CD 입문·실전
강의 및 노션에 있는 부분을 최대한 응용해서, next.js app을 생성중입니다. ecr 저장소에서 도커 이미지가 확실히 푸시되었지만, ssh접속에서 에러가 발생했습니다. ======CMD====== docker stop instagram-server || true docker rm instagram-server || true docker pull 767398114270.dkr.ecr.ap-northeast-2.amazonaws.com/instagram-server:latest docker run -d --name instagram-server -p 3000:3000 767398114270.dkr.ecr.ap-northeast-2.amazonaws.com/instagram-server:latest ======END====== err: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.44/containers/instagram-server/stop": dial unix /var/run/docker.sock: connect: permission denied err: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Delete "http://%2Fvar%2Frun%2Fdocker.sock/v1.44/containers/instagram-server": dial unix /var/run/docker.sock: connect: permission denied err: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.44/images/create?fromImage=767398114270.dkr.ecr.ap-northeast-2.amazonaws.com%2Finstagram-server&tag=latest": dial unix /var/run/docker.sock: connect: permission denied 2024/08/13 11:11:21 Process exited with status 1 그래서 workflow를 수정했는데, 밑에 처럼 진행하니 정상처리가 되었습니다. - name: SSH로 EC2에 접속하기 uses: appleboy/ssh-action@v1.0.3 with: host: ${{ secrets.EC2_HOST }} # 인스턴스의 퍼블릭 IP 또는 DNS 이름 username: ${{ secrets.EC2_USERNAME }} # 일반적으로 'ubuntu' 또는 'ec2-user' key: ${{ secrets.EC2_PRIVATE_KEY }} # SSH 개인 키 script_stop: true script: | aws ecr get-login-password --region ap-northeast-2 | sudo docker login --username AWS --password-stdin ${{ steps.login-ecr.outputs.registry }} sudo docker stop instagram-server || true sudo docker rm instagram-server || true sudo docker pull ${{ steps.login-ecr.outputs.registry }}/instagram-server:latest sudo docker run -d --name instagram-server -p 3000:3000 ${{ steps.login-ecr.outputs.registry }}/instagram-server:latest 혹시 제가 실수하거나 놓친 부분이있을까요??
해결됨
Flutter로 웹 서비스 개발하기 (1) - Responsive Web
이후의 강의 일정은 언제쯤 잡고 계신가요? 플러터에서의 SEO강의 너무 듣고 싶어요.. ㅎㅎㅎ
미해결
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
첫번째 스크린샷 build ~ using을 인텔리제이로 썼을 땐 에러가 안 나는데 이번 강의에서 gradle(default)로 설정한 후 main함수 실행 시 에러가 뜨며 실행이 되지 않습니다. 다른 질문들 참고해봤는데 다른 건 없고 계속 똑같은 오류가 뜨더라구요.. 해결 방법이 있을까요?
미해결
Java 마이크로서비스(MSA) 프로젝트 실습
package com.study.mstudy.item.controller; import com.study.mstudy.item.dto.ItemDTO; import com.study.mstudy.item.dto.ResponseDTO; import com.study.mstudy.item.service.ItemService; import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; @RestController @RequestMapping(value="v1/item") @Slf4j @RequiredArgsConstructor public class ItemController { private final ItemService itemService; @RequestMapping(value="/add",method= RequestMethod.POST) public ResponseEntity<ResponseDTO> add(@Valid @RequestBody ItemDTO itemDTO){ ResponseDTO.ResponseDTOBuilder responseDTOBuilder = ResponseDTO.builder(); itemService.insertItem(itemDTO); log.debug("request add item id= {}",itemDTO.getId()); responseDTOBuilder.code("200").message("success"); return ResponseEntity.ok(responseDTOBuilder.build()); } } package com.study.mstudy.item.dto;import jakarta.validation.constraints.NotBlank;import jakarta.validation.constraints.Positive;import jakarta.validation.constraints.Size;import lombok.Data;@Datapublic class ItemDTO {@NotBlank(message = "ID는 필수 입력 값입니다.")@Size(max=10, message = "ID는 크기 10이하까지 작성가능합니다.")private String id; @Size(max=20, message = "이름은 20자까지 작성가능합니다.")private String name; @Size(max=200, message = "설명은 최대 200자까지 작성가능합니다.")private String description; @Positive private long count; private String regDts; private String updDts;} 예제 보고 따라했으나.. 결과는 이미지 처럼 나오는데 저도 포스트맨으로 설정하면 선생님처럼 나오게하고 싶은데 방법이 있을까요?
해결됨
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
. . . java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory 예외가 발생하여 빌드가 되지 않습니다. 자주 묻는 질문에도 해당 내용이 없는 것 같습니다.
해결됨
토비의 스프링 6 - 이해와 원리
안녕하세요. 섹션3 마지막 도메인 오브젝트 테스트에서 한 줄로 줄이기 해보라고 하셨는데, 제 생각이 맞는건지 코멘트 부탁드리겠습니다. @Component public class PaymentService { private final ExRateProvider provider; //private final Clock clock; public PaymentService(ExRateProvider provider/*, Clock clock*/) { this.provider = provider; //this.clock = clock; } public Payment prepare(Long orderId, String currency , BigDecimal foreignCurrencyAmount) throws IOException { return Payment.createPrepared(orderId, currency, foreignCurrencyAmount, this.provider); } } static Payment createPrepared(Long orderId, String currency, BigDecimal foreignCurrencyAmount, ExRateProvider exRateProvider) throws IOException { BigDecimal exchangeRate = exRateProvider.getExRate(currency); BigDecimal convertedAmount = foreignCurrencyAmount.multiply(exchangeRate); LocalDateTime validUntil = LocalDateTime.now(Clock.fixed(Instant.now(), ZoneId.systemDefault())).plusMinutes(30); return new Payment(orderId, currency, foreignCurrencyAmount, exchangeRate, convertedAmount, validUntil); } 웹환경 기준으로는 사용자 각각의 요청마다 payment가 달라야하고 따라서 유효시간도 다를것이기 때문에, Payment 자체나 Clock.systemDefaltZone()을 바로 싱글톤한 Bean으로 등록하면 안될 것 같더라고요. (테스트돌려보니 다른 객체라도 무조건 시간 같게 나오는 것 확인) 이렇게 작성해도 또 다른 문제는 없는지 확인부탁드립니다.
해결됨
(2026 최신!) 일주일만에 합격하는 정보처리기사 실기
내가 나를 낳은 형태에서 예제와 같이 special draw를 호출하면 오류가 나지 않을까요??
미해결
AWS Certified Solutions Architect - Associate 자격증 준비하기
안녕하세요 수강신청 연장이 가능할까요? 감사합니다.
미해결
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] @NotEmpty어노테이션이 임포트가 안됩니다 혹시 버전차이때문에 그런건가요?
미해결
AWS로 쉽고 빠르지만 아주 견고한 서버 환경을 구축하는 방법
안녕하세요, 회사에서 GCP에서 AWS로 인프라를 이관 중에 있습니다. 강의를 들으면서 개발 서버를 이관했고 ECS에 서비스를 작동 중입니다. 하지만, Deploy는 Failed 하고 504 timeout-error가 발생하면서 ALB의 IP들도 모두 unhealthy 상태입니다. 이상한 점은 ECS에서 서비스 로그를 확인하면 스케줄러로 등록해뒀던 작업들이 실행되는 로그를 확인할 수 있습니다. 이로 미루어 볼때 서버는 실행이 되고 있는 상태이나 외부에서 접근이 안되는 것 같아 security-group 과 vpc 설정, 포트도 확인을 해봤었는데요. 그래도 해결을 못하고 있어서 이렇게 질문 남겨 둡니다. ㅠㅠ ALB Resource map 2. ECS service 상태 서비스 이벤트 로그 service has started 1 tasks: task ******* Amazon ECS replaced 1 tasks due to an unhealthy status. service registered 1 targets in target-group ***** service port 3000 is unhealthy in target-group *** due to (reason Health checks failed). service deployment *** deployment failed: tasks failed to start.
미해결
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 혹시 slf4j가 보안에 취약하다고 Logback를 사용하라는 블로그글을 본 적이 있는데 혹시 사실인가요?? 보안이 뚫렸다고 표현을 해서 궁금합니다
해결됨
자바 ORM 표준 JPA 프로그래밍 - 기본편
List<Team> result1 = em.createQuery("select t from Member m join m.team t", Team.class) .getResultList(); List<Team> result2 = em.createQuery("select t from Member m join Team t on m.id = t.id", Team.class) .getResultList(); 강의에서는 result1과 같이 jpql을 작성했는데 result2처럼 jpql을 작성해도 되는지 궁금합니다.