Tomcat 기초 구조

[toc]
Tomcat 기초 구조
1. Tomcat 안내
Tomcat 은 Apache 소프트웨어 재단 (Apache Software Foundation) 의 자카르타 프로젝트 의 핵심 프로젝트 로 Apache, Sun 과 다른 회사 및 개인 이 공동으로 개발 한 것 이다.
자바 프로그램 이 작성 한 사 이 트 는 tomcat + jdk 로 실 행 됩 니 다.
tomcat 는 미들웨어 로 서 진정 으로 역할 을 합 니 다. 자바 스 크 립 트 를 분석 하 는 것 은 jdk 입 니 다.
jdk (자바 development kit) 는 전체 자바 의 핵심 으로 자바 운영 환경 과 자바 관련 도구 및 자바 기초 라 이브 러 리 를 포함 합 니 다.
가장 주류 인 jdk 는 sun 회사 가 발표 한 jdk 이다. 그 밖 에 IBM 회사 도 JDK 를 발 표 했 고 CentOS 에 도 yum 으로 openjdk 를 설치 할 수 있다.
우 리 는 이미 LAMP 와 LNMP 구 조 를 배 웠 다.개발 언어 는 PHP 입 니 다.PHP 는 웹 프로그램 을 개발 하 는 데 매우 유행 하 는 언어 라 고 할 수 있다.초기 에 비교적 유 행 했 던 것 은 asp 로 windows 플랫폼 에서 실 행 된 프로 그래 밍 언어 였 다.하지만 안전성 이 높 지 않 기 때문에그래서 점점 더 많은 사람들 이 Php 로 사 이 트 를 개발 하 는 것 도 상대 적 으로 안전 하 다.
PHP 외 에 자바 라 는 언어 도 있 습 니 다.자바 는 매우 방대 한 개발 언어 이다.웹 사 이 트 를 개발 할 수 있 을 뿐만 아니 라대형 소프트웨어, 도구, 심지어 게임 도 개발 할 수 있다.tomcat 는 자바 언어 로 쓴 사 이 트 를 실행 하 는 중간 부품 입 니 다.그럼 우리 Php 가 쓴 코드 는 php 로 해석 해 야 합 니 다.자 바 는 tomcat 에 JDK 를 더 해서 같이 해석 해 야 돼 요.
jdk 설치
2.1 다운로드:
a. jdk 버 전 1.6, 1.7, 1.8 속칭 6;7; 8;
b. 홈 페이지 다운로드 주소:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
c. 제 가 테스트 를 하기 때문에 Liux 에서 wget 을 할 수 없습니다.로 컬 컴퓨터 의 브 라 우 저 를 사용 하여 최신 버 전의 X64 를 다운로드 하고 tar. gz 버 전 을 다운로드 합 니 다.
d. 이전에 설 치 된 xftp 를 사용 하여 jdk 를 원 격 디 렉 터 리 에 업로드 합 니 다.(안전성 이 보장 되 고 21 포트 를 열 필요 가 없습니다. sshd 포트 를 통 해 전송 합 니 다)
2.2 압축 해제 설치, 설정
a. 압축 풀기, 크기 보기
[root@xavi src]#  tar zxvf jdk-8u161-linux-x64.gz 
[root@xavi src]# du -sh jdk1.8.0_161/
371M    jdk1.8.0_161/

b. 압축 을 푼 파일 을 지정 한 디 렉 터 리 로 이동
[root@xavi src]# mv jdk1.8.0_161 /usr/local/jdk1.8

c. 환경 변수 추가
vi /etc/profile //     

JAVA_HOME=/usr/local/jdk1.8/
JAVA_BIN=/usr/local/jdk1.8/bin
JRE_HOME=/usr/local/jdk1.8/jre
PATH=$PATH:/usr/local/jdk1.8/bin:/usr/local/jdk1.8/jre/bin
CLASSPATH=/usr/local/jdk1.8/jre/lib:/usr/local/jdk1.8/lib:/usr/local/jdk1.8/jre/lib/charsets.jar

d. profile 새로 고침, 적용
source /etc/profile
e. 설치 성공 여 부 를 확인 하고 유효 합 니 다.
[root@xavi src]# !java
java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

2.3 버 전 을 살 펴 보면 설 치 된 버 전 번호 가 맞지 않 는 것 을 발견 할 수 있 습 니 다. 자바 version "1.8.0 141" 이 표 시 됩 니 다.
a. 다른 버 전의 openjdk 가 설치 되 어 있 는 지 확인 합 니 다.
rpm -qa | grep openjdk //          openjdk   

b. 이 세 개의 openjdk 를 모두 마 운 트 해제 했다: rpm - e -- nodeps
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.141-1.b16.el7_3.x86_64
rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.141-2.6.10.1.el7_3.x86_64
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.141-1.b16.el7_3.x86_64

마 운 트 해제, 다시 압축 풀기, 이동, 편집
[root@xavi src]# !mv
mv jdk1.8.0_161 /usr/local/jdk1.8
[root@xavi src]# !vim
vim /etc/profile
[root@xavi src]# !source
source /etc/profile
[root@xavi src]# !java
java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

다른 마 운 트 해제 명령
또 다른 명령 이 있 습 니 다.
rpm -qa | grep gcj

    rpm -qa | grep jdk

openjdk source 를 찾 지 못 하면 이렇게 마 운 트 해제 할 수 있 습 니 다.
yum -y remove java java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
    yum -y remove java java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

3. Tomcat 설치
사실 Tomcat 는 중간 부품 일 뿐, 진정 으로 작용 하 는 것 은 우리 가 이미 설치 한 jdk 이다.Tomcat 이 없 으 면 안 됩 니 다. 그의 역할 은 8080 을 감청 하 는 것 입 니 다.8005;8009 포트.사이트 에 접근 하려 면 웹 서버 가 필요 하고 Tomcat 는 웹 서버 로 이해 할 수 있 습 니 다!
3.1 다운로드 설치
[root@xavi src]# ls
apache-tomcat-8.5.29.tar.gz  mariadb-10.2.6-linux-glibc_214-x86_64.tar.gz  php-5.6.30.tar.bz2
apr-1.6.3                    mysql-5.5.55                                  php-5.6.30.tar.gz
apr-1.6.3.tar.gz             mysql-5.5.55.tar.gz                           php-5.6.30.tar.gz.1
apr-util-1.6.1               mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz     php-7.1.6
apr-util-1.6.1.tar.gz        mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz     php-7.1.6.tar.bz2
httpd-2.4.29                 nginx-1.12.1                                  phpredis-develop
httpd-2.4.29.tar.gz          nginx-1.12.1.tar.gz                           phpredis-develop.zip
jdk-8u161-linux-x64.gz       php-5.6.30
[root@xavi src]# tar zxvf apache-tomcat-8.5.29.tar.gz

3.2 지정 한 디 렉 터 리 로 이동
[root@xavi src]# mv apache-tomcat-8.5.29 /usr/local/tomcat

3.3 tomcat 를 시작 합 니 다. 우 리 는 바 이 너 리 패 키 지 를 다운로드 합 니 다. 편집 할 필요 가 없고 직접 시작 할 수 있 습 니 다.
[root@xavi src]# /usr/local/tomcat/bin/startup.sh
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/local/jdk1.8
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@xavi src]# ps aux |grep java
root       3667 22.6  4.4 2966644 83032 pts/0   Sl   10:48   0:04 /usr/local/jdk1.8/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
root       3694  0.0  0.0 112684   972 pts/0    R+   10:48   0:00 grep --color=auto java

3.4 Tomcat 은 직접 서 비 스 를 재 개 하 는 것 을 지원 하지 않 기 때문에 먼저 닫 고 다시 켜 야 합 니 다.
[root@xavi src]# /usr/local/tomcat/bin/shutdown.sh
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/local/jdk1.8
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar

3.5 다시 켜 기, 감청 포트 보기:
[root@xavi src]# netstat -lntp |grep java
tcp6       0      0 :::8080                 :::*                    LISTEN      3880/java 
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      3247/java    
tcp6       0      0 :::8009                 :::*                    LISTEN      3880/java 

    8080   web     ;

8005     ;//      

8009             ,  httpd Tomcat      

3.6 외부 브 라 우 저 로 8080 포트 보기
[root@xavi src]#  systemctl stop firewalld
[root@xavi src]# systemctl disable firewalld
       

확장
j2ee, j2se, ejb, javabean, server let, jsp 간 의 관계 (대화)
자바 는 뿌리 (또한 구체 적 인 언어) 이다.
J2EE, J2SE 는 자바 가 서로 다른 분야 에서 의 구체 적 인 응용 이다.
J2SE 는 응용 프로그램 개발 에 사용 되 며 Windows 플랫폼 응용 프로그램 과 유사 합 니 다.
J2EE 는 웹 전자상거래 등에 사용 되 는 큰 개념 이다.
EJB, Servlet 과 JavaBean 의 종합 적 이 고 유연 한 운용 은 우수한 J2EE 플랫폼 을 형성 할 수 있다.
너 는 Jsp 를 Servlet 에 대한 추가 패키지 로 볼 수 있다.
j2ee: 이 물건 은 두 가지 다른 것 을 대표 합 니 다. 하 나 는 sun 의 서버 소프트웨어 입 니 다. 구체 적 인 소프트웨어 이지 기술 이 아 닙 니 다.다른 하 나 는 sun 을 가리 키 는 자바 기술 로 jsp, servlet, javabean, ejb 등 을 포함한다.
j2se: 제 가 알 고 있 는 것 은 sun 의 jdk 는 전자 장 비 를 위 한 버 전이 있 는데 j2me 라 고 하 는데 핸드폰, pda 등 응용 프로그램 을 개발 하 는 데 사용 되 고 j2se 는 컴퓨터 를 위 한 것 입 니 다.
javabean: 쉽게 말 하면 많은 function 클래스 를 봉 하여 다른 jsp, servlet 등에 의 해 호출 된 것 입 니 다.
ejb: 더 통속 적 으로 말 하면 자바 빈 을 여러 대의 컴퓨터 에 분포 시 켜 호출 할 수 있 습 니 다.
servlet: http 프로 토 콜 을 통 해 사용자 와 상호작용 하 는 jsp: servlet 의 UI 디자인 이 너무 나 빠 서 jsp 는 더욱 편리 한 UI 디자인 을 실현 할 수 있 습 니 다.
struts: jsp 는 웹 페이지 와 코드 를 섞 어 너무 복잡 해서 struts 를 내 면 jsp 의 UI 와 논리 부분 을 분리 해서 처리 할 수 있 습 니 다.
hibenate: jdo 의 대체 품
J2EE 는 계약서 한 무더기 다.만약 에 Tcl 이 자동 차 를 만 들 고 자신 이 너무 번 거 로 우 면 엔진, 케이스, 전동, 내부 장식 등 몇 부분 으로 뜯 어 낸다.그리고 엔진 은 도요 타 에 게, 케이스 는 현대 에, 내 시 는 혼 다 에, 전동 은 대중 에 게 맡 겼 다.계약 만 잘 하면 중국 에서 자동 차 를 모 으 기 를 기다 리 고 있다.

좋은 웹페이지 즐겨찾기