오늘은 개발을 편리하게 해주는 Object Mapping 기술인 MyBatis와 ORM(Object Relational Mappin) 기술인 JPA에 대해 알아보도록 하겠습니다. 1. ORM(Object Relation Mapping)이란? [ ORM(Object Relation Mapping)이란? ] ORM이란 객체(Object)와 DB의 테이블을 Mapping 시켜 RDB 테이블을 객체지향적으로 사용하게 해주는 기술이다. RDB 테이블은 객체지향적 특성(상속, 다형성,레퍼런스) 등이 없어서 Java와 같은 객체지향적 언어로 접근하는 것이 쉽지 않다. 이러한 상황에서 ORM을 사용하면 보다 객체지향적으로 RDB를 사용할 수 있다. Java에서 사용하는 대표적인 ORM으로는 JPA와 그의 구현체 Hib..
[ 본 사진은 쉽게 배우는 오라클로 배우는 데이터베이스 개론과 실습 ppt에서 캡처했습니다. ] 1. 데이터베이스와 데이터베이스 시스템 [ 데이터, 정보, 지식 ]데이터 : 관찰의 결과로 나타난 정량적 혹은 정성적인 실제 값정보 : 데이터에 의미를 부여한 것지식 : 사물이나 현상에 대한 이해아래와 같은 그림에서 에베레스트가 8848m라는 것은 데이터가 되며, 에베레스트가 세계에서 가장 높은 산이라는 것은 데이터에 의미를 부여한 정보가 되고, 에베레스트에 관한 보고서는 지식이 됩니다. [ 일상생활의 데이터베이스]데이터베이스 : 조직에 필요한 정보를 얻기 위해 논리적으로 연관된 데이터를 모아 구조적으로 통합해 놓은 것데이터베이스 시스템은 데이터의 검색(select)과 변경(insert, delete 등) 작..
이번에는 servlet의 심화 또는 대표주자인 dispatcher-servlet에 대해서 알아보도록 하겠습니다. 1. Dispatcher-Servlet(디스패처 서블릿)의 개념 [ Dispatcher-Servlet(디스패처 서블릿) 이란? ] 디스패처 서블릿의 dispatch는 "보내다"라는 뜻을 가지고 있습니다. 그리고 이러한 단어를 포함하는 디스패처 서블릿은 HTTP 프로토콜로 들어오는 모든 요청을 가장 먼저 받아 적합한 컨트롤러에 위임해주는 프론트 컨트롤러(Front Controller)라고 정의할 수 있습니다. 이것을 보다 자세히 설명하자면, 클라이언트로부터 어떠한 요청이 오면 Tomcat(톰캣)과 같은 서블릿 컨테이너가 요청을 받게 됩니다. 그리고 이 모든 요청을 프론트 컨트롤러인 디스패처 서블..
사용자가 어떤 홈페이지로 이동하기 위해서 URL을 브라우저 주소창에 작성하고 엔터를 누르면 원하는 페이지로 이동합니다. 사용자는 단순히 URL(Uniform Resource Locator)을 입력하였을 뿐이지만 서버 내부에서는 클라이언트의 요청에 응답(웹페이지로 표현)하기 위해서 처리를 해주어야 합니다. 여기서 클라이언트가 서버로 요청을 보내는 방법인 HTTP Method에는 크게 2가지 방식이 있는데, 그것이 바로 오늘의 주인공인 GET방식과 POST방식입니다. 오늘인 이 두 방식에 대해서 비교하며 장, 단점 및 차이점에 대해서 알아보도록 하겠습니다! 1. GET 방식 먼저 GET 방식에 대해서 알아보도록 하겠습니다. 영어 Get이라는 단어는 가져오다라는 뜻을 가진 단어인데요, 이를 활용해서 이해하면 ..
오늘은 네트워크의 보안분야에서 사용되는 소켓들 중 하나인 RAW 소켓에 대하여 알아보려고 합니다.저도 처음 들어본 내용이라 신기한게 많았는데, 글을 포스팅하면서 정리해보고자 합니다! 1. RAW Socket(RAW 소켓) RAW 소켓을 해석해보면 가공되지 않은 소켓이라는 뜻인데, RAW Socket을 잘 표현하고 있다는 생각이 드네요. 어느 특정한 프로토콜 용의 전송 계층 포맷팅 없이 인터넷 프로토콜 패킷을 직접적으로 주고 받게 해주는 소켓RAW 소켓에 대해서 참 어렵게 정의되어 있지만 막상 공부해보면 쉽게 이해할 수 있을 것입니다. 우리가 일반적으로 사용하는 소켓은 네트워크를 통해 데이터를 주고 받을 때 헤더정보의 추가 및 분리와 같은 작업을 운영체제의 프로토콜 스택 내에서 자동으로 처리해주는데, 이는..