개발/spring, spring boot
@Bean 객체 이름 설정
Spring Boot에서 @Bean 어노테이션을 사용해 함수에 빈 객체를 등록할 때, 빈 객체의 이름은 기본적으로 함수의 이름과 동일하게 설정됩니다. 예를 들어 다음과 같이 myService라는 이름의 빈을 정의할 수 있습니다. @Configurationpublic class AppConfig { @Bean public MyService myService() { return new MyService(); }}이 경우, Spring 컨테이너는 myService라는 이름의 빈을 등록합니다. 빈 이름 커스터마이징빈 이름을 함수 이름과 다르게 지정하고 싶다면, @Bean 어노테이션에 name 속성을 사용하여 원하는 이름을 지정할 수 있습니다.@Bean(name = "customSer..
Spring Boot: Configuration Class 오류 해결 방법 - I/O Failure
클래스를 삭제하고 서버를 빌드할때 아래와 같은 에러가 발생하였습니다.org.springframework.beans.factory.BeanDefinitionStoreException: I/O failure while processing configuration class [최상단클래스경로] at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:251) ~[spring-context-6.1.10.jar:6.1.10] at org.springframework.context.annotation.ConfigurationClassParser.parse..
Kotlin을 사용한 sitemap.xml 자동 생성 방법 (Spring Boot)
웹사이트의 SEO를 강화하려면 sitemap.xml 파일이 필요합니다. 이 파일은 검색 엔진 크롤러가 사이트 구조를 이해하고 색인화하는 데 도움을 줍니다. 하지만 매번 수동으로 sitemap.xml을 업데이트하는 것은 번거로울 수 있습니다. 여기서 사이트맵 파일을 자동으로 관리하고, 새로운 페이지가 추가될 때마다 사이트맵이 업데이트하는 방법을 사용합니다. sitemap.xml 자동 생성하는 Kotlin 코드아래의 코드는 https://www.bestfeed.site/sitemap.xml 에 접속하면 sitemap.xml 파일이 자동으로 생성되고, 브라우저 또는 크롤러에 제공됩니다.@Controllerclass SitemapController( private val requestMappingHandl..
[Java] [Gradle] Your build is currently configured to use Java 21 and Gradle 7.6.1. 에러 수정
JDK17을 사용하는 프로젝트를 JDK21로 변경하고 프로젝트를 실행하니 아래와 같은 에러가 발생했습니다.Unsupported Gradle JVM.Your build is currently configured to use Java 21 and Gradle 7.6.1.Possible solutions: - Use Java 19 as Gradle JVM: Open Gradle settings - Upgrade to Gradle 8.5 and re-sync 프로젝트에서 사용하는 gradle 버전은 7.6.1인데 해당 gradle 버전이 JDK21을 지원하지 않아서 발생한 에러입니다. Gradle 호환성 매트릭스 사이트에서 Gradle 버전에 따라 호환되는 JDK 버전, Kotlin 버전을 확인할 수 있습니다..