[Spring Data JPA] JPA
·
Web & Android/Spring Data JPA
💡 매핑의 뜻 : 키(key) 역할을 하는 데이터와 값(value) 역할을 하는 데이터를 짝 지어(=연결 지어) 저장하는 데이터 구조 JPA(Java Persistence API) 자바 ORM 기술에 대한 API 표준 Persistence : 영속성 persist() 메소드를 사용해서 저장 Hibernate, OpenJPA ⇒ API(Application Programming Interface) Spring Data JPA save() 메소드를 사용해 저장이나 업데이트를 함 JPA 장점 특정 데이터베이스에 종속되지 않음 조금 종속 됨, 거의 구분없이 사용 가능 오라클, MySQL, MSSQL 등등을 왔다갔다 하면서 사용 가능 객체지향적으로 설계 가능 직관적이고 비즈니스 로직에 집중 유지보수 유리 및 생산..
[Spring Data JPA] QueryMethod
·
Web & Android/Spring Data JPA
Spring Data JPA에서 제공하는 공동 인터페이스는 기본적인 CRUD를 제공해준다. (JpaRepository) 조인 불가 Repository 인터페이스에 간단한 네이밍 룰을 이용하여 메소드를 작성하면 원하는 쿼리 실행 가능 엔티티의 이름은 생략 가능, By 뒤에는 검색할 때 사용할 변수의 이름 작성 조건이 많을 때 쿼리 메소드를 선언하면 이름이 길어져 오히려 보기 힘들다는 단점이 있음 → 그래서 @Query 어노테이션 사용 JpaRepository Entity의 클래스명 + Repository 로 인터페이스 생성 JpaRepository 상속 (extends) 속성으로 ‘Entity의 클래스명’, ‘Entity기본키(Id)의 타입’ 지정 public interface UserRepository ..
[Spring Data JPA] 영속성 컨텍스트
·
Web & Android/Spring Data JPA
영속성 컨텍스트 💡 엔티티를 영구 저장하는 환경, 가상의 DB 역할 엔티티 생명주기 비영속(new/transient) : 영속성 컨텍스트와 전혀 관계가 없는 새로운 상태 Member member = new Member(); member.setId("member1"); member.setUsername("홍길동"); 영속(managed) : 영속성 컨텍스트에 관리되는 상태 EntityManager em = EntityManagerFactory.createEntityManager(); em.getTransaction().begin(); Member member = new Member(); member.setId("member1"); member.setUsername("홍길동"); // 객체를 영속성 컨텍스트..
[Spring Data JPA] ORM & SQL Mapper
·
Web & Android/Spring Data JPA
💡 영속성이란 데이터를 생성했던 프로그램이 종료되더라도 데이터는 사라지지 않는 것을 의미 영속성 있는 데이터들을 사용하기 편하게 해주는 것 → Persistene Framework 종류로는 SQL Mapper, ORM이 있음 Persistene Framework DB와의 연동되는 시스템을 빠르게 개발하고, 안정적인 구동을 보장해주는 프레임워크 SpringBoot와 DB를 이어주는 역할 (영속성 부여) 장점 1. 재사용 및 유지보수에 용이함 데이터베이스MySQL, MariaDB 등) 종류는 여러가지 종류가 있는데, 만약 DB를 교체하더라도 Persistene Framework는 그대로 두고 DB만 교체하면 되므로 재사용 및 유지보수에 용이하다. 2. 코드가 직관적임 Persistene Framework가 ..
[SpringBoot] 한글 변환(\u~)
·
Web & Android/SpringBoot
application.properties 우클릭 → properties → Text file encoding → other → UTF-8로 변경 이클립스 콘솔 한글깨짐 해결 방법 저는 평소에 맥북을 사용하고 있습니다. 그런데 테스트 환경이 맥 환경을 지원하지 않는다고 해서 윈도우에 새로 개발환경을 세팅했습니다. 그리고 톰캣을 시작했는데 콘솔창에 한글이 깨져서 error-nono.tistory.com
[SpringBoot] 에러 처리
·
Web & Android/SpringBoot
4xx - 클라이언트 에러 5xx - 서버 에러 1) pom.xml 파일에서 Unknown 에러 없애기 안에 3.1.1을 추가(프로퍼티 버전 설정을 추가) 그리고 나서, 프로젝트 선택 후 마우스 오른쪽 클릭 → [Maven] → [Update Project …] 선택 2) 생성한 프로젝트에 빨간 느낌표 뜨는 경우 프로젝트 우클릭 → Properies → Libraries → JRE System Library 버전 변경 내 경우엔 디폴트 JRE로 변경해주니 에러가 사라짐 3) java.lang.UnsupportedClassVersionError Eclipse run 시 발생 JRE를 1.8로 변경하니 해결됨 4) 스프링부트 Whitelabel Error Page 에러 gradle에 추가한 의존성의 버전을 ..