자바 엔터프라이즈 개발을 편하게 해주는 오픈소스 경량급 애플리케이션 프레임워크


1. 애플리케이션 프레임워크

- 일반적으로 라이브러리나 프레임워크는 특정 업무 분야나 한 가지 기술에 특화된 목표를 가지고 만들어진다.

- 프레임워크 애플리케이션의 특정 계층에서 주로 동작하는 한 가지 분야에 집중된다. 하지만 스프링은 이와 다르게 '애플리케이션 프레임워크'라는 특징

- 애플리케이션 프레임워크는 특정 계층이나 기술,업무 분야에 국한되지 않고 애플리케이션의 전 영역을 포괄하는 범용적인 프레임워크다.

- 애플리케이션 프레임워크는 애플리케이션 개발의 전 과정을 빠르고 편리하며 효율적으로 진행하는데 일차적인 목표를 두는 프레임워크다.

- 애플리케이션의 전 영역을 관통하는 일관된 프로그래밍 모델과 핵심 기술을 바탕으로 해서 각 분야의 특성에 맞는 필요를 채워주고 있기 때문에,

  애플리케이션을 빠르고 효과적으로 개발할 수가 있다. 바로 이것이 스프링이 애플리케이션 프레임워크라 불리는 이유

- 스프링의 일차적인 존재 목적은 핵심 기술에 담긴 프로그래밍 모델을 일관되게 적용해서 엔터프라이즈 애플리케이션 전 계층과 전 영역에 전략과 기능을 제공해 줌으로써 애플리케이션을 편리하게 개발하게 해주는 애플리케이션 프레임워크로 사용되는 것임을 기억하자.


2. 경량급

- 불필요하게 무겁지 않다.

- 스프링은 가장 단순한 서버환경인 톰캣이나 제티에서도 완벽하게 동작한다.

- 단순한 개발툴과 기본적인 개발환경으로도 엔터프라이즈 개발에서 필요로 하는 주요한 기능을 갖춘 애플리케이션을 개발하기에 충분하다.

- 스프링의 장점은 가볍고 단순한 환경에서도 복잡한 EJB와 고가의 WAS를 갖춰야만 가능했던 엔터프라이즈 개발의 고급 기술을 대부분 사용이 가능

- 만들어진 코드가 지원하는 기술수준은 비슷하더라도 그것을 훨씬 빠르고 간편하게 작성하게 해줌으로써 품질 면에서 유리하다는 것이 바로 경량급이라는 말로 표현되는 스프링의 특징


3. 자바 엔터프라이즈 개발을 편하게

- 스프링은 근본적인 부분에서 엔터프라이즈 개발의 복잡합을 제거해내고 진정으로 개발을 편하게 해주는 해결책을 제시

- 초기에 스프링의 기본 설정과 적용 기술만 잘 선택하고 준비해두면, 이후로 애플리케이션 개발 중에는 스프링과 관련된 코드나 API에 대해 개발자가 거의 신경 쓸 일이 없다.

- 엔터프라이즈 개발에서 필연적으로 요구되는 기술적인 요구를 충족하면서도 개발을 복잡하게 만들지 않는다는 점이 스프링의 뛰어난 면


4. 오픈소스

- 여전히 오픈소스 개발 모델과 오픈소스 라이선스를 가지고 개발되는 중이며, 앞으로 바뀌지 않는다.

'개념정리' 카테고리의 다른 글

pom.xml 과 web.xml  (0) 2018.03.22
MAVEN 이란?  (0) 2018.03.22
GET와 POST의 차이 확실히 알고가자!  (0) 2018.03.21
apache와 apache tomcat의 차이  (0) 2018.03.21
SSL 이란?  (0) 2018.03.21

GET과 POST는 HTTP프로토콜을 이용해서 서버에 무언가를 전달할때 사용하는 방식이다.


GET은 주소줄에 값이 ?뒤에 쌍으로 이어붙고 POST는 숨겨져서(BODY안에) 보내진다.


GET은 URL에 이어붙기 때문에 길이제한이 있어서 많은양의 데이터를 보내기 어렵고 POST는 많은 양을 보내기에 적합하다.


즉 http://url/bbslist.html?id=5&pageNum=2 같은 것이 GET 방식이고 form을 이용해서 submit을 날리는 형식이 POST이다.


그렇다면 언제 GET을 사용하고 언제 POST를 사용해야 할까?


예를들면 id값을 넘겨서 게시판의 리스트를 불러온다고 가정하면 당연히 GET을 사용할 것이고 게시판에 글을 작성한다면 POST를 사용할 것이다.


전달해야 할 데이터가 많으면 고민없이 POST를 사용하겠지만, 양이 많지 않은 경우에는 고민이 된다.


GET은 가져오는 것이고 POST는 수행하는 것이다.


GET은 SELECT적인 성향이 있다. 즉 GET은 서버에서 어떤 데이터를 가져와서 보여준다거나 하는 용도이지 서버의 값이나 상태를 바꾸지 않는다.


예를 들면 게시판의 리스트라던지 글보기 기능이다.


POST는 서버의 값이나 상태를 바꾸기 위해 사용한다. 글쓰기를 하면 글의 내용이 DB에 저장이 되고 수정을 하면 DB값이 수정이 된다. 


기본적인 개념을 확실히 알고 가자!

'개념정리' 카테고리의 다른 글

MAVEN 이란?  (0) 2018.03.22
SPRING 이란?  (0) 2018.03.22
apache와 apache tomcat의 차이  (0) 2018.03.21
SSL 이란?  (0) 2018.03.21
Servlet 이란?  (0) 2018.03.21

아파치(Apache)란?

- 아파치 재단에서 만든 소프트웨어

- 정적인 데이터를 처리하는 웹서버

  웹서버는 클라이언트가 GET, POST, DELETE 등등의 메소드를 이용해 요청을 하면 그에 대한 결과를 돌려주는 기능

  정적인 HTML이나 이미지를 제공하는 서버를 웹서버라 한다.


아파치 톰캣(Apache Tomcat)란?

- 아파티 재단에서 만든 소프트웨어

- 동적인 데이터를 처리하는 웹서버

  동적인 처리를 담당하는 서버를 WAS라 하고, 대표적인 WAS가 아파치 톰캣이다.

- WAS라고 불리며, 웹서버와 웹 컨테이너의 결합으로 다양한 기능을 컨테이너에 구현하여 다양한 역할을 수행할 수 있는 서버

'개념정리' 카테고리의 다른 글

SPRING 이란?  (0) 2018.03.22
GET와 POST의 차이 확실히 알고가자!  (0) 2018.03.21
SSL 이란?  (0) 2018.03.21
Servlet 이란?  (0) 2018.03.21
WAS와 웹서버(Web Server) 개념  (0) 2018.03.21

+ Recent posts