분류 전체보기590 [에러 해결] Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured 에러 문구 : Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured 에러 원인 : 프로젝트 생성시 spring-data-jpa 의존성을 추가하면, 이 의존성이 application.yml 설정을 읽어서 DB 설정을 자동으로 해준다. 그런데 yml에 DB에 url을 지정되어 있지 않아서 DB에 연결할 수 없다고 발생한 에러이다. implementation 'org.springframework.boot:spring-boot-starter-data-jpa' 에러 해결 : 아래처럼 yml 파일에 DB 관련 정보들을 추가해 주면 된다. spring: jpa: hib.. 2023. 8. 8. [에러해결] Could not find com.mysql:mysql-connector-j:. 에러문구 : Could not find com.mysql:mysql-connector-j:. 에러 원인 & 해결 mysql connector 드라이버를 gradle에서 'runtimeOnly 'mysql:mysql-connector-java' 으로 변경. 스프링 부트 버전에 따라 'mysql:mysql-connector-java', 'com.mysql:mysql-connector-j' 맞는 라이브러리를 사용해야 하는 것 같은데, 초기 프로젝트 생성시에 스프링부트 3.0.0↑ 위의 버전으로 생성하고, 2.6.7 버전으로 gradle에서 임의로 바꾸어서, 스프링 부트와 mysql connector 드라이버와 버전 호환이 안 되서 발생한 문제로 추정됨. //runtimeOnly 'com.mysql:mysql-.. 2023. 8. 8. 비동기 프로그래밍 Async한 통신 실시간성 응답을 필요로 하지 않는 상황에서 사용한다. ex : Notification, Email 전송, Push 알림 등 Main 쓰레드가 task를 처리하는게 아니라, sub thread에게 task를 위임하는 것으로 말할 수 있다. spring에서 비동기 프로그래밍을 위해선 ThreadPool을 정의할 필요가 있다 비동기는 Main Thread가 아닌 Sub Thread에서 작업이 진행 Java에서는 ThreadPool을 생성해서 Async 작업을 처리 CorePoolSize MaxPoolSize WorkQueue KeepAliveTime ThreadPoolExecutor executorPool = new ThreadPoolExecutor(5, 10, 3, TimeUnit.SECO.. 2023. 7. 31. JWT의 구조 정리 JWT의 구조 HEADER.PAYLOAD.SIGNATURE eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.PjndlgESbR_7uPWq7tKFd6o7l799Y45mU5KvDcO2nPI HEADER JWT 검증하는데 필요한 정보 가진 객체 Header의 정보를 UTF-8 인코딩 -> Base64 인코딩한 값 저장 ( 단순 인코딩만 했기에 암호화된 값은 아님!!) {"alg":"HS256","typ":"JWT"} -> eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9 PAYLOAD 실질적으로 인증에 필요한 데이터를 저장함 데이터의 각각 필드.. 2023. 7. 30. 이전 1 ··· 25 26 27 28 29 30 31 ··· 148 다음