환경 구축이 거의 막바지에 다달았다.
아래는 예전에 학원에서 배울 때 썼던 버전이었다.
지금은 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
'Java' 카테고리의 다른 글
| [JAVA] switch 문을 반복문으로 바꾸기 (0) | 2022.03.19 |
|---|---|
| [JAVA] isNumber / isNumeric 문자열(String)이 숫자인지 확인하는 함수 (0) | 2022.03.19 |
| [JAVA] 추상 클래스 인터페이스 차이점 / abstract class interface 사용법 (0) | 2022.03.19 |
| [JAVA] ConcurrentModificationException 의미와 해결 방법 (0) | 2022.03.19 |
| jdk / jre / jvm / lts 무슨 말이지? (0) | 2022.03.10 |