일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 애니메이션
- Animation
- MVVM
- 함수
- JavaScript
- 닷넷
- page
- db
- 깃허브
- 바인딩
- listview
- GitHub
- Binding
- .NET
- HTML
- MSSQL
- React JS
- 플러터
- 리엑트
- 파이어베이스
- Flutter
- 자바스크립트
- 오류
- spring boot
- Maui
- AnimationController
- 마우이
- MS-SQL
- typescript
- Firebase
- Today
- Total
목록서버 개발/Spring Boot (12)
개발노트
문제 발생: 아무런 수정이 없었으나 어노테이션 인식이 되지않음- 원인: Dependency 인식이 안되고있음해결방법1. File > Invalidate Caches 클릭 2. "Clear file system cache and Local History" 체크 3. build.gradle 를 빌드해줌 4. 문제 해결.! + 추가로 IDE 업데이트 후, 적용 후 재시작을 해주니 잘 되었습니다.
DTO.DTO(Data Transfer Object)는 데이터 전송을 위해 사용되는 객체로, 일반적으로 엔티티(Entity)의 일부 데이터를 전달하는 데 사용됩니다. DTO는 비즈니스 로직을 포함하지 않고, 순수하게 데이터를 전송하거나 전달하기 위한 용도로 설계됩니다.DTO의 특징데이터 전송 및 전달 용도: DTO는 주로 시스템의 다른 부분 간에 데이터를 전송하거나 전달하는 용도로 사용됩니다. 네트워크를 통해 클라이언트와 서버, 혹은 서버 간에 데이터를 주고받을 때 사용할 수 있습니다.데이터 전송 최적화: DTO는 엔티티의 일부 데이터만을 포함하므로, 전송할 데이터 양을 최적화할 수 있습니다. 이는 성능 향상과 데이터 사용량 절감에 도움이 됩니다.클라이언트 요구사항 대응: 클라이언트가 필요로 하는 특정 ..
Entity 관계설정과 JOIN 연결.Entity 관계는 데이터베이스의 테이블 간의 관계를 객체지향적으로 표현하고, JOIN은 이러한 관계를 이용하여 데이터를 효율적으로 조회하고 조합하는 기능을 제공합니다.JPA를 사용하여 Entity 관계를 정의하면 SQL을 직접 작성하지 않고도 객체 지향적으로 데이터를 다룰 수 있으며, 필요한 경우에는 JPA가 내부적으로 SQL을 생성하여 JOIN을 수행합니다.Entity 관계와 JOIN은 데이터베이스 모델링과 데이터 액세스 계층의 중요한 요소이며, 잘 정의된 관계와 효율적인 JOIN은 데이터베이스 성능과 코드 유지보수성에 긍정적인 영향을 미칩니다.따라서, Entity 관계설정으로 JOIN의 형태로 데이터를 조회할 수 있습니다.Entity 관계 예시.cocktail과..
쿼리 메소드.Spring Data JPA에서 사용할 수 있는 쿼리 메서드의 종류와 각각의 의미를 설명하겠습니다. 쿼리 메서드는 메서드의 이름을 기반으로 Spring Data JPA가 자동으로 쿼리를 생성하여 실행하는 기능을 제공합니다. 아래는 일반적으로 사용되는 쿼리 메서드들과 그 의미를 설명한 것입니다:기본 쿼리 메서드:Spring Data JPA는 JpaRepository 인터페이스를 상속받은 Repository에서 기본적인 CRUD(Create, Read, Update, Delete) 기능을 제공합니다. 예를 들어, save, findById, findAll, deleteById 등의 메서드가 포함됩니다.조건에 따른 검색 메서드:엔티티의 특정 필드 값을 기준으로 조건에 따라 검색하는 메서드입니다.예..
Infinite recursion (무한 재귀) 무한 재귀, 이 오류는 객체 간에 서로 참조가 발생하여 끊임없이 서로를 호출하고 있기 때문에 발생합니다.가장 흔한 이유는 Hibernate의 엔티티에 양방향 참조가 있을 때 발생합니다. 예를 들어, 두 개의 엔티티가 서로를 참조하고 있고 이 참조가 순환적으로 연결되어 있으면 무한 재귀가 발생할 수 있습니다.이 문제를 해결하려면 다음과 같은 방법을 고려해 보세요:@JsonIgnore 애너테이션 사용: 엔티티 클래스의 일부 필드에 @JsonIgnore 애너테이션을 사용하여 해당 필드가 직렬화되지 않도록 만듭니다. 이 방법은 무한 재귀를 방지하는데 유용합니다.@JsonIgnore private MixType mixType;@JsonManagedReference..
Java 에서 "_" 언더바 사용은 아래와 같은 문제를 불러옵니다.Naming Conventions: Java의 명명 규칙(Naming Conventions)은 카멜 표기법(Camel Case)을 따릅니다. 즉, 변수 이름은 소문자로 시작하고, 여러 단어가 결합될 때는 각 단어의 첫 글자를 대문자로 표기합니다. 이러한 명명 규칙을 따르지 않으면 코드의 가독성이 떨어지고, 표준에 맞지 않는 코드로 인식될 수 있습니다.키워드와의 충돌: 언더바(_)는 Java에서 특별한 용도로 사용되는 문자가 아니기 때문에 문법적으로는 문제가 없지만, 키워드와의 충돌이 발생할 수 있습니다. 예를 들어, 변수 이름으로 **int _value;**와 같이 언더바를 사용하면 일부 상황에서 코드를 해석하는 데 혼란을 줄 수 있습니다..
application.yml 적용순서프로젝트 구조 확인: 먼저 Spring Boot 프로젝트의 구조를 확인하세요. src/main/resources 디렉터리 내에 application.yml 파일을 위치시켜야 합니다.애플리케이션 실행 시 로드: Spring Boot 애플리케이션을 실행할 때 application.yml 파일이 자동으로 로드됩니다. 이 파일에 정의된 설정은 애플리케이션에 적용됩니다.프로파일 설정: application.yml 파일은 여러 프로파일에 따라 설정을 구성할 수 있습니다. 예를 들어, application-dev.yml 또는 **application-prod.yml**과 같이 환경에 따라 다른 설정을 제공할 수 있습니다. 애플리케이션 실행 시 프로파일을 지정하여 해당 프로파일에 따..
JPA를 이용하여 삽입, 조회, 수정, 삭제 등 API 호출 기능을 만들어 보겠습니다. 여기에 ResponsEntity를 이용하여 http 상태코드에 따른 응답도 만들어봅니다. 만들어볼 기능들 예시로 사용될 Ingredient 모델과 리포지토리 Ingredient.java (Model) package com.homebar.apiserver.model; import jakarta.persistence.*; import lombok.Getter; import lombok.Setter; import org.springframework.format.annotation.DateTimeFormat; import java.util.Date; @Entity //어노테이션이 있으면 Getter,Setter 자동 생성 @..
Optional 자바 개발자라면 누구나 한 번쯤 NullPointerException(NPE) 문제를 직면하게됩니다. 이런 문제를 해결하기 위한 방법 중 하나가 Optional입니다. NullPointerException을 방지하려면 모든 객체 참조에 대해 null 체크를 수행해야 합니다. 이는 코드를 복잡하게 만들고 가독성을 해치며 실수를 유발할 수 있습니다. Optional은 이 문제에 대한 해결책을 제공합니다. Optional은 값이 존재하지 않을 수 있는 상황을 고려하여 설계된 컨테이너 클래스입니다. Optional로 객체를 감싸고, 값이 존재하지 않을 때 NPE를 방지할 수 있습니다. Optional을 사용하는 이유 명시적인 Null 처리: Optional은 값이 없을 때 명시적으로 처리할 수 ..
JPA로 Data를 가져오기 위한 어노테이션 종류와 함께, 폴더구조(Model - Repository - Service - Controller)와 관계에 대해서 알아봅니다. 최종적으로 엔드포인트로 JSON 데이터를 가져오는 것을 예제로 만들어보겠습니다. 예제는 JPA의 findAll() 메소드를 통해 DB에 있는 Ingredient 테이블에서 모든 재료 데이터를 가져옵니다. 폴더 구조. 구조 설명. Model: 역할: 데이터 모델이나 엔티티 클래스를 정의하는데 사용됩니다. 특징: 모델은 애플리케이션에서 사용되는 데이터의 구조를 정의합니다. DB 테이블(@Table)의 엔터티(@Entity)를 표현하고, 클라이언트와 서버 간의 데이터 교환에 사용됩니다. 주로 Java Beans 규칙을 따르며, 필드, 게터..