linux下tomcat安装和配置
第一步 下载JDK和tomcat.
linux下下载后直接解压即可,解压下放到/usr/local目录下.
apache-tomcat-6.0.20
jdk1.6.0_18
为jdk和tomcat建立两个软链接到tomcat和java_default.
ln -s /usr/local/apache-tomcat-6.0.20 /usr/local/tomcat ln -s /usr/local/jdk1.6.0_18 /usr/local/java_default
第二步 安装JDK和TOMCAT后,需要配置一下相关的环境变量。
1. 配置jdk
新建文件/etc/profile.d/jdk.sh,设置JAVA_HOME和CLASSPATH环境变量。
export JAVA_HOME=/usr/local/java_default export PATH=$PATH:.:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
执行
source /etc/profile.d/jdk.sh
使命令生效。
这时可以在命令行里打印下$PATH和$CLASSPATH看看环境变量设置是否生效。
接下来编写一个简单的java程序Test.java看看JDK是否安装成功。
public class Test { public static void main(String args[]) { System.out.println("test"); } }
然后执行如下命令,编译和运行该程序。
javac Test.java java Test
如果打印出
test
则说明JDK安装成功。
2.配置tomcat
同样,建立/etc/profile.d/tomcat.sh文件,变量设置情况如下
export CATALINA_HOME=/usr/local/tomcat export CLASSPATH=$CLASSPATH.:$CATALINA_HOME/lib/servlet-api.jar
同样执行
source /etc/profile.d/tomcat.sh
使其生效。
重启tomcat
/usr/local/tomcat/bin/startup.sh
第三步 建立自己的jsp目录
1.到Tomcat的安装目录的webapps目录,可以看到ROOT,examples, tomcat-docs之类Tomcat自带的的目录;
2.在webapps目录下新建一个目录,起名叫myapp;
3.myapp下新建一个目录WEB-INF,注意,目录名称是区分大小写的;
4.WEB-INF下新建一个文件web.xml,内容如下:
< !DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
My Web Application
A application for test.
5.在myapp下新建一个测试的jsp页面,文件名为index.jsp,文件内容如下:
<html> <body> <center> Now time is: < %=new java.util.Date()%> </center> </body> </html>
6.重启Tomcat
7.打开浏览器,输入http://localhost:8080/myapp/index.jsp 看到当前时间的话说明就成功了。
第四步:建立自己的Servlet:
写入你的第一个Servlet
import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class HelloWorld extends HttpServlet { public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("<html><head><title>"); out.println("This is my first Servlet"); out.println("</title></head><body>"); out.println("<h1>Hello,World!</h1>"); out.println("</body></html>"); } }
然后照样用javac HelloWorld.java来编译这个文件,如果出现无法import javax.servlet.*,如果不把servlet-api.jar加到classpath这个变量中,就可以会出现这种问题,不设置这个变量也没关系,可以直接把/usr/local/tomcat/lib/里面的servlet-api.jar文件拷贝到/usr/local/java_home/lib中
中,再次编译,就没有问题了。
然后在Tomcat目录里面的/usr/local/tomcat/webapps/ROOT里面按如下的文件结构:
ROOT\index.html
ROOT\welcom.jsp
ROOT\WEB-INF\lib\MyServlet.jar(如果你的servlet的.class打成了.jar文件,则放在
lib下面)
ROOT\WEB-INF\classes\HelloWorld.class(把上面生成的HelloWorld.class文件放在这个
里面)
然后在浏览器中输入http://localhost:8080/servlet/HelloWorld,于是Server众望所归的报错了:Error 404–Not Found
怎么回事呢?
Servlet必须使用/usr/local/tomcat/webapps/ROOT/WEB-INF这个目录下面的web.xml文件进行注册,打开这个eb.xml文件,
把下面这段程序
servlet>
.....
<servlet -mapping>
......
</servlet>替换成
<servlet>
</servlet><servlet -name>HelloWorld</servlet>
<servlet -class>HelloWorld</servlet>
<servlet -mapping>
</servlet><servlet -name>HelloWorld</servlet>
<url -pattern>/servlet/HelloWorld</url>如果没有的话,就直接加那段代码
为什么呢?
因为 这样的结构
<servlet>
</servlet><servlet -name>HelloWorld</servlet>
<servlet -class>HelloWorld</servlet>表示指定包含的servlet类.
而以下的结构
<servlet -mapping>
</servlet><servlet -name>HelloWorld</servlet>
<url -pattern>/servlet/HelloWorld</url>表示指定HelloServlet应当映射到哪一种URL模式。
在修改web.xml完毕过后,重新启动Server,然后再输入http://localhost:8080/servlet/HelloWorld,那么偌大一个Hello,World!等着你呢,恭喜你
在JSP文件开头加入下面这条语句可以实现中文名称显示
< %@ page language="java" contentType="text/html; charset=gb2312" %> 修改tomcat目录下conf\server.xml为 port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"/>
参考资料 http://zhidao.baidu.com/question/26584712.html?fr=ala0
机器人 2010年03月04日 17:59 于 北京