본문 바로가기

Java

mybatis / servelet / jsp 등 개념


환경 구축이 거의 막바지에 다달았다.
아래는 예전에 학원에서 배울 때 썼던 버전이었다.
지금은 spring boot가 있어서 
따로 필요 없는 것도 있다. 
- JDK 1.8.181   
- Oracle 11g    
- Mybatis 3.4.6
- STS 3.8.2
- Spring 4.3.6
- Tomcat 8.0.39
- 웹 view (HTML + CSS + JavaScript + Servlet+ JSP )

여기서 위쪽 세 개는 모두 설치했다.
Java jdk
Oracle db + developer
Mybatis 

그런데 아래쪽에 보이는
servlet 과
jsp 가 
정확히 뭔지 모르겠다.

전에 배울 때는 그냥 그러려니 하면서
무작정 따라가기만 했다.
이번에는 혼자 공부하는 목적도 있고 해서
조금 자세히 알아보기로 했다.

 


- Mybatis​ -

마이바티스는 뭘까.
일단 java는 개발 언어다.
oracle도 그냥 dbms다.
mybatis는?
프레임워크다.
자바와 데이터베이스를 
더 쉽게 연결하도록 도와준다.
조금 더 설명하자면,
java가 db와 통신하려면
어떤 조작을 해야 하는데,
일일이 하려고 하면 
반복되거나 번거로운 게 많다.
mybatis는 xml 맵핑이나
annotation 등으로
이 과정을 더 쉽게 만들어준다.


- Servlet -


Server + Applet의 줄임말이다.
이게 나는 무슨 서버 이름인 줄 알았다.
서버 쪽에서 통칭으로 쓰는 말인 줄 알았는데
java에 한해서 쓰는 말이었다.
servlet은 그냥 java 언어로 만든 프로그램이다.
다만 웹 처리가 가능하도록 
어떤 규칙이나 규격에 맞게 작성한 프로그램이다.
java 언어 안에 html이 들어간다.
표면상으로 나오지는 않지만
spring에서 이 부분까지 포함하여 가동시켜 준다.

 


- jsp -

Java Server Pages의 줄임말이다.
어떤 기술을 사용하는 HTML 페이지다.
그것이 어떤 기술이냐면,
html은 html인데, 
그 안에 java 코드를 끼워 넣는 기술이다.
위에서 본 servlet은 java 안에 html을 끼워 넣고,
jsp는 html 안에 java를 끼워 넣는다는 점에서
servlet과 jsp를 반대라고 말하는 사람도 있다.

 


- mvc 안에서 -

jsp와 servlet은 mvc 중 어디로 분류할 수 있을까?
jsp는 html 스크립트 안에 
java를 코드를 넣은 페이지다.
그래도 jsp는 어쨌든 html 스크립트다.
html 을 작성하기에 더 편하다.
그래서 view를 담당한다.
servlet은 java 코드 안에 
html 스크립트를 넣은 프로그램이다.
그래도 servlet은 어쨌든 java 프로그램이다.
java를 작성하기에 더 편하다.
그래서 servlet은 controller를 담당한다.



- Servlet Container -

서블릿을 관리해주는 장치이다.
클라이언트로부터 요청이 오면
서블릿이 스스로 그 일을 처리할 수가 없다.
클라이언트로부터 요청을 받으면
서버는 그 요청을 서블릿 컨테이너에게 알리고,
그 요청에 맞는 jsp를 servlet으로 변환하여
클라이언트에게 보내준다.
서블릿 컨테이너도 서블릿과 마찬가지로
java 프로그램이므로 jvm 위에서 돌아간다.
아파치 톰캣(apache tomcat)이 바로 
대표적인 서블릿 컨테이너다.

 

 

참고 자료 : https://mangkyu.tistory.com/14

반응형