教你如何安装配置tomcat.docx

上传人:b****8 文档编号:11348518 上传时间:2023-02-28 格式:DOCX 页数:25 大小:431.32KB
下载 相关 举报
教你如何安装配置tomcat.docx_第1页
第1页 / 共25页
教你如何安装配置tomcat.docx_第2页
第2页 / 共25页
教你如何安装配置tomcat.docx_第3页
第3页 / 共25页
教你如何安装配置tomcat.docx_第4页
第4页 / 共25页
教你如何安装配置tomcat.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

教你如何安装配置tomcat.docx

《教你如何安装配置tomcat.docx》由会员分享,可在线阅读,更多相关《教你如何安装配置tomcat.docx(25页珍藏版)》请在冰豆网上搜索。

教你如何安装配置tomcat.docx

教你如何安装配置tomcat

如何安装配置Tomcat

1简介

Tomcat是一个开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发。

由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在Tomcat中得到体现。

  传统的桌面应用程序是一个JAR(JavaArchive)文件,而Tomcat中的应用程序是一个WAR(WebArchive)文件。

WAR是Sun提出的一种Web应用程序格式,与JAR类似,也是许多文件的一个压缩包。

2下载Tomcat

网址:

http:

//jakarta.apache.org/tomcat/。

下面是JakartaTomcat网站首页。

以正式版本5.5.20为例。

下载二进制发行版(BinaryDistributions)。

选Core:

WindowsServiceInstaller下载。

Windows版的版本为:

apache-tomcat-5.5.20.exe。

3安装Tomcat

设置环境变量

请参考“JDK的安装Windows.doc”一文。

运行:

apache-tomcat-5.5.20.exe

●双击apache-tomcat-5.5.20.exe。

●单击“Next”。

●单击“IAgree”。

●选择Full>Next。

●选择目的文件夹D:

\ProgramFiles\ApacheSoftwareFoundation\Tomcat5.5>Next。

●给一个password,其他保持默认>Next。

●选择Java运行环境的路径>Install,开始安装过程。

●等待安装过程结束。

●Finish,运行ApacheTomcat,显示Readme。

察看安装好的Tomcat目录结构

其中:

binTomcat执行文件目录

commonTomcat公用的库文件(JARS)

confTomcat配置文件

logsTomcat执行时的LOG文件

serverWeb服务需要的文件

shared共享文件

temp临时文件

webappsTomcat的主要Web发布目录,用户开发的程序放在这里

workTomcat的工作目录,Tomcat将翻译JSP文件得到的Java文件和class文件放在这里

j2ee的相关部署规范

一般来说作为一个符合规范的web程序,会包括以下文件夹和文件:

/WEB-INF/(主要是放置一些配置文件与不希望外部程序访问的隐私文件),在网络上是不允许访问该文件夹的,如果输入http:

//localhost:

8080/WEB-INF/就会出现错误。

在WEB-INF文件夹下有一个web.xml文件,这是对当前应用程序的相关设置,资源寻找等,/WEB-INF/文件夹下有个classes子文件夹,该文件夹是应用程序的根路径(等于是classpath的路径),/WEB-INF下还要有个lib文件夹,主要是放置需要引入的包,应用程序导入的包先从这里开始寻找,其次到容器的全局路径下$TOMCAT_HOME/common/lib下寻找。

以下是基本文件夹:

/tomcat

    /common

           /lib

          /classes

   /conf

   /webapps

       /ROOT

             web.xml

             /WEB-INF

                   /lib

                   /classes

       /你部署的程序包

             web.xml

             /WEB-INF

                   /lib

                   /classes

4测试

在浏览器地址栏键入http:

//localhost:

8080/看到Tomcat的启动页面。

所使用的Tomcat服务器为5.5.20版,使用的HTTP端口为8080。

HTML页面测试

●创建一个html文件Hello.html。

DOTTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN">

HTML测试

HTML测试

欢迎。

●在Tomcat的webapps下创建一个文件夹myJSPServlet。

●将Hello.html保存到文件夹myJSPServlet中。

●在浏览器的地址栏输入http:

//localhost:

8080/myJSPServlet/Hello.html。

注意大小写:

如果写成http:

//localhost:

8080/myJSPServlet/hello.html就会出错。

JAP页面测试

●创建一个jsp文件Hello.jsp

DOTTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN">

JSP测试

JSP测试

现在时间:

<%=newjava.util.Date()%>

●将Hello.jsp保存到myJSPServlet。

●在浏览器的地址栏输入http:

//localhost:

8080/myJSPServlet/Hello.jsp运行。

Servlet测试

●在文件夹myJSPServlet下创建一个文件夹WEB-INF。

●在文件夹WEB-INF下创建一个文件夹classes。

●创建一个Servlet文件HelloServlet.java

importjava.io.*;

importjavax.servlet.*;

importjavax.servlet.http.*;

/**Simpleservletusedtotestserver.

*

*TakenfromCoreServletsandJavaServerPages2ndEdition

*fromPrenticeHallandSunMicrosystemsPress,

*

*©2003MartyHall;maybefreelyusedoradapted.

*/

publicclassHelloServletextendsHttpServlet{

publicvoiddoGet(HttpServletRequestrequest,

HttpServletResponseresponse)

throwsServletException,IOException{

response.setContentType("text/html");

PrintWriterout=response.getWriter();

StringdocType=

"

DOCTYPEHTMLPUBLIC\"-//W3C//DTDHTML4.0"+

"Transitional//EN\">\n";

out.println(docType+

"\n"+

"Hello\n"+

"\n"+

"

欢迎!

\n"+

"");

}

}

●将HelloServlet.java保存到文件夹classes中。

●将HelloServlet.java编译为HelloServlet.class文件。

D:

\ProgramFiles\ApacheSoftwareFoundation\Tomcat5.5\webapps\myJSPServlet\WEB-INF\classes>javacHelloServlet.java

HelloServlet.java:

2:

软件包javax.servlet不存在

importjavax.servlet.*;

^

HelloServlet.java:

3:

软件包javax.servlet.http不存在

importjavax.servlet.http.*;

^

HelloServlet.java:

13:

找不到符号

符号:

类HttpServlet

publicclassHelloServletextendsHttpServlet{

^

HelloServlet.java:

14:

找不到符号

符号:

类HttpServletRequest

位置:

类HelloServlet

publicvoiddoGet(HttpServletRequestrequest,

^

HelloServlet.java:

15:

找不到符号

符号:

类HttpServletResponse

位置:

类HelloServlet

HttpServletResponseresponse)

^

HelloServlet.java:

16:

找不到符号

符号:

类ServletException

位置:

类HelloServlet

throwsServletException,IOException{

^

6错误

出现错误!

由于servlet和JSP不是Java平台JavaSE(标准版)的一部分,而是JavaEE(企业版)的一部分,因此,必须告知编译器servlet的位置。

●解决“软件包javax.servlet不存在”错误的方法:

1.搜索servlet-api.jar

所在文件夹:

D:

\ProgramFiles\ApacheSoftwareFoundation\Tomcat5.5\common\lib

2.将环境变量CLASSPATH的值设置为:

.;D:

\ProgramFiles\ApacheSoftwareFoundation\Tomcat5.5\common\lib\servlet-api.jar

3.重新编译:

javacHelloServlet.java,编译成功。

另外,你也可以使用下面的命令改变环境变量CLASSPATH。

setCLASSPATH=.;D:

\ProgramFiles\ApacheSoftwareFoundation\Tomcat5.5\common\lib\servlet-api.jar

但这种改变只是在系统关闭前有效,下次启动系统后还要在发布该命令,当然你也可以将该命令写到自动批处理文件autoexec.abt中。

●在文件夹WEB-INF中创建一个web.xml文件

xmlversion="1.0"encoding="GBK"?

>

xmlns:

xsi="http:

//www.w3.org/2001/XMLSchema-instance"

xsi:

schemaLocation="

version="2.4">

WelcometoTomcat

WelcometoTomcat

--JSPCservletmappingsstart-->

HelloServlet

HelloServlet

HelloServlet

/helloservlet

--JSPCservletmappingsend-->

上面的定义:

servlet-class>servlet-name>/helloservlet,把HelloServlet.class转换位url地址。

注意:

因为服务器只在启动时读取web.xml文件,所以每次修改完web.xml文件后要重新启动服务器。

●在浏览器的地址栏输入http:

//localhost:

8080/myJSPServlet/helloservlet运行。

运行正常,但中文显示乱码。

●解决中文显示乱码的方法

importjava.io.*;

importjavax.servlet.*;

importjavax.servlet.http.*;

publicclassHelloServletextendsHttpServlet{

publicvoiddoGet(HttpServletRequestrequest,

HttpServletResponseresponse)

throwsServletException,IOException{

request.setCharacterEncoding("GBK");

response.setContentType("text/html;charset=GBK");

PrintWriterout=response.getWriter();

StringdocType=

"

DOCTYPEHTMLPUBLIC\"-//W3C//DTDHTML4.0"+

"Transitional//EN\">\n";

out.println(docType+

"\n"+

"Hello\n"+

"\n"+

"

欢迎!

\n"+

"");

}

}

注意红色的改变。

●重新编译

●再执行http:

//localhost:

8080/myJSPServlet/helloservlet

运行还不正常,在浏览器中察看源代码,发现调用的还是修改前的。

这是因为,每次修改Servlet后都要重起TOMCAT服务器才可以使新的Servlet生效,否则加载的是旧的Servlet。

重新启动TOMCAT服务器:

1.双击右下角的

图标。

2.停止Tomcat服务。

3.启动Tomcat服务。

刷新http:

//localhost:

8080/myJSPServlet/helloservlet,运行正常。

不要每次修改Servlet后都重起TOMCAT服务器

启用servlet重新载入功能,可以避免每次修改Servlet后都要重起TOMCAT服务器。

启用这一功能之后,Tomcat在调用被请求的servlet相对应的类文件时,检查类文件的修改日期,并重新载入那些已载入服务器内存,但发生过改变的servlet,这就免去了每次重新编译servlet之后重新启动服务器。

在实际部署环境下,启用这项功能会影响性能,所以默认情况下,它是关闭的。

1.打开:

install_dir/conf/server.xml

2.在前面插入下面的行:

3.重新启动Tomcat.

Servlet包测试

●在class下面新建一个文件夹coreservlets

●在coreservlets中创建一个Servlet文件HelloServlet2.java

packagecoreservlets;

importjava.io.*;

importjavax.servlet.*;

importjavax.servlet.http.*;

publicclassHelloServlet2extendsHttpServlet{

publicvoiddoGet(HttpServletRequestrequest,

HttpServletResponseresponse)

throwsServletException,IOException{

request.setCharacterEncoding("GBK");

response.setContentType("text/html;charset=GBK");

PrintWriterout=response.getWriter();

StringdocType=

"

DOCTYPEHTMLPUBLIC\"-//W3C//DTDHTML4.0"+

"Transitional//EN\">\n";

out.println(docType+

"\n"+

"Hello欢迎</p><p>(2)\n"+

"\n"+

"

Hello欢迎

(2)

\n"+

"");

}

}

●编译HelloServlet2.java

>cdcoreservlets

>javacHelloServlet2.java

●在web.xml文件中添加

HelloServlet2

coreservlets.HelloServlet2

HelloServlet2

/helloservlet2

●执行http:

//localhost:

8080/myJSPServlet/helloservlet2

Servlet调用JavaBean测试

●在coreservlets中创建一个JavaBean文件ServletUtilities.java

packagecoreservlets;

importjavax.servlet.*;

importjavax.servlet.http.*;

publicclassServletUtilities{

publicstaticfinalStringDOCTYPE=

"

DOCTYPEHTMLPUBLIC\"-//W3C//DTDHTML4.0"+

"Transitional//EN\">";

publicstaticStringheadWithTitle(Stringtitle){

return(DOCTYPE+"\n"+

"\n"+

""+title+"\n");

}

publicstaticintgetIntParameter(HttpServletRequestrequest,

StringparamName,

intdefaultValue){

StringparamString=request.getParameter(paramName);

intparamValue;

try{

paramValue=Integer.parseInt(paramString);

}catch(NumberFormatExceptionnfe){//nullorbadformat

paramValue=defaultValue;

}

return(paramValue);

}

publicstaticdoublegetDoubleParameter

(HttpServletRequestrequest,

StringparamName,

doubledefaultValue){

StringparamString=request.getParameter(paramName);

doubleparamValue;

try{

paramValue=Double.parseDouble(paramString);

}catch(NumberFormatExceptionnfe){//nullorbadformat

paramValue=defaultValue;

}

return(paramValue);

}

publicstaticStringfilter(Stringinput){

if(!

hasSpecialChars(input)){

return(input);

}

StringBufferfiltered=newStringBuffer(input.length());

charc;

for(inti=0;i

c=input.charAt(i);

switch(c){

case'<':

filtered.append("<");break;

case'>':

filtered.append(">");break;

case'"':

filtered.append(""");break;

case'&':

filtered.append("&");break;

default:

filtered.append(c);

}

}

return(filtered.toString()

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 育儿理论经验

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1