이노베이션 캠프 WIL

4주차 WIL(ORM, SQL, MVC)

mat_hoyoung 2022. 7. 17.

이노베이션 캠프 4주차를 마친 후 나의 멘탈은 와르르멘션 이였다.

실력이 더 낮아진 것 같고 자존감이 바닥치는 주차였다..! 하지만 포기하지 않고 끝까지 해본다 오로지 정신력으로 !! 

 

이번 주차에서 배울 것은 ORM, SQL , MVC에 대해서 알아보자 

먼저 ORM 이란 무엇일까 ? 

 

  Object Relational Mapping, 객체-관계 매핑으로 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑(연결)해주는 것을 말한다. 객체 지향 프로그래밍은 클래스를 사용하고, 관계형 데이터베이스는 테이블을 사용한며 객체 모델과 관계형 모델 간에 불일치가 존재한다. ORM을 통해 객체 간의 관계를 바탕으로 SQL을 자동으로 생성하여 불일치를 해결한다.

  • 백엔드 개발자(Backend Developer): 웹 서버를 개발하는 개발자
  • DBA (Database Administration): 데이터베이스 관리자. 데이터베이스를 설치, 구성, 관리 등의 일을 맡은 사람

통상 대기업에서는 백엔드 개발자와  DBA가 구분되지만 스타트업이나 중견,중소 등 대부분 기업에서는 백엔드 개발자가 DBA도 같이하기때문에 항상 DB에 대해서도 잘 숙지하고 있어야 한다. 

 

 

  다음으로 SQL은 무엇일까 ? 

SQL은 Structured Query Language(구조적 질의 언어) 로  관계형 데이터베이스 시스템 (RDBMS)에서 자료를 관리 및 처리하기 위해 설계된 언어다.

 

-DDL(Data Definition Language, 데이터 정의 언어) 

: DDL은 데이터베이스 스키마와 설명을 처리하도록 정의하는 언어입니다. 데이터베이스나 테이블 생성/변경/삭제 등의 작업이 포함됩니다.  

 

*CREATE(데이터베이스 개체(테이블, 인덱스, 제약조건 등)의 정의

*DROP(데이터베이스 개체 삭제)

*ALTER(데이터베이스 개체 정의 변경)

 

-DML(Data Manipulation Language, 데이터 조작 언어)

: 데이터 검색, 삽입, 변경, 삭제 수행을 조작하는 언어입니다. 실질적으로 저장된 데이터를 관리하고 처리할 때 사용합니다. 

 

*SELECT(테이블 데이터의 검색 결과 집합의 취득)

*INSERT(행 데이터 또는 테이블 데이터의 삽입)

*DELETE(데이터의 삭제)

*UPDATE(표 업데이트)

 

-DCL(Data Control Language, 데이터 제어 언어)

: 사용자 관리 및 사용자별로 릴레이션 또는 데이터를 관리하고 접근하는 권한을 다루기 위한 언어입니다. 

 

*COMMIT : 트랜잭션의 작업 결과를 반영 

*ROLLBACK : 트랜잭션의 작업을 취소 및 원래대로 복구

*GRANT : 사용자에게 권한 부여

*REVOKE : 사용자 권한 취소

 

  마지막으로 MVC은 무엇일까 ?

Spring MVC

  • 사용자 인터페이스, 데이터 및 논리 제어를 구현하는데 널리 사용되는 소프트웨어 디자인 패턴이다.
  • 소프트웨어의 비즈니스 로직과 화면을 구분하는데 중점을 둔다.
  • 간단하게 Model, View, Controller로 분리하여 개발하는 디자인 패턴이다.
  • 스프링 MVC 동작원리 

 

 

 

댓글