tomcat

tomcat简介

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。   Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML标准通用标记语言下的一个应用)页面的访问请求。实际上   Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。 诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为10.0.5。

 

 原理

Tomcat结构图:

tomcat

Tomcat主要组件:服务器Server,服务Service,连接器Connector、容器Container。连接器Connector和容器Container是Tomcat的核心。

    一个Container容器和一个或多个Connector组合在一起,加上其他一些支持的组件共同组成一个Service服务,有了Service服务便可以对外提供能力了,但是Service服务的生存需要一个环境,这个环境便是Server,Server组件为Service服务的正常使用提供了生存环境,Server组件可以同时管理一个或多个Service服务。

 

 

tomcat项目部署

java环境安装

//安装jdk环境
[root@MF ~]# yum -y install java-11-openjdk

//查看安装版本
[root@MF ~]# java -version
openjdk version "11.0.11" 2021-04-20 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.11+9-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.11+9-LTS, mixed mode, sharing)

 

tomcat部署

官网下载tomcat:Index of /apache/tomcat/tomcat-10/v10.0.6/bin

//下载tomcat
[root@MF ~]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-10/v10.0.6/bin/apache-tomcat-10.0.6.tar.gz

//解压部署
[root@MF ~]# ls
apache-tomcat-10.0.6.tar.gz 

[root@MF ~]# tar xf apache-tomcat-10.0.6.tar.gz 
[root@MF ~]# ls
anaconda-ks.cfg              
apache-tomcat-10.0.6   

[root@MF ~]# mkdir /usr/local/tomcat
[root@MF ~]# mv apache-tomcat-10.0.6 /usr/local/tomcat/jenkins

[root@MF ~]# ls /usr/local/tomcat/jenkins/
bin           CONTRIBUTING.md  logs       RELEASE-NOTES  webapps
BUILDING.txt  lib              NOTICE     RUNNING.txt    work
conf          LICENSE          README.md  temp

//启动tomcat
[root@MF ~]# /usr/local/tomcat/website/bin/startup.sh start
Using CATALINA_BASE:   /usr/local/tomcat/website
Using CATALINA_HOME:   /usr/local/tomcat/website
Using CATALINA_TMPDIR: /usr/local/tomcat/website/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/tomcat/website/bin/bootstrap.jar:/usr/local/tomcat/website/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Tomcat started.

[root@MF ~]# ss -antl
LISTEN 0       1         [::ffff:127.0.0.1]:8005               *:*    
LISTEN 0       80                         *:3306               *:*    
LISTEN 0       100                        *:8080               *:*    

tomcat

 

访问测试页面

//写一个hello world的java页面
[root@MF ~]# vi index.jsp
[root@MF ~]# cat index.jsp
<html>
<head>
        <title>test page</title>
</head>
<body>
        <%
            out.println("Hellow World");
        %>
</body>
</html>

[root@MF ~]# mkdir /usr/local/tomcat/website/webapps/test
[root@MF ~]# cp index.jsp /usr/local/tomcat/website/webapps/test/
[root@MF ~]# ls /usr/local/tomcat/website/webapps/test
index.jsp

//重启tomcat
[root@MF tomcat]# website/bin/shutdown.sh 
Using CATALINA_BASE:   /usr/local/tomcat/website
Using CATALINA_HOME:   /usr/local/tomcat/website
Using CATALINA_TMPDIR: /usr/local/tomcat/website/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/tomcat/website/bin/bootstrap.jar:/usr/local/tomcat/website/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
NOTE: Picked up JDK_JAVA_OPTIONS:  --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED

[root@MF tomcat]# website/bin/startup.sh 
Using CATALINA_BASE:   /usr/local/tomcat/website
Using CATALINA_HOME:   /usr/local/tomcat/website
Using CATALINA_TMPDIR: /usr/local/tomcat/website/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/tomcat/website/bin/bootstrap.jar:/usr/local/tomcat/website/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Tomcat started.

tomcat

访问Host Manager页面

tomcat

//修改配置文件
[root@MF website]# cd conf/
[root@MF conf]# ls
Catalina             jaspic-providers.xml  tomcat-users.xml
catalina.policy      jaspic-providers.xsd  tomcat-users.xsd
catalina.properties  logging.properties    web.xml
context.xml          server.xml
[root@MF conf]# vim tomcat-users.xml 
。。。。。。
#在末尾添加次些内容
<role rolename="admin-gui"/> 
<user username="tomcat" password="s3cret" roles="admin-gui"/>
</tomcat-users> 

[root@MF website]# cd webapps/
[root@MF webapps]# ls
docs  examples  host-manager  manager  ROOT  test
[root@MF webapps]# cd host-manager/
[root@MF host-manager]# ls
css  images  index.jsp  META-INF  WEB-INF
[root@MF host-manager]# vim META-INF/context.xml 
。。。。。。
#在此段添加网段
allow="192\.168\.186\.\d+|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
。。。。。。

重新访问

用户名:tomcat

密码:s3cret

登录后出现以下界面

tomcat

 

访问服务器状态

tomcat

//修改配置文件
[root@MF webapps]# vim manager/META-INF/context.xml 
。。。。。。。
allow="192\.168\.186\.\d+|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />

[root@MF webapps]# vim manager/META-INF/context.xml 
[root@MF webapps]# vim ../conf/tomcat-users.xml
。。。。。。
<role rolename="admin-gui"/>
<role rolename="manager-gui"/>
<user username="tomcat" password="s3cret" roles="admin-gui,manager-gui"/>
</tomcat-users>

//重启
[root@MF webapps]# ../bin/catalina.sh stop
Using CATALINA_BASE:   /usr/local/tomcat/website
Using CATALINA_HOME:   /usr/local/tomcat/website
Using CATALINA_TMPDIR: /usr/local/tomcat/website/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/tomcat/website/bin/bootstrap.jar:/usr/local/tomcat/website/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
NOTE: Picked up JDK_JAVA_OPTIONS:  --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED

[root@MF webapps]# ../bin/catalina.sh start
Using CATALINA_BASE:   /usr/local/tomcat/website
Using CATALINA_HOME:   /usr/local/tomcat/website
Using CATALINA_TMPDIR: /usr/local/tomcat/website/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/tomcat/website/bin/bootstrap.jar:/usr/local/tomcat/website/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Tomcat started.

tomcat

 

tomcat

 

Java体系

原文链接:https://blog.csdn.net/qq_39091292/article/details/84859611

JAVA被分为3种结构独立但又彼此依赖的技术体系分支:Java SE(标准版)、Java EE(企业版)、Java ME(精简版)。以上三种体系分支分别对应着不同的规范集合和组件:Java SE活跃在桌面领域,主要包含Java API组件;Java EE活跃在企业级领域,除了包含Java API组件,还扩充有Web组件、事务组件、分布式组件、EJB组件、消息组件;Java ME则活跃在嵌入式领域,仅保留部分Java API组件以及适应设备的特有组件,这也是它“精简版”称呼的由来。

tomcat

JAVA体系优点:

拥有一门结构严谨、面向对象的编程语言
跨平台(摆脱硬件平台的约束) ----“Write once,Run anywhere”主8要由字节码支持。因为Java源代码默认编译结果为平台通用的字节码。
安全性优越  ---提供了一种相对安全的内存管理和访问机制,避免了绝大部分的内存泄露和指针越界问题
多线程
分布式
完善的应用程序接口
大量的第三方类库

Java技术体系所包含的内容:

tomcat

 

 JDK与JRE的关系:

JDK:支持Java程序开发的最小环境。JDK = Java程序设计语言+Java虚拟机+Java API类库。

JRE:支持Java程序运行的标准环境。JRE=Java虚拟机 +Java API类库中的Java SE API子集 。

 

中间件

简介

中间件是一类连接软件组件和应用的计算机软件,它包括一组服务。以便于运行在一台或多台机器上的多个软件通过网络进行交互。该技术所提供的互操作性,推动了一致分布式体系架构的演进,该架构通常用于支持并简化那些复杂的分布式应用程序,它包括web服务器、事务监控器消息队列软件

 

优势

1、满足大量应用的需要 ;  2、运行于多种硬件和OS平台 ;
3、支持分布式计算,提供跨网络、硬件和OS平台的透明性的应用或服务的交互功能 ;  4、支持标准的协议 ;  5、支持标准的接口。
 

应用

1、中间件与电子商务的整合。 Intemet是电子商务发展的基础,让商户可以通过它,把商业扩展到能到达的任意地点。这其中离不开大量的信息传输,而电子商务则使用了浏览器/服务器B/S(BrowserJServer)的技术来达到大量数据处理的目的。    2、中间件在B/S模式中的架构。 中间件在B/S模式下起到了功能层的作用。当用户从WEB界面向服务器提交了数据请求或者应用请求时,功能层负责将这些请求分类为数据或应用请求,再向数据库发出数据交换申请。数据库对请求进行筛选处理之后,再将所需的数据通过功能层传递回到用户端。通过如此处理,单一用户可以进行点对面的操作,无需通过其他软件进行数据转换。

 

上一篇:神经协同过滤Neural Collaborative Filtering(NCF)


下一篇:菜单