1.3 Tomcat的下载和安装

Tomcat是Java领域最著名的开源web容器,简单、易用,稳定性极好,既可以作为个人学习之用,也可以作为商业产品发布。Tomcat不仅提供了Web容器的基本功能,还支持JAAS和JNDI绑定等。

1.3.1 安装Tomcat服务器

因为Tomcat完个是纯Java实现,因此它是平台无关的,在任何平台上运行完全相同。在Windows和Linux平台上的安装及配置基本相同。我们Windows平台为示范,介绍Tomcat的下载和安装。

1. 登录http://tomcat.apache.org站点,下载Tomcat合适的版本,而且需使用Servlet3.1规范,因此必须使用Tomcat8.0或更新的版本系列。

目前Tomcat有几个稳定的产品版本,JDK1.6则建议使用Tomcat6.0系列。而Tomcat只有8.0,

才支持Servlet3.1规范。Tomcat 8.0.X的最新稳定版本是8.0.9,建议下载该版本,Windows平台ZIP包,Linux平台下载载TAR包。建议不要下载安装文件,因为安装文件的Tomcat看不到启动、运行时控制台的输出,不利于开发者使用。

2. 解压缩刚下载到的压缩包,解压缩后应有如下文件结构。

bin:存放启动和关闭Tomcat的命令的路径。

conf:存放Tomcat的配置,所有的Tomcat的配置都在该路径上设置。

lib:存放Tomcat服务器的核心类库(JAR文件),如果需要扩展Tomcat功能,也可第三方

类库复制到该路径下。

logs:这是一个空路径,该路径用于保存Tomcat每次运行后产生的日志。

temp:保存web应用运行过程中生成的临时文件。

webapps:该路径用于自动部署web应用,将web应用复制在该路径下,Tomcat会将该应用自动部署在容器中。

work:保存web应用在运行过程中,编译生成的class文件。该文件夹可以删除,但每次启

Tomcat服务器时,系统将再次建立该路径。

license等相关文档。

将解压缩后的文件夹放在任意路径下。

运行Tomcat只需要一个环境变量:JAVA_HOME。不管是Windows还是Linux,只需要增加该环境变量即可,该环境变量的值指向JDK安装路径。

此处JAVA_HOME环境变量应该指向JDK安装路径,不是JRE安装路径。JDK安装

路径下应该包含bin目录,该目录下应该有javac.exe、native2ascii.exe等程序;JDK安装

路径下还含有一个lib目录,该目录下应该有dt.jar和tools.jar两个文件;JDK安装路径下

还应该包含jre目录,这个jre目录就是JDK自带的JRE。

3. 启动Tomcat,对于Windows平台,只需要双击Tomcat安装路径下bin目录中的startup.bat文件即可。启动Tomcat之后,打开浏览器,在地址栏输入http://localhost:8080,然后回车,浏览器中出现如图1.2所示的界面,即表示Tomcat安装成功。

Tomcat安装成功后,必须对其进行简单的配置,这些配置包括Tomcat的端口、控制台等。下面详细介绍这些配置过程。

虽然Tomcat是一个免费的web服务器,但也提供了图形界面控制台,通过控制台,用户可以方便地部署Web应用、监控Web应用的状态等。但对于一个开发者而言,通常建议通过修改配置文件来管理Tomcat配置,而不是通过图形界面。

1.3.2 配置Tomcat的服务端口

Tomcat的默认服务端口是8080,可以通过管理Tomcat配置文件来改变该服务端口,甚至可以通过修改配置文件让Tomcat同时在多个端口提供服务。

Tomcat的配置文件都放在conf目录下,控制端口的配置文件也放在该路径下。打开conf下的server.xml文件,务必使用记事本或vi等无格式的编辑器,不要使用如写字板等有格式的编辑器。定位server.xml文件的68行处,看到如下代码:

<Connector port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443"/>

其中,Port="8080"就是Tomcat提供web服务的端口,将8080修改成任意的端口,建议使用1024以上的端口,避免与公用端口冲突。此处修改为8888,即Tomcat的web服务的提供端口为8888。修改成功后,重新启动Tomcat后,在浏览器地址栏输入http://localhost:8888,回车,将再次看到如图1.2所显示的tomcat控制台界面,即显示Tomcat端口修改成功。

提示

如果需要让Tomcat运行多个服务,只需要复制server.xml文件中的Service元素,并修改相应的参数,便可以实现一个Tomcat运行多个服务,当然必须在不同的端口提供服务。

在Web应用的开发阶段,通常希望Tomcat能列出Web应用根路径下的所有页面,这样能更方便地选择需要调试的JSP页面。在默认情况下,出于安全考虑,Tomcat并不会列出Web应用根路径下的所有页面,为了让Tomcat列出web应用根路径下的所有页面,可以打开Tomcat的conf目录下的web.xml文件,在该文件的110、111两行,看到一个listings参数,该参数的值默是false,将该参数改为true,

即可让Tomcat列出web应用根路径下的所有页面。即将这两行改为如下形式:

<init-param>

<param-name>listing</param-name>

<p?rarn-value>true</param-vaIue>

</init-param>

1.3.3进入控制台

在图1.2的右上角显示有三个控制台:一个是Server Status控制台,另一个是Manager App控制台,还有一个是Host Manager控制台。 Status控制台用于监控服务器的状态,而Manager控制台可以部署、监控应用,因此通常只需使用Manager控制台即可。

如图1.2右上角所示的第二个按钮,即是进入Manager控制台的链接,单击该按钮将出现如图1所示的登录界面。

这个控制台必须输入用户名和密码才可以登录,控制台的用户名和密码是通过Tomcat的JAAS控制的。下面介绍如何为这个控制台配置用户名和密码。

提示

JAAS的全称是Java Authentication Authorization Service(Java验证和授权API),它用于控制对Java web应用的授权访问。关于JAAS的全面介绍,在前面关于Tomcat文件结构的介绍中己经指出:web apps路径是web应用的存放位置,而Manager控制台对应的web应用也是放在该路径下的。进入webapps/manager/WEB-INF路径下,该路径存放Manager应用的配置文件,用无格式编辑器打开文件。

<!-- Define a Security Constraint on this Application -->

<!-- NOTE:  None of these roles are present in the default users file -->

<security-constraint>

<!--访问/HTML/*资源需要manager-gui角色-->

<web-resource-collection>

<web-resource-name>HTML Manager interface (for humans)</web-resource-name>

<url-pattern>/html/*</url-pattern>

</web-resource-collection>

<auth-constraint>

<role-name>manager-gui</role-name>

</auth-constraint>

</security-constraint>

<security-constraint>

<!--访问/text/*资源需要manager-script角色-->

<web-resource-collection>

<web-resource-name>Text Manager interface (for scripts)</web-resource-name>

<url-pattern>/text/*</url-pattern>

</web-resource-collection>

<auth-constraint>

<role-name>manager-script</role-name>

</auth-constraint>

</security-constraint>

<security-constraint>

<!--访问/jmxproxy/*资源需要manager-jmx角色-->

<web-resource-collection>

<web-resource-name>JMX Proxy interface</web-resource-name>

<url-pattern>/jmxproxy/*</url-pattern>

</web-resource-collection>

<auth-constraint>

<role-name>manager-jmx</role-name>

</auth-constraint>

</security-constraint>

<security-constraint>

<web-resource-collection>

<!--访问/status/*资源需要以下任务一个角色-->

<web-resource-name>Status interface</web-resource-name>

<url-pattern>/status/*</url-pattern>

</web-resource-collection>

<auth-constraint>

<role-name>manager-gui</role-name>

<role-name>manager-script</role-name>

<role-name>manager-jmx</role-name>

<role-name>manager-status</role-name>

</auth-constraint>

</security-constraint>

<!-- Define the Login Configuration for this Application -->

<!--确定JAAS的登录方式-->

<login-config>

<!--BASIC表示使用弹出式窗口登录-->

<auth-method>BASIC</auth-method>

<realm-name>Tomcat Manager Application</realm-name>

</login-config>

通过上面的配置文件可以知道,登录Manager控制台可能需要不同的manager角色。对于普通开发者来说,通常需要访问匹配/html/*、/status/*的资源,因此为该用户分配一个manager-gui角色即可。

Tomcat默认采用文件安全域,即以文件存放用户名和密码,Tomcat的用户山conf路径下的

tomcat-users.xml文件控制,打开该文件,发现该文件内有如下内容:

<tomcat-users>

<!--

NOTE:  By default, no user is included in the "manager-gui" role required

to operate the "/manager/html" web application.  If you wish to use this app,

you must define such a user - the username and password are arbitrary.

-->

<!--

NOTE:  The sample user and role entries below are wrapped in a comment

and thus are ignored when reading this file. Do not forget to remove

<!.. ..> that surrounds them. http://www.infocool.net

-->

<!--

<!--增加一个角色,指定角色名即可-->

<role rolename="tomcat"/>

<role rolename="role1"/>

<!--增加一个用户,指定用户名、密码、角色即可-->

<user username="tomcat" password="tomcat" roles="tomcat"/>

<user username="both" password="tomcat" roles="tomcat,role1"/>

<user username="role1" password="tomcat" roles="role1"/>

-->

</tomcat-users>

上面的配置文件显示了Tomcat默认没有配置任何用户,所以无论在如图1.3所示的登录对话框中输入任何内容,系统都不能登录成功。为了正常登录Manager控制台,可以通过修改tomcat-users.xml文件来增加用户,并让该用户属于manager角色即可。Tomcat允许在元素中增加元素来增加用户,将tomcat-users.xml文件内容修改如下:

<tomcat-users>

<!--

<!--增加一个角色,指定角色名即可-->

<role rolename="manager-gui"/>

<!--增加一个用户,指定用户名、密码、角色即可-->

 <user username="manager" password="manager" roles="manager-gui"/>

-->

</tomcat-users>

上面的配置文件中粗体字代码行增加了一个用户:用户名为manager,密码为manager,角色属于manager-gui。这样即可在如图1.3所示的登录对话框中输入manager、manager来登录Manager控制台。

成功登录后可以看到如图1.4所示的界面。

图1.4 Tomcat的Manager控制台

在如图1.4所示的控制台可监控到所有部署在该服务器下的web应用,左边列出了所有部署在该web容器内的web应用,右边的4个按钮则用于控制,包括启动、停止、重启等。

控制台下方的Deploy区则用于部署web应用。Tomcat控制台提供两种方式部署web应用:一种是将整个路径部署成web应用:另一种是将WAR文件部署成web应用(在图1.4中看不到这种方式,在Deploy区下面,还有一个WAR file to deploy区,用于部署WAR文件)。

1.3.4部署web应用

在Tomcat中部署web应用的方式主要有如下几种。

l 利用Tomcat的自动部署。

l 利用控制台部署。

l 增加自定义的web部署文件。

l 修改server.xml文件部署Web应用。

利用Tomcat的自动部署方式是最简单、最常用的方式,只要将一个web应用复制到Tomcat的webapps下,系统就会把该应用部署到Tomcat中。

利用控制台部署web应用也很简单,只要在部署web应用的控制台按如图1.5所示方式输入即可。

图1.5利用控制台部署Web应用

按如图所示方式输入后,单击“Deploy"按钮,将会看到Tomcat的web aps目录下多了一个

名为AppName的文件夹,该文件夹的内容和自己项目文件夹的内容完全相同。这表明:当利用控制台部署web应用时,其实质依然是利用Tomcat的自动部署。

第三种方式则无须将web应用复制到Tomcat安装路径下,只是部署方式稍稍复杂一点,需要在conf目录下新建Catalina目录,再在Catalina目录下新建localhost目录,最后在该目录下新建一个名字任意的XML文件一一该文件就是部署web应用的配置文件,该文件的主文件名将作为web应用的虚拟路径。例如在conf/Catalina/localhost下增加一个dd.xml文件,该文件的内容如下:

<Context path="" docBase="D:\workspace\App" debug="0" reloadable="true"/>

上面的配置文件中粗体字代码指定了web应用的绝对路径,再次启动Tomcat,Tomcat将会把

D:\workspace\路径下的App文件夹部署成web应用。该应用的URL地址为:

http://<server-host:port>/dd, 其中URL中的dd就是web部署文件的主名。

最后还有一种方式是修改server.xml文件,这种方式需要修改conf目录下的server.xml文件,修改该文件可能破坏Tomcat的系统文件,因此不建议采用。

1.3.5配置Tomcat的数据源

从Tomcat 5.5开始,Tomcat内置了DBCP的数据源实现,所以可以非常方便地配置DBCP数据源。

Tomcat提供了两种配置数据源的方式,这两种方式所配置的数据源的访问范围不同:一种数据源可以让所有的web应用都访问,被称为全局数据源;另一种只能在单个的web应用中访问,被称为局部数据源。

不管配置哪种数据源,都需要提供特定数据库的JDBC驱动。我们以MySQL为例来配置数据源,所以读者必须将MySQL的JDBC驱动程序复制到Tomcat的lib路径下。

局部数据源无须修改系统的配置文件,只需修改用户自己的web部署文件,不会造成系统的混乱,而且数据源被封装在一个web应用之内,防止被其他的web应用访问,提供了更好的封装性。

局部数据源只与特定的web应用相关,因此在该web应用对应的部署文件中配置。例如,为上面的Web应用增加局部数据源,修改Tomcat下conf/Catalina/localhost下的dd.xml文件即可。为Context元素增加一个Resource子元素,增加局部数据源后的dd.xml文件内容如下:

<Context docBase="G:/publish/codes/Ol/aa" debug="0">

<!--其中name指定数据源在容器中的JNDI名

driverClassName指定连接数据库的驱动

uri指定数据库服务的URL

username指定连接数据库的用户名

Password指定连接数据库的密码

maxActive指定数据源最大活动连接数

maxIdie指定数据池中最大的空闲连接数

maxwait指定数据池中最大等待获取连接的客户端

-->

<Resource name:"jdbc/dstest"auth="Container"

Type=”javax.sql.DataSource"

driverCIassName="com.mysql.jdbc.Driver"

Url=”jdbc://localhost:3306/javaee"

Username="root" pssword="32147" max?ctive="5"

maxIdIe="2"  maxWait=”10000"/>

</Context>

上面的配置文件中粗体字标出的Resource元素就为该web应用配置了一个局部数据源,该元素的各属性指定了数据源的各种配置信息。

提示

JNDI的全称是Java Naming Directory Interface,即Java命名和目录接口,听起来非常专业,其实很简单:就是为某个Java对象起一个名字。例如,上面JNDI的用途就是为Tomcat容器中的数据源起一个名字:jdbc/dstest,从而让其他程序可以通过该名字来访问该数据源对象。

再次启动Tomcat,该web应用即可通过该JNDI名字来访问该数据源。下面是测试访问数据源的

JSP页面代码片段。

//初始化Context,使用InitialContext初始化Context

Context ctx = new InitiaIContext();

/*

通过JND工查找数据源,该JND工为java:comp/env/jdbc/dstest,分成两个部分

Java:comp/env是Tomcat固定的,Tomcat提供的JNDI绑定都必须加该前缀

jdbc/dstest是定义数据源时的数据源名

DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/dstest");

//获取数据库连接

Connection conn = ds.getConnection()冫

//获取Statement

Statement stmt = conn.createStatement();

//执行查询,返回Resultset对象

ResultSetrs = stmt.executeQuery(“select * from new_inf”)

While (rs.next())

Out..println(rs.getString(1)) +”\t" + rs.getString(2) +”<br/>”);

上面的粗体字代码实现了JNDI查找数据源对象,一旦获取了该数据源对象,程序就可以通过该数据源取得数据库连接,从而访问数据库。

上而的方式是配置局部数据源,如果需要配置全局数据源,则应通过修改server文件来实现。

全局数据源的配置与局部数据源的配置基本类似,只是修改的文件不同。局部数据源只需修改Web应用的配置文件,而全局数据源需要修改Tomcat的server.xml文件。

使用全局数据源需要修改Tomcat原有的server.xml文件,所以可能导致破坏Tomcat

系统,因而尽量避免使用全局数据源。

转载请注明出处http://blog.csdn.net/wolaiye320/article/details/51420178

时间: 2024-11-05 21:45:11

1.3 Tomcat的下载和安装的相关文章

Http协议和Tomcat服务器、Tomcat的下载与安装

1.Http协议和Tomcat服务器(1)Http协议 Http请求和Http响应:有请求就有响应,有响应就有请求,这两个是一体的:(2)Http请求: Http请求行:请求方式:请求的资源:协议版本: Http请求体:post和get有区别: Http请求头:(3)Http响应: Http响应行:状态码:200.302.304.404.500:状态信息:OK.Not Found: Http响应体: Http响应头: 2.Tomcat的下载与安装(1)下载网址:http://tomcat.apa

Tomcat的下载、安装、配置、管理

Tomcat是Java领域最著名的Web开源容器,简单,易用,稳定性好.既可以用于个人学习使用,也可以作为商业开发产品发布.Tomcat不仅仅提供Web容器的基本功能,还支持JAAS和JNDI绑定等.目前最新的发布版本Tomcat是8.0.14,这个文章中使用的Tomcat版本是8.0.3,其实最新版与该版本的区别不是非常大,具体有哪些新特性可以阅读apache的官方文档,进行了解. 下载Tomcat服务器 登录http://tomcat.apache.org下载. 解压安装包 解压后会得到如下

Tomcat的下载和安装

Tomact是java领域最著名的开源Web容器. 安装Tomcat 服务器 配置Tomact服务器端口 部署Web应用

Tomcat的下载、安装、启动与关闭(ubuntu server 16.04)

从官网下载 Binary Distributions 版本的相应的压缩包, 解压后,放到想要的目录即可. 启动和关闭Tomcat服务器 进入tomcat目录下的bin目录,执行 ./startup.sh 或 ./shutdown.sh $ cd apache-tomcat-9.0.7/bin $ ./startup.sh # 启动Tomcat服务器 $ ./shutdown.sh # 关闭Tomcat服务器 Tomcat服务器启动后,通过内网的另一台机器进行访问,其中192.168.100.14

下载并安装Myeclipse及Tomcat

测试环境: 主机系统:Win 7 虚拟机:VMware workstation 11.1.0 虚拟机OS: centos 6.5 64位 Kernel 2.6.32-431-e16.x86_64 Myeclipse:2015 1.0 Tomcat:6.0.43 一.Myeclipse的下载及安装 1. 下载myeclipse http://www.myeclipsecn.com/download/ 2. 将下载后的文件制作成ISO镜像,并在虚拟机中加载 不会的童鞋参考: Linux下安装JDK并

Apache Tomcat下载、安装、环境变量配置以及项目部署

前言 针对在本地访问文件或资源出现的跨域问题,可以通过搭建本地服务器来解决,本篇随笔主要介绍通过搭建Apache Tomcat服务器来解决跨域.包括Apache Tomcat的下载.安装.环境变量的配置以及项目部署等. 具体内容 一.Apache Tomcat的下载 Apache Tomcat下载网址:https://tomcat.apache.org/ 选择下载版本,现在最新的版本是Tomcat 9.0.27.这里下载最新版本,单击"Download",进入到下载页面,如下图所示:

Tomcat下载和安装

一.Tomcat下载和安装 Tomcat 是一个免费的开放源代码的 Servlet 容器,它是 Apache 软件基金会的一个顶级项目,由 Apache,Sun和其他一些公司及个人共同开发而成.由于有了 Sun 的参与与支持,最新的 Servlet 和 JSP 规范总是能在 Tomcat 中的到体现. 1.下载tomcat 官方网站:http://tomcat.apache.org/ 目前最新版本是8.0版 可以根据自己的系统来选择下载的版本 1.2 安装tomcat 解压缩下载的tomcat

tomcat下载与安装..使用和配置环境变量

正文: 一.下载 tomcat官方网站 http://tomcat.apache.org 在左边Download树形菜单中 点击最新版本Tomcat 6.x 然后在右边 找到Binary Distributions, 它下边有一个,Core 点击zip 下载zip.解压缩之后就可以使用拉 如果不想这么麻烦,好吧,下载地址给你了 下载地址: http://apache.etoak.com/tomcat/tomcat-6/v6.0.20/bin/apache-tomcat-6.0.20.zip 压缩

Tomcat服务器的下载及安装

Tomcat服务器的下载及安装 1)到apache官网.www.apache.org     http://jakarta.apache.org(产品的主页) 2) 安装版:window (exe.msi) linux(rmp) 压缩版:window(rar,zip) linux(tar,tar.gz)学习时候使用 3)运行和关闭tomcat 3.1 启动软件 a)找到%tomcat%/bin/startup.bat ,双击这个文件 b)弹出窗口,显示信息(不要关闭次窗口) c)打开浏览器,输出