当前位置: 首页 > 图文教程 > 网络编程 > JSP > J2SDK和TOMCAT的安装及配置

JSP
GET 方式提交的含有特殊字符的参数
java big5到gb2312的编码转换
java Lucene 中自定义排序的实现
hibernate中的增删改查实现代码
jsp 定制标签(Custom Tag)
jsp基础速成精华讲解
IE cache缓存 所带来的问题收藏
关于JSP的一点疑问小结
JSP 多条SQL语句同时执行的方法
jsp include文件时的一个乱码解决方法
在JSTL EL中处理java.util.Map,及嵌套List的情况
jsp 页面显示的一些用法
根据Hibernte的cfg文件生成sql文件
五种 JSP页面跳转方法详解
JSP 防范SQL注入攻击分析
JSP 连接MySQL配置与使用
java eclipse 启动参数
jsp 页面上图片分行输出小技巧
解决jsp开发中不支持EL问题
JSP 页面中使用FCKeditor控件(js用法)

JSP 中的 J2SDK和TOMCAT的安装及配置


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-03   浏览: 59 ::
收藏到网摘: n/a

经常看到jsp的初学者问tomcat下如何配置jsp、servlet的问题,于是总结了一下如何tomcat下配置jsp、servlet,希望对那些初学者有所帮助。 
第一步:下载j2sdk和tomcat:到sun官方站点
    最新的jdk为1.5,tomcat为5.5,建议jdk1.4以上,tomcat4.0以上
第二步:安装和配置你的j2sdk和tomcat:执行j2sdk和tomcat的安装程序,然后设置按照路径进行安装即可。
1.安装j2sdk以后,需要配置一下环境变量,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的j2sdk安装在c:\j2sdk1.4.2): 
JAVA_HOME=c:\j2sdk1.4.2 
classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(.;一定不能少,因为它代表当前路径) 
path=%JAVA_HOME%\bin 

 接着可以写一个简单的java程序来测试J2SDK是否已安装成功: 
public class Test{ 
public static void main(String args[]){ 
System.out.println("This is a test program."); 


将上面的这段程序保存为文件名为Test.java的文件。 
然后打开命令提示符窗口,cd到你的Test.java所在目录,然后键入下面的命令  
javac Test.java 
java Test  
此时如果看到打印出来This is a test program.的话说明安装成功了,如果没有打印出这句话,你需要仔细检查一下你的配置情况。 

2.安装Tomcat后,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的tomcat安装在c:\tomcat): 
CATALINA_HOME:c:\tomcat
CATALINA_BASE:c:\tomcat
TOMCAT_HOME: C:\Tomcat
然后修改环境变量中的classpath,把tomat安装目录下的common\lib下的servlet.jar追加到classpath中去,修改后的classpath如下: 
classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet.jar; 
接着可以启动tomcat,在IE中访问http://localhost:8080,如果看到tomcat的欢迎页面的话说明安装成功了。 
第三步:建立自己的jsp app目录 
1.到Tomcat的安装目录的webapps目录,可以看到ROOT,examples, tomcat-docs之类Tomcat自带的的目录; 
2.在webapps目录下新建一个目录,起名叫myapp; 
3.myapp下新建一个目录WEB-INF,注意,目录名称是区分大小写的; 
4.WEB-INF下新建一个文件web.xml,内容如下: 
<?xml version="1.0" encoding="ISO-8859-1"?> 

<!DOCTYPE web-app 
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 
"http://java.sun.com/dtd/web-app_2_3.dtd"> 

<web-app> 
<display-name>My Web Application</display-name> 
<description> 
A application for test. 
</description> 
</web-app> 
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)th
rows 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.servl
et.*
   那么就是应该把C:\Tomcat\common\lib里面的servlet.jar文件拷贝到C:\JDK\jre\lib\e
xt中,再次编译,就没有问题了!
   然后在Tomcat目录里面的C:\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必须使用C:\Tomcat\webapps\ROOT\WEB-INF这个目录下面的web.xml文件进行注册,
用EP打开这个web.xml文件,

把下面这段程序
 servlet>
  .....  
 </servlet>

<servlet-mapping>
   ......
 </servlet-mapping>
替换成
<servlet>
       <servlet-name>HelloWorld</servlet-name>
    <servlet-class>HelloWorld</servlet-class>
   </servlet>
   <servlet-mapping>
       <servlet-name>HelloWorld</servlet-name>
    <url-pattern>/servlet/HelloWorld</url-pattern>
   </servlet-mapping>
如果没有的话,就直接加那段代码

为什么呢?
 因为 这样的结构
   <servlet>
   <servlet-name>HelloWorld</servlet-name>
   <servlet-class>HelloWorld</servlet-class>
</servlet>
表示指定包含的servlet类.
而以下的结构
   <servlet-mapping>
       <servlet-name>HelloWorld</servlet-name>
    <url-pattern>/servlet/HelloWorld</url-pattern>
   </servlet-mapping>
   表示指定HelloServlet应当映射到哪一种URL模式。
   在修改web.xml完毕过后,重新启动Server,然后再输入http://localhost:8080/servlet/HelloWorld,那么偌大一个Hello,World!等
着你呢,恭喜你
   摆平了:)