객체 관계 불일치 관계형 데이터베이스와 메모리 내의 데이터 형식의 불일치를 의미한다. 테이블의 경우 행과 열의 형식으로 데이터를 나타낸다. 이와 달리 객체(메모리내)데이터 형식은 제약이 없어 복잡한 구조(중접)를 저장한다. 이러한 구조를 저장하려면 관계형 구조로 변환해서 저장해야만 한다. 이와 같은 불일치를 해결하기 위해 ORM이 나타났고 Mybatis(정확히는 ORM이 아님), JPA(Hibernate)가 개발됨. 객체 관계 매핑(ORM) 객체와 관계형 데이터베이스의 데이터를 매핑시켜준다. ORM사용 시 쿼리를 자동으로 생성해주므로 SQL에 종속되지 않고 비즈니스 로직에 집중해서 개발이 가능하다. DB에 종속적이지 않은 개발이 가능하다. 러닝 커브가 높으며 세세한 쿼리 조작이 불가능하다. criteri..
MVC? 디자인 패턴의 종류중 하나를 뜻한다. Model, View, Controller의 약자를 뜻한다. 사용자 인터페이스와 비즈니스로직을 분리하여 서로 영향없이 쉽게 수정/개발할 수 있도록 개발이 가능하다. (관심사의 분리: SOC) MVC 구성요소 Controller View와 Model의 중간다리 역할을 한다. 모델(Model)에 명령을 보내 원하는 비즈니스 로직을 실행하고 뷰(View)에 필요한 데이터를 전달하여 출력할 수 있도록한다. View 뷰는 모델에서 수행한 비즈니스 로직의 결과물을 컨트롤러를 통해 전달 받아 사용자에게 출력한다. Model 컨트롤러에게서 요청받은 비즈니스 로직을 실행하여 결과물을 반환한다. 뷰에 의존하지 않는다. 출처 https://ko.wikipedia.org/wiki..
@SpringBootApplication 스프링 부트의 시작점 @SpringBootConfiguration, @EnableAutoConfiguration 및 @ComponentScan을 포함한다. @ComponentScan @Component. @Configuration, @Repository, @Controller, @Service, @RestController 위의 어노테이션을 가진 클래스를 빈으로 등록해준다. @EnableAutoConfiguration 미리 정의되어있는 빈들 가져와서 등록한다. public @interface EnableAutoConfiguration { String ENABLED_OVERRIDE_PROPERTY = "spring.boot.enableautoconfiguration..
스프링 부트란? Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run". 스프링 부트는 스프링 기반의 독립형(stand-alone) 또는 사용급 앱을 만들기 쉽게해준다. We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applications need very little Spring configuration. 스프링 플랫폼과 타사 라이브러리에 대해 관심을 가지고..
ECMA Script? 자바스크립트는 1995년 넷스케이프 웹 브라우져에서 웹페이지에 동적인 요소를 구현하기 위해서 발명 됨. 이후 많은 브라우져를 지원하면서 자바스크립트가 공통적으로 잘 작동하기 위해서 표준 규격이 필요하게됨. Ecma 인터내셔널에 의해 제정된 ECMA-262 기술 규격에 의해 정의된 범용 스크립트 언어. 스크립트 언어가 준수해야 하는 규칙, 세부 사항 및 지침을 제공한다. JavaScript는 ECMAScript 사양을 준수하는 범용 스크립팅 언어이다. ECMA Script 지원이 상이한 이유 JavaScript 엔진에는 Google Chrome의 V8, Mozilla Firefox의 SpiderMonkey와 같이 여러 종류가 존재함. 새로운 버전의 ECMAScript를 발표한다고해서..
객체? 실생활에서 우리가 인식할 수 있는 사물로 이해할 수 있음. 일반적으로 여러 데이터와 함수로 이뤄진다. 객체란 이름(key)과 값(value)으로 구성된 프로퍼티(property)의 정렬되지 않은 집합. var person = { name: 'Park Jin', age: 31, introduce: function() { return 'my name is ' + this.name + ' and my age is ' + this.age } }; console.log('person.name :: ', person.name); // person.name :: Park Jin console.log('person.age :: ', person.age); // person.age :: 31 console.log..