JSP/Servlet环境配置

  1. 下载安装JDK并配置环境变量
    这里我下载安装的是jdk-7u51-windows-i586,如果你没有请到Oracle官网下载;
    【我的电脑】-【高级系统设置】-【环境变量】-系统变量中的Path添加Java bin目录;
    命令窗口测试配置环境变量正确与否。
  2. 下载服务器
    我学习使用的是Web容器apache-tomcat-7.0.50-windows-x86,如果没有请到Apache下载。
  3. 配置服务器
    确定SDK安装目录,即JAVA_HOME环境变量,这一步应该在第一步中已经配置;
    指定端口,默认是8080,如果你不喜欢用它,或者该端口被占用,应该指定为其它;
    执行startup.bat启动Tomcat,在浏览器中测试。
  4. 建立开发环境
    创建开发目录,我这里的为D:\project\MyServlet\src
    设置CLASSPATH,主要是为了告诉编译器Servlet类的位置,值为“.;D:\project\MyServlet\src;D:\tools\apache-tomcat-7.0.50\lib\servlet-api.jar”,配置如下:

    创建快捷方式,方便测试时快速启动和关闭Tomcat。
  5. 测试系统环境变量
    检查服务器的基本配置
    将helloworld.html和helloworld.jsp放置到<CATALINA_HOME>/webapps/ROOT下
    helloworld.html

    [html] view plaincopyprint?

    1. <span style="font-size: 18px;"><html>
    2. <head>
    3. <title>test</title>
    4. </head>
    5. <body>
    6. Hello world
    7. </body>
    8. </html></span>
    <html>
    <head>
    <title>test</title>
    </head>
    <body>
    Hello world
    </body>
    </html>

    helloworld.jsp

    [html] view plaincopyprint?

    1. <span style="font-size: 18px;"><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    2. <html>
    3. <head>
    4. <title>jsp test</title>
    5. </head>
    6. <body bgcolor="#fdf5e6">
    7. <h1>Hello JSP.</h1>
    8. Time:<%= new java.util.Date() %>
    9. </body>
    10. </html></span>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
    <title>jsp test</title>
    </head>
    <body bgcolor="#fdf5e6">
    <h1>Hello JSP.</h1>
    Time:<%= new java.util.Date() %>
    </body>
    </html>

    浏览器访问:

    测试不使用包的Servlet
    在命令窗口下编码HelloServlet.java,将编译后的class文件放到<CATALINA_HOME>/webapps/ROOT/WEB-INF/class下
    HelloServlet.java

    [java] view plaincopyprint?

    1. <span style="font-size: 18px;">import java.io.*;
    2. import javax.servlet.*;
    3. import javax.servlet.http.*;
    4. /** Simple servlet used to test server.*/
    5. public class HelloServlet extends HttpServlet{
    6. public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
    7. response.setContentType("text/html");
    8. PrintWriter out=response.getWriter();
    9. String docType="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 "+"Transitional//EN\">\n";
    10. out.println(docType+
    11. "<html>\n"+
    12. "<head><title>Hello</title></head>\n"+
    13. "<body bgcolor=\"#fdf5e6\">\n"+
    14. "<h1>Hello world</h1>\n"+
    15. "</body></html>");
    16. }
    17. public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
    18. this.doGet(request,response);
    19. }
    20. }</span>
    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    
    /** Simple servlet used to test server.*/
    public class HelloServlet extends HttpServlet{
    	public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
    		response.setContentType("text/html");
    		PrintWriter out=response.getWriter();
    		String docType="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 "+"Transitional//EN\">\n";
    		out.println(docType+
    					"<html>\n"+
    					"<head><title>Hello</title></head>\n"+
    					"<body bgcolor=\"#fdf5e6\">\n"+
    					"<h1>Hello world</h1>\n"+
    					"</body></html>");
    	}
    	public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
    		this.doGet(request,response);
    	}
    }

    编译HelloServlet.java

    因为我们使用的是tomcat7,无法使用其调用器invoker,所以要手动添加映射,打开<CATALINA_HOME>/webapps/ROOT/WEB-INF下的web.xml,编辑如下:

    [html] view plaincopyprint?

    1. <span style="font-size: 18px;"><?xml version="1.0" encoding="ISO-8859-1"?>
    2. <!--
    3. Licensed to the Apache Software Foundation (ASF) under one or more
    4. contributor license agreements.  See the NOTICE file distributed with
    5. this work for additional information regarding copyright ownership.
    6. The ASF licenses this file to You under the Apache License, Version 2.0
    7. (the "License"); you may not use this file except in compliance with
    8. the License.  You may obtain a copy of the License at
    9. http://www.apache.org/licenses/LICENSE-2.0
    10. Unless required by applicable law or agreed to in writing, software
    11. distributed under the License is distributed on an "AS IS" BASIS,
    12. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13. See the License for the specific language governing permissions and
    14. limitations under the License.
    15. -->
    16. <web-app xmlns="http://java.sun.com/xml/ns/javaee"
    17. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    18. xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    19. http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
    20. version="3.0"
    21. metadata-complete="true">
    22. <display-name>Welcome to Tomcat</display-name>
    23. <description>
    24. Welcome to Tomcat
    25. </description>
    26. <servlet>
    27. <servlet-name>hello</servlet-name>
    28. <servlet-class>HelloServlet</servlet-class>
    29. </servlet>
    30. <servlet-mapping>
    31. <servlet-name>hello</servlet-name>
    32. <url-pattern>/HelloServlet</url-pattern>
    33. </servlet-mapping>
    34. </web-app>
    35. </span>
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!--
     Licensed to the Apache Software Foundation (ASF) under one or more
      contributor license agreements.  See the NOTICE file distributed with
      this work for additional information regarding copyright ownership.
      The ASF licenses this file to You under the Apache License, Version 2.0
      (the "License"); you may not use this file except in compliance with
      the License.  You may obtain a copy of the License at
    
          http://www.apache.org/licenses/LICENSE-2.0
    
      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.
    -->
    
    <web-app xmlns="http://java.sun.com/xml/ns/javaee"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                          http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
      version="3.0"
      metadata-complete="true">
    
      <display-name>Welcome to Tomcat</display-name>
      <description>
         Welcome to Tomcat
      </description>
      <servlet>
        <servlet-name>hello</servlet-name>
        <servlet-class>HelloServlet</servlet-class>
      </servlet>
      <servlet-mapping>
        <servlet-name>hello</servlet-name>
        <url-pattern>/HelloServlet</url-pattern>
      </servlet-mapping>
    
    </web-app>
    

    启动Tomcat,在浏览器访问,如下,则说明正确

    测试使用的Servlet
    带包的HelloServlet2.java如下:

    [java] view plaincopyprint?

    1. <span style="font-size: 18px;">package coreservlets;
    2. import java.io.*;
    3. import javax.servlet.*;
    4. import javax.servlet.http.*;
    5. /** Simple servlet used to test server.*/
    6. public class HelloServlet2 extends HttpServlet{
    7. public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
    8. response.setContentType("text/html");
    9. PrintWriter out=response.getWriter();
    10. String docType="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 "+"Transitional//EN\">\n";
    11. out.println(docType+
    12. "<html>\n"+
    13. "<head><title>Hello</title></head>\n"+
    14. "<body bgcolor=\"#fdf5e6\">\n"+
    15. "<h1>Hello world (2)</h1>\n"+
    16. "</body></html>");
    17. }
    18. public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
    19. this.doGet(request,response);
    20. }
    21. }</span>
    package coreservlets;
    
    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    
    /** Simple servlet used to test server.*/
    public class HelloServlet2 extends HttpServlet{
    	public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
    		response.setContentType("text/html");
    		PrintWriter out=response.getWriter();
    		String docType="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 "+"Transitional//EN\">\n";
    		out.println(docType+
    					"<html>\n"+
    					"<head><title>Hello</title></head>\n"+
    					"<body bgcolor=\"#fdf5e6\">\n"+
    					"<h1>Hello world (2)</h1>\n"+
    					"</body></html>");
    	}
    	public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
    		this.doGet(request,response);
    	}
    }

    像上面一样,编译之后就class文件拷贝到<CATALINA_HOME>/webapps/ROOT/WEB-INF/class/coreservlets包下,并在web.xml文件中增加如下内容

    [html] view plaincopyprint?

    1. <span style="font-size: 18px;"><servlet>
    2. <servlet-name>hello2</servlet-name>
    3. <servlet-class>coreservlets.HelloServlet2</servlet-class>
    4. </servlet>
    5. <servlet-mapping>
    6. <servlet-name>hello2</servlet-name>
    7. <url-pattern>/HelloServlet2</url-pattern>
    8. </servlet-mapping></span>
    <servlet>
        <servlet-name>hello2</servlet-name>
        <servlet-class>coreservlets.HelloServlet2</servlet-class>
      </servlet>
      <servlet-mapping>
        <servlet-name>hello2</servlet-name>
        <url-pattern>/HelloServlet2</url-pattern>
      </servlet-mapping>

    在这里要注意,web.xml中,引用HelloServlet2时,包与class文件之间的分隔符是圆点“.";classes下的包名要与package coreservlets一致,否则,你懂的。
    重启tomcat,在浏览器测试,如下

    测试使用包和实用工具类的Servlet
    HelloServlet3.java

    [java] view plaincopyprint?

    1. <span style="font-size: 18px;">package coreservlets;
    2. import java.io.*;
    3. import javax.servlet.*;
    4. import javax.servlet.http.*;
    5. /** Simple servlet for testing the use of packages
    6. *and utilities from the same package*/
    7. public class HelloServlet3 extends HttpServlet{
    8. public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
    9. response.setContentType("text/html");
    10. PrintWriter out=response.getWriter();
    11. String title="Hello (3)";
    12. out.println(ServletUtilities.headWithTitle(title)+
    13. "<body bgcolor=\"#fdf5e6\">\n"+
    14. "<h1>"+title+"</h1>\n"+
    15. "</body></html>");
    16. }
    17. public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
    18. this.doGet(request,response);
    19. }
    20. }</span>
    package coreservlets;
    
    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    
    /** Simple servlet for testing the use of packages
    *and utilities from the same package*/
    public class HelloServlet3 extends HttpServlet{
    	public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
    		response.setContentType("text/html");
    		PrintWriter out=response.getWriter();
    		String title="Hello (3)";
    		out.println(ServletUtilities.headWithTitle(title)+
    					"<body bgcolor=\"#fdf5e6\">\n"+
    					"<h1>"+title+"</h1>\n"+
    					"</body></html>");
    	}
    	public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
    		this.doGet(request,response);
    	}
    }

    ServletUtilities.java

    [java] view plaincopyprint?

    1. <span style="font-size: 18px;">package coreservlets;
    2. import javax.servlet.*;
    3. import javax.servlet.http.*;
    4. /**Some simple timesavers.Note that most are static methods.*/
    5. public class ServletUtilities {
    6. public static final String DOCTYPE="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 "+"Transitional//EN\">\n";
    7. public static String headWithTitle(String title){
    8. return(DOCTYPE+"\n"+"<html>\n"+"<head><title>"+title+"</title></head>\n");
    9. }
    10. }
    11. </span>
    package coreservlets;
    
    import javax.servlet.*;
    import javax.servlet.http.*;
    
    /**Some simple timesavers.Note that most are static methods.*/
    public class ServletUtilities {
    	public static final String DOCTYPE="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 "+"Transitional//EN\">\n";
    	public static String headWithTitle(String title){
    		return(DOCTYPE+"\n"+"<html>\n"+"<head><title>"+title+"</title></head>\n");
    	}
    }
    	

    剩下的就是编译,拷贝,修改web.xml,重启Tomcat,最后在浏览器中测试如下:

小结:是不是很麻烦呢?每次我都要调用javac filepath进行编译,编译之后再copy到tomcat下,太机械重复了,有没有简单的呢?

当然有了,这是下面要学习的内容,且看我们下篇学习吧!

http://blog.csdn.net/hankaibo/article/details/19705205

时间: 2024-11-05 20:20:06

JSP/Servlet环境配置的相关文章

Eclipse JSP/Servlet 环境搭建

Eclipse JSP/Servlet 环境搭建 本文假定你已安装了 JDK 环境,如未安装,可参阅 Java 开发环境配置. 我们可以使用 Eclipse 来搭建 JSP 开发环境,首先我们分别下载一下软件包: Eclipse J2EE:http://www.eclipse.org/downloads/ Tomcat:http://tomcat.apache.org/download-70.cgi Tomcat 下载安装 你可以根据你的系统下载对应的包(以下以Window系统为例): 下载之后

JSP开发环境配置问题解答

有过JSP开发经验的同学对于JSP开发环境的配置一定非常的很有感触,十分的繁琐,有时因为一个小的问题导致我们配置的配置前功尽弃,本篇我将重点带领大家一起探讨一下关于JSP环境配置的一些常见问题,及解决办法. 1.mysql数据库的安装: 对于MYSQL数据库的安装,我想有很多同学和我一样遇到过相似的问题,那就是在提示安装MYSQL服务无法通过,对于这个问题,其实我也不是十分的清楚问题的根本出现在什么地方,不过经过我的多次安装经历,一般是因为我们在设置安装路径时存在空格,导致这个问题的出现,遇到这

JDK - Tomcat - Eclipse - JSP - Servlet 配置运行全攻略

花了将近两个月的时间,从 JDK 开始一步一步摸索,历经千辛万苦,终于让第一个 Servlet 运行起来了,创建第一个 Servlet  程序确实要比创建第一个 Asp.net 程序困难多了,但是不要紧,趁着我还没忘先记下来,下回你再来的时候就轻松多了! 1.下载并安装JDK5.0 或者 JDK1.4.2 不要对版本号产生什么疑问,据我的理解,JDK5.0 也就是JDK1.5 ,是 JDK1.4.2 的重要升级,里面加了许多新的语言特性,为什么叫 5.0 而不叫1.5 ,我想可能是出于商业上的考

Linux -- Web服务器配置及PHP解释器的安装;JSP运行环境的配置(Tomcat安装)

一.PHP运行环境的配置 PHP是超级文本预处理语言PHP Hypertext Preprocessor的嵌套缩写.PHP是一种HTML内嵌式的语言,PHP与微软公司的ASP颇有几分相似,都是一种在服务器端执行的"嵌入HTML文档的脚本语言",语言的风格类似于C语言,现在被很多的网站编程人员广泛运用.PHP独特的语法混合了C.Java.Perl以及PHP自创新的语法.它可以比CGI或者Perl更快速地执行动态网页.用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML

JSP环境配置

搭建JSP环境主要需要安装JDK和Tomcat. JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK).下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html Tomcat 是一个免费的开放源代码的Web 应用服务器.下载地址:http://tomcat.apache.org/download-60.cgi 安装过程很简单,可以一直点下一步就能安装好.我选择的安装路

CentOS 6.7 配置JSP运行环境之tomcat

在Linux平台上比较留下的网站平台是LAMP或者LNMP,其实还有就是运用比较广泛的,使用Java语言编写的网页程序jsp,Java运行需要用到JDK(Java development kit)是sun Microsystems 公司针对开发的产品.jsp 程序可以使用Tomcat,它是Apache软件基金会的一个项目,它技术先进,性能稳定,是比较流行的web 应用服务器:另外,还有一个开源的resin也可以解析jsp的程序,它有一个商业的版本叫resinpro. 系统平台:CentOS re

CentOS 6.7 配置JSP运行环境之resin

在Linux平台上比较留下的网站平台是LAMP或者LNMP,其实还有就是运用比较广泛的,使用Java语言编写的网页程序jsp,Java运行需要用到JDK(Java development kit)是sun Microsystems 公司针对开发的产品.jsp 程序可以使用Tomcat,它是Apache软件基金会的一个项目,它技术先进,性能稳定,是比较流行的web 应用服务器:另外,还有一个开源的resin也可以解析jsp的程序,它有一个商业的版本叫resinpro. 系统平台:CentOS re

Windows下JSP开发环境的配置

Sun推出的JSP(Java Server Pages)是一种执行于服务器端的动态网页开发技术,它基于Java技术.执行JSP时需要在Web服务器上架设一个编译JSP网页的引擎.配置 JSP 环境可以有多种途径,但主要工作就是安装和配置Web服务器和JSP引擎. 下面就以Tomcat作为JSP引擎,配合Tomcat.Apache.IIS这三种Web服务器来讲述3种搭建JSP运行环境的方案.鞍山首大皮肤病医院www.0412pfk.net 一.相关软件介绍 1.J2SDK:Java2的软件开发工具

JavaWeb开发环境配置

JavaWeb开发环境配置(win7_64bit) 目录 1.概述 2.JavaWeb学习路线 3.JavaWeb常用开发环境搭建 4.注意事项 >>看不清的图片可在新标签打开查看大图 1.概述 说起JavaWeb,就想到另一个词:JavaEE.很多时候,这两个词是混用的,两者的概念并不能精确描述,这里,我尝试做一下区分... JavaEE:全称Java平台企业版(Java Platform Enterprise Edition),是Sun公司为企业级应用推出的标准平台.JavaEE是个大杂烩