[Java, Spring] BeanDefinitionStoreException 에러
Error2024. 11. 15. 19:19[Java, Spring] BeanDefinitionStoreException 에러

전에 만들어 놨던 클래스명에 오타가 있어 수정하고 작동을 했더니 아래와 같은 에러가 발생했다 !org.springframework.beans.factory.BeanDefinitionStoreException: I/O failure while processing configuration class [최상의 클래스] 원인클래스 경로에 포함된 설정 파일의 경로나 구성이 잘못되어 있을 경우 또는 파일이 손상되어 읽을 수 없을 때 발생할 수 있다고합니다 ! 해결방법파일이 삭제된 것이 아닌 변경된 클래스를 찾지 못하는 것 같아 build clean를 진행한 후 다시 빌드를 하니 JVM이 정상적으로 경로를 찾아 실행이 되었습니다 !

[Java, Spring] Linux 파일 서버 경로 연결하기
프로그래밍/Java2024. 10. 1. 15:32[Java, Spring] Linux 파일 서버 경로 연결하기

Linux Ubuntu 환경에 프론트와 백엔드 서버가 각각 배포되어있는 상태입니다.각 회원마다 등록한 본인의 프로필 이미지가 서버 특정 폴더에 저장이 되어있는 상태이고, img 태그의 src 경로를 통해 서버에 업로드 되어있는 이미지를 가져오려합니다 ! ⚙️ 프로젝트 환경Spring Boot : 2.7.14Node : 20.6.0Linux : Ubuntu 22.04 🎇 img태그 설정아래와 같이 /icon-image/를 기본 경로로 지정해 놓고 이후 회원의 이미지 파일명을 받아 서버 폴더에서 불러오려고합니다.만약 파일이 없을 경우에는 public 폴더에 저장해 놓은 기본 이미지를 띄워주겠습니다 !src에 설정해 놓은 경로로 이미지를 서버로 요청합니다.src의 서버의 실제 파일의 위치로 설정해 놓는 것은..

[Java, Spring] @ControllerAdvice, @RestControllerAdvice란 ?
프로그래밍/Java2024. 9. 1. 22:41[Java, Spring] @ControllerAdvice, @RestControllerAdvice란 ?

요즘 이것 저것 하느냐고 손이 부족해서 오랜만에 포스팅을 쓰네요 !! 분발하자 !!!! (살려주세요...)@ControllerAdvice와 @RestControllerAdvice 우선 순위에 대해 알아보다 Advice에 대해 같이 정리하면 좋을 것 같아 같이 정리해보려고 합니다🫠 ❓@ControllerAdvice란 ?@ControllerAdvice는 Spring 3.2에서 도입된 어노테이션이고, 모든 @Cotroller 클래스가 공유하는 공통 로직을 정의할 때 사용합니다.주로 예외 처리와 바인딩 설정, 모델 객체 등에 사용됩니다. 아래 예제 코드를 통해 간단히 알아보겠습니다 ! 예제코드NotFoundException이 발생할 경우 error라는 이름의 뷰로 이동하고 메세지를 출력합니다.반환되는 타입을 ..

[Java, Spring] application.properties란 ?
프로그래밍/Java2024. 7. 29. 13:28[Java, Spring] application.properties란 ?

application.properties란 ?application.properties 파일은 런타임 시 다양한환경에서 동작할 수 있도록 필요한 옵션들을 제공하는데 사용됩니다.예를 들자면 메일 서버를 구축하거나 DB 종류별 설정, 로그사용 여부 등의 설정이 가능합니다. 직접 커스텀 옵션 값을 추가할 수도 있고, Spring에서 사용하는 디폴트 옵션들을 바꿀 수 있습니다.Spring Document를 통해 application.properties에서 사용한 디폴트 옵션들을 직접 확인하실 수 있습니다 !  application.properties을 사용하는 이유환경 분리application.properties을 사용하는 이유에는 다양한 이유가 있겠지만 가장 큰 이유 중 하나는 애플리케이션을 배포할 때 개발 단..

[Java, 자바] @JsonProperty, @JsonNaming이란?
프로그래밍/Java2024. 6. 20. 19:41[Java, 자바] @JsonProperty, @JsonNaming이란?

API 통신을 하다 보면 대부분 JSON 형태로 데이터를 주고 받습니다. 이때, 서로 파라미터 작성 방식(카멜케이스, 스네이크케이스) 또는 파라미터명이 다를 경우 데이터를 파싱하는 도중에 에러 또는 원활하게 파싱이 되지 않는 경우가 있습니다 ! 카멜 케이스, 스네이크 케이스란?카멜케이스(Camel Case)첫 글자는 소문자로, 중간 글자들은 대문자로 시작하는 표기법입니다.ex) memberId, memberName, memberPhoneNumber 스네이크 케이스(Snake Case)첫 글자는 소문자로, 중간 글자들은 언더바(_)가 포함되는 표기법ex) member_id, member_name, member_phone, member_phone_number일반 코드 예시간단하게 Json 형태로 Reques..

[Spring, Spring Boot] @Value가 null일 때의 원인과 해결 방법
프로그래밍/Java2024. 6. 17. 19:44[Spring, Spring Boot] @Value가 null일 때의 원인과 해결 방법

@Value란 ?먼저 @Value 어노테이션의 경우 DB접속 정보나 비밀번호, secretKey와 같이 민감한 정보를 별도의 파일로 분리해서 환경 정보에 맞는 값을 불러오도록 하는 어노테이션입니다. application.properties 또는 application.yml에 값을 설정하면 필드나 메서드에 값을 주입해줄 수 있습니다 ! null을 반환할 때의 원인@Value 어노테이션이 property의 값을 받아오지 못하는 경우는 크게 네 가지가 있습니다 ! properties 이름을 잘못 입력했을 경우@Valse("${aws.secret-kee}")상단의 코드와 같이 properties에 등록한 이름과 다를 경우 null값을 반환합니다. Bean으로 등록되지 않은 경우클래스를 Bean(@Componen..

[StringBoot] Azure 번역기 API 사용하기
프로그래밍/Java2024. 6. 12. 21:17[StringBoot] Azure 번역기 API 사용하기

번역기 API를 사용하기 위해 Papago open API를 사용하려고 했으나.... 서비스 지원이 종료됬다고 하네요.....우우우우우~그래서 ! Azure를 통한 번역기 API를 사용해보았습니다 !Azure 가입 및 구독API를 사용하려면 Azure에 가입한 후 구독을 진행해줘야합니다 !  12개월은 무료로 사용할 수 있다고합니다 ! 클라우드 컴퓨팅 서비스 | Microsoft AzureMicrosoft Azure의 유연한 개방형 클라우드 컴퓨팅 플랫폼을 통해 목적에 따라 투자하고 비용을 절감하며 조직을 더 효율적으로 만드세요.azure.microsoft.com위 링크를 통해서 회원가입을 진행한 뒤 메인 페이지 배너에 있는 Azure 무료 체험하기를 클릭하면 해당 서비스를 이용하실 수 있습니다 ! 번역..

[Spring, SpringBoot] Controller에서 데이터 받는 방법 (@RequestBody, @RequestParam, @ParthVariable)
프로그래밍/Java2024. 5. 27. 21:49[Spring, SpringBoot] Controller에서 데이터 받는 방법 (@RequestBody, @RequestParam, @ParthVariable)

어느날 문득 정리하고 데이터 받는 방법에 대해 정리하고 싶어졌다 !서버에서는 요청한 데이터를 전달 받는 방법은 다양하다 ! MVC 패턴에서 주로 사용하는 어노테이션을 위주로 정리해 보려합니다 ! @RequestBody@RequestBody는 클라이언트가 보내는 HTTP 요청 본문(JSON, XML 등)을 HttpMessageConverter를 통해 타입에 맞는 자바 객체로 변환해줍니다 !@PostMapping("/test")@ResponseBody // return datapublic String test(@ReqeustBody data) { ...} @RequestParam@RequestParam은 클라이언트가 요청할 때 쿼리스트링을 통해 넘어오는 매개변수를 추출할 수 있습니다 !required가 t..

image