Framework/SpringBoot20 [Java / Spring] 스프링부트 서버 포트 변경 방법 [Version] ⦁ 2024.03.13 / [Java / Spring] 스프링부트 서버 포트 변경 방법 최초작성 SpringBoot 서버 포트 변경 방법(feat yaml) 스프링부트 프레임워크를 사용하여 웹 애플리케이션을 개발할 때 기본적으로 8080 포트를 사용합니다. 하지만 필요에 따라 포트 번호를 변경해야 할 때도 있습니다. 이번 글에서는 `application.yaml`파일을 수정하여 SpringBoot 서버 포트를 변경하는 방법에 대해 알아보겠습니다. 1. `application.yaml`파일 열기 먼저, 프로젝트의 `src/main/resources`디렉토리 아래에 있는 `application.yaml`파일을 찾아 엽니다. 2. 서버 포트 설정 추가하기 `application.yaml`파일.. 2024. 3. 13. [Java / Spring] 스프링부트 H2DB 설정방법(feat. yaml) [Version] ⦁ 2024.03.13 / [Java / Spring] 스프링부트 H2DB 설정방법(feat. yaml) 최초작성 SpringBoot 서버 포트 변경 방법(feat yaml) 스프링부트 프로젝트에서 H2데이터베이스를 사용하기 위해서는 `application.yaml`파일 내 설정을 추가해야 합니다. 아래는 `application.yaml`파일에 H2데이터베이스를 연결하는 설정 방법입니다. spring: datasource: url: jdbc:h2:mem:testdb username: sa password: driver-class-name: org.h2.Driver jpa: database-platform: org.hibernate.dialect.H2Dialect hibernate: dd.. 2024. 3. 13. [Java / Spring] 스프링부트 CORS 설정 방법 [Update] - 2024.01.07: [Java / Spring] 스프링부트 CORS 설정 방법 최초 작정 SpringBoot에서 CORS 설정하기 CORS(Cross-Origin Resource Sharing)는 웹 애플리케이션이 다른 도메인에서 리소스를 요청할 때 발생하는 보안 정책으로 기본적으로 브라우저에서는 다른 도메인 간의 HTTP요청을 차단합니다. 스프링부트 애플리케이션에서 CORS 문제를 해결하려면 다음과 같은 설정이 필요합니다. 1. WebMvcConfigurer 구현 클래스 생성 import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotatio.. 2024. 3. 13. [Java / Spring] Ioc란? [Version] ⦁ 2024.03.13 / [Java / Spring] Ioc란? 최초작성 IoC(Inversion of Control)란? 제어의 역전은 프로그램의 제어 흐름을 개발자가 아닌 프레임워크나 컨테이너가 결정하는 것을 의미한다. 일반적인 프로그램에서는 개발자가 객체의 생명주기를 직접 관리하고 라이브러리를 호출하여 사용한다. 하지만 프레임워크를 사용할 경우, 클래스를 개발자가 구현하더라도 객체의 생성, 초기화, 함수 호출, 소멸 등의 제어는 프레임워크가 맡는다. 이러한 IoC 개념을 통해 라이브러리와 프레임워크를 구분할 수 있다. 라이브러리는 단순히 사용 가능한 도구의 집합이며, 개발자가 도구를 제어한다. 하지만 프레임워크는 뼈대나 구조물을 의미하며 라이브러리를 포함한 포괄적인 개념이다. 즉.. 2024. 3. 13. [Java / Spring] @Embedded, @Embeddable에 대한 고찰 [Update] - 2024.02.06: @Embedded, @Embeddable에 대한 고찰 그동안 Mybatis를 사용했던 터라 JPA를 사용하여 간단한 웹 애플리케이션을 제작하고 있다. 강의로 개념을 학습하며 공부하고 있기 때문에 그때그때 궁금했던 용어에 대해 고찰하는 시간을 갖고자 한다. 대망의 첫 번째 주인공은 @Embedded와 @Embeddable이다. @ Embedded 어노테이션 @Embedded 어노테이션은 JPA에서 제공하는 어노테이션 중 하나로, 엔티티 클래스에서 다른 엔티티 클래스를 포함할 때 사용된다. 이 문장의 봐서는 정확한 의미를 파악하기 힘들다. 다음 예시와 함께 확인하자! @Embeddable public class Address { private String city; .. 2024. 2. 6. [Java / Spring] for와 stream의 비교(for vs stream) [Update] - 2024.01.26: "for"와 "stream" 비교 최초 작성 - 2024.01.27: "for"와 "stream" 비교 글 내 예시 추가 프로그래밍에서 반복적인 작업을 수행할 때, 대표적으로 사용되는 두 가지 방법은 "for문"과 "stream"이 있습니다. 프로그래밍을 하며 두 가지 전부 사용한 결과 각각의 특징과 성능 면에서 어떤 차이가 있는지 궁금증이 생겼습니다. 이번 글에서는 "for문"과 "stream"을 비교하여 어떤 경우에 어떤 방법을 사용하는 것이 더 효율적인지 살펴보겠습니다. 글의 목차는 총 4가지로 구성되어 있으며 아래와 같습니다. "for문"과 "stream"의 구현방식 "for문"과 "stream"의 가독성 "for문"과 "stream"의 특징 "for문"과.. 2024. 1. 27. [Java / Spring / Troubleshooting] org.springframework.beans.factory.UnsatisfiedDependencyException [Update] - 2024.01.21: [Java / Spring / Troubleshooting] org.springframework.beans.factory.UnsatisfiedDependencyException 최초 작성 UnsatisfiedDependencyException 프로젝트를 진행하던 중 "Spring-Security"를 설정하는 과정에서 다음과 같은 에러가 발생하였습니다. 버전 업데이트에 따른 문법 변화도 있어, 이 글을 보는 사람들이 도움이 되었으면 좋겠습니다. 먼저 저의 개발 환경은 다음과 같습니다. Ο Spring Boot: 3.1.4 Ο Spring Security: 6.1.4 Ο Java Version: java 17 에러가 발생한 코드는 다음과 같습니다. @Bean publ.. 2024. 1. 21. [Java / Spring] 게시물 수정 기능과 Dirty Checking [Update] - 2024.01.20: 게시물 수정 기능에 대한 분석 최초 작성 게시물 수정 기능에 대한 분석 현재 진행중인 프로젝트에서 게시물 수정 기능을 구현할 때 생긴 이슈에 대해 분석을 진행하였습니다. 기존 게시물을 수정할 때 객체의 상태만 변경했음에도 불구하고 DB의 데이터가 변경되는 현상을 발견하였습니다. 이에 대한 이슈를 해결하기 위해 더티 체킹의 개념을 살펴보았습니다. 1. 어떻게 객체의 상태만 변경했음에도 DB의 데이터까지 변경될까? 게시물을 수정하는 메서드는 기존에 작성된 게시물을 조회하고, 수정할 정보를 담은 객체를 이용하여 기존에 작성된 게시물 엔티티의 상태를 변경합니다. 그러나 이 과정에서 DB에는 변경된 정보로 업데이트가 되는데, 실제로는 "save"메소드는 호출되지 않습니다... 2024. 1. 20. [Java / Spring] @GeneratedValue에 대한 고찰 [Update] - 2024.01.14: @GeneratedValue에 대한 고찰 최초 작성 @GeneratedValue 어노테이션 "@GeneratedValue"는 JPA에서 엔티티 클래스의 Primary Key의 값을 자동으로 생성하기 위해 사용됩니다. "@GeneratedVaue"는 "strategy" 속성을 통해 원하는 전략을 선택할 수 있습니다. 1. GenerationType의 속성 종류 IDENTITY 예시: @GeneratedValue(strategy = GenerationType. IDENTITY) 설명 데이터베이스에 기본키 생성을 위임합니다. AUTO_INCREMENT를 사용하여 자동으로 기본키를 생성합니다. 각 데이터베이스가 제공하는 자동 증가 기능을 활용하기 때문에 데이터베이스에 종.. 2024. 1. 14. 이전 1 2 3 다음