FrameWork/Spring Boot 4

[Spring Boot] JPA Entity

1.JPA사용 시 Entity 구성 @Id primary key를 가지는 변수를 선언하는 것을 뜻한다. @GeneratedValue 어노테이션은 해당 Id값을 어떻게 자동으로 생성할 지 전략을 선택할 수 있다. 일반적으로는 @GeneratedValue(Strategt = GenerationType.AUTO)를 사용한다. DB에 맞게 자동으로 생성해주는 역할을 한다. @ManyToOne 2. Entity에 기본생성자가 필수 - JPA의 Entity는 반드시 파라미터가 없는 기본 생성자를 지녀야 한다. - 이 기본생성자는 public, protected여야하며, private이면 안된다. 2-1. 기본생성자가 필요한 이유 동적으로 객체 생성 시 Reflection API를 활용하기 때문이다. JPA는 DB값..

[Spring Boot] SOAP API & REST API

* API란? 데이터를 요청하고 응답하기 위한 인터페이스 * SOAP API란? Simple Object Access Protocol(http,https) 그 자체로 프로토콜이며 보안이나 메세지 전송에 있어 REST보다 많은 표준들이 정해져있기 때문에 조금 복잡합니다. 따라서 SOAP을 대안으로 나온 것이 RESTful 기반입니다. > 기본구조 SOAP-ENV:Envelope SOAP-ENV:Header SOAP-ENV:Body 위와 같은 구조로 XML문서로 표현되는데 복잡한 구성으로 인해 HTTP 상에서 전달되기 무겁고, 메세지 인코딩/디코딩 과정 등 웹서비스 개발의 난이도가 높아 개발 환경의 지원이 필요하다고 합니다. * REST API란? REST API는 네트워크를 통해서 컴퓨터들끼리 통신할 수 ..

[Spring Boot]JPA의 기본 개념

* JPA(Java Persistence API)란 무엇인가? DB테이블과 자바 객체 사이의 매핑을 처리해주는 ORM기술의 표준입니다. 요악하자면, 자바의 클래스와 DB의 테이블을 매핑하는 기술입니다. * ORM이란 무엇인가? Object Relational Mappping 객체와 관계형데이터베이스를 매핑, 즉 객체와 DB의 테이블이 매핑을 이루는 것입니다. * JPA를 왜 사용할까? 개발을 시작하거나 컬럼이 추가되면 CRUD SQL을 반복적으로 사용합니다. 신규 컬럼 하나만 추가되더라도 DTO, DAO, 수정작업이 매우 번거롭습니다. 이 때문에 객체와 테이블을 매핑시켜주는 ORM이 주목받고, JAVA에서는 JPA라는 표준 스펙을 정의하게 되었습니다. * JPA의 특징 자바 객체와 DB테이블 사이의 매핑..

[Spring Boot] Spring과 Spring Boot 차이

Spring 자바 엔터프라이즈 개발을 편하게 해주는 어플리케이션 프레임워크 Spring Boot Spring 프레임워크를 사용하는 프로젝트를 간편히 셋업할 수 있는 서브 스프링 프로젝트 - 독립 컨테이너에서 동작 할 수 있기 때문에 Java만 설치되어 있으면 개발하기 수월합니다. - 생성 후, jar파일이 생성되고 별도의 서버 설치 없이 embeded tomcat이 자동으로 실행됩니다. Web기반인 어플리케이션은 Tomcat이나 Was 등 Web Container가 설치 되어 있어야 하는데 규모가 작은 형태의 어플리케이션을 실행하기 위해선 큰 WAS를 설치하기에 효율적이지 않습니다. 따라서 이런 경우, Spring Boot를 사용한다고 합니다.