使用JDK开发Servlet程序
在eclipse中集成JDK和tomcat服务器方法很简单,我们可以在服务器上运行想要的东西。但有时也需要我们手动档编译我们的Servlet程序。
所以才有了今天这篇文章,本文以下内容从网上参考,有很多现成的东西,比如代码就不要自己再去写了。
一:准备源程序
首先我们需要一段Servlet的源程序,Hello.java文件如下:
import java.io.IOException;
import java.io.PrintWriter; import javax.servlet.*;
import javax.servlet.http.*; public class Hello extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html") ;
PrintWriter out=response.getWriter() ;
out.println("<html>");
out.println("<head><title>This is my first Servlet...</title></head>");
out.println("<body><h1>Hello World!</h1></body>");
out.println("</html>");
out.flush();
}
}
程序很简单,就是输出Hello World!我想这是每个程序员都写过度程序。把以上程序保存到C:\src\Hello.java路径下。
二:编译源程序
下面我们要使用JDK环境来编译我们的程序,首先保证你的机器上已经安装了JDK和Tomcat:
1.点击Windows操作系统任务栏的“开始”按钮-->“运行”,输入cmd启动控制台程序。
2.然后切换到我们程序所保存的文件夹下面,在命令行中输入:cd C:\src
3.使用dir命令可以查看该目录下面有哪些文件。
4.使用javac命令编译程序,输入:javac Hello.java,如果出现了下面的提示:
错误一:'javac' 不是内部或外部命令,也不是可运行的程序或批处理文件。
解决方案:说明jdk的运行环境未找到,需要设置环境变量path指定jdk的路径。
错误二:Hello.java:3:软件包 javax.servlet不存在,或者提示 软件包 javax.servlet.http不存在
解决方案:说明servlet的jar包未找到,因为servlet的jar包属于tomcat的。也应该设置环境变量Classpath指定servlet的jar包路径。
一般情况下我们会碰到上面两种错误,针对于以上错误信息,我分别解决。由于本次属于临时编译程序,也就是临时设置path和classpath信息,所以我选用在命令行中设置,并且不会破坏其原有设置,创建一个bat文件,内容如下:
set path=%path%;C:\Program Files\Java\jdk1.6.0_10\bin
set classpath=.;C:\Program Files\Apache Software Foundation\Tomcat 7.0\lib\servlet-api.jar
其中的jdk和tomcat的路径信息根据自己的环境进行设置,保存到C:\src\sp.bat文件。
这时候我们再次使用命令行,首先输入sp.bat,可以看到如下提示:

说明环境变量设置成功,让我们再次编译我们的源程序,如下图:

没有任何提示,说明我们的编译通过了。到文件夹下面可以看到多了一个Hello.class的文件,这个就是我们刚刚生成的编译过的文件。
三:在Tomcat中配置Servlet
将编译过的Hello.class文件复制到以下目录:
Tomcat的安装目录\webapps\root\WEB-INF\classes
----提示:如果WEB-INF目录下面没有classes目录,需要自己手动创建一个classes文件夹。
① 注册Servlet到web.xml
打开Tomcat的安装目录\webapps\root\WEB-INF\目录下面的web.xml文件,添加servlet的注册信息,如下:
......
<servlet>
<servlet-name>myhello</servlet-name>
<servlet-class>Hello</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>myhello</servlet-name>
<url-pattern>/servlet/Myhello.do</url-pattern>
</servlet-mapping>
</web-app>
配置完成保存并关闭文件。
② 启动Tomcat服务
通过Windows的服务里面找到“Apache Tomcat 7.0 Tomcat7”并点击启动,我自己机器上安装的是Tomcat7,你可根据自己机器上安装的Tomcat来启动它。
然后再浏览器的地址栏中输入:http://localhost:8080/servlet/myhello.do,可以看到我们熟悉的Hello World!,如下图:

哈哈,说明我们的程序已经成功了,是不是很有成就感!告诉你这才是你学java的开始,以后学java的路还很长,并且路上有很多狗血的事情在等着你。
参考出处:http://wenku.baidu.com/view/12d1592db4daa58da0114af1.html
使用JDK开发Servlet程序的更多相关文章
- 用Tomcat和Eclipse开发Servlet程序
1. 安装eclipse 1). 在官网上直接下载Eclipse IDE for Java EE Developers,解压即可: 2. eclipse安装tomcat插件: 1). 在http:// ...
- JAVA中JDK开发环搭的搭建,jvm jre
1.JDK的下载与安装: www.oracle.com 安装需要注意的是:不能把jdk安装到有空格或中文的文件夹中,建议大家在某个目录下创建一个JavaWeb的文件夹,然后把所学的java所有内容(后 ...
- Servlet程序开发--Servlet 与 表单
servlet程序: doPost方法时为了防止表单提交时post方式的问题.否则只能处理get请求 package org.lxh.servletdemo ; import java.io.* ; ...
- Servlet程序开发-Helloworld
D:\Workspace\WEB-INF\classes下新建HelloServlet.java文件: package org.lxh.servletdemo ; import java.io.* ; ...
- 用java自带jdk开发第一个java程序
[学习笔记] 1.用java自带jdk开发第一个java程序: 下面要讲的eclipse要想正常工作,需要先学会配置这里的jdk.jdk要想正常工作,需先学会配置JAVA_HOME和ClassPa ...
- 使用JDK开发WebService
一.WebService的开发手段 使用Java开发WebService时可以使用以下两种开发手段 1. 使用JDK开发(1.6及以上版本) 2.使用CXF框架开发(工作中) 二.使用JDK开发Web ...
- WebService学习总结(三)——使用JDK开发WebService
一.WebService的开发手段 使用Java开发WebService时可以使用以下两种开发手段 1. 使用JDK开发(1.6及以上版本) 2.使用CXF框架开发(工作中) 二.使用JDK开发Web ...
- 【转】MyEclipse第一个Servlet程序
转自:http://blog.csdn.net/wangdingqiaoit/article/details/7674367 前言 本文旨在帮助学习java web开发的人员,熟悉环境,在Win7系统 ...
- MyEclipse第一个Servlet程序 --解决Win7系统下MyEclipse与Tomcat连接问题
前言 本文旨在帮助学习java web开发的人员,熟悉环境,在Win7系统下运行自己的第一个Servlet程序,因为有时候配置不当或系统原因可能会运行不成功,这给初学者带来了一定烦恼,我也是为此烦恼过 ...
随机推荐
- 在python中如何设置当前工作目录
import osos.chdir('要设置的当前目录') >>> import os >>> os.getcwd() 'D:\\Python27' >> ...
- 深入理解JavaScript闭包(closure)
最近在网上查阅了不少javascript闭包(closure)相关的资料,写的大多是非常的学术和专业.对于初学者来说别说理解闭包了,就连文字叙述都很难看懂.撰写此文的目的就是用最通俗的文字揭开Java ...
- postgresql编译安装与调试(二)
接前文postgresql编译安装与调试(一),继续说说postgresql的编译安装与调试. 上一篇已经详细说明了如何在Linux系统上编译安装postgresql,这次我们在此基础上简单讲讲如何在 ...
- Delphi 串口使用校验位
平时都用的8N1的模式,这次使用了校验位,因此串口的初始化工作需要改变 #ifdef RT_USING_UART2 USART_InitStructure.USART_BaudRate = 9600; ...
- call Kernelized Correlation Filters Tracker(Matab) in Qt(c++)
recently, i need call the KCF tracker in my graduation project. the KCF tracker is fast and best per ...
- VS 2013 EFSQLITE
在 vs 2013 上用 1.NuGet程序包来获取,它也会自动下载EF6的包 :system.Data.sqlite 他会自动下载 其它几个需要的包. 2.在Sqlite官网上下载对应的版本:htt ...
- js中DOM集合的动态特性
先引出一个问题:通过调用getElements*()这样的方法返回来类(伪)数组,能对其本身的元素进行排序吗? 答案是不能,因为这些对象的都是NodeList . NamedNodeMap 或 HTM ...
- CAT XQX --- 省市三级级联实现说明
最终效果: 满足要求, 上代码 : 1. 需要调用这个控件 的地方:添加引用,因为里面写着逻辑呢..... <script type="text/javascript" ...
- JAVA & Android 系统环境变量配置
Java JAVA_HOME:C:\Program Files\Java\jdk1.7.0_40 CLASSPATH:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\ ...
- linux笔记_20150825_linux下的软件工具唠叨下
这些都是书上看到的,有些工具我也没有完全用过.先记下来再说.闲着也是闲着. 1.linux下常见的语言及编程环境:c/c++/java/perl/fortan等. 2.图形环境:gnome/kde/g ...