使用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程序,因为有时候配置不当或系统原因可能会运行不成功,这给初学者带来了一定烦恼,我也是为此烦恼过 ...
随机推荐
- javac 命令用法
引用自己写的Class 在java中手动编译时,总提示找不到类,调试成功后,特把目录结构与编译成功的命令列出: 样例一: 文件名 MessageStore.java Hello.java 源码 pac ...
- bootstrap-datetimepicker时间控件
欢迎各种吐槽. 本人小前端,学习过程中,某日遇到做时间控件的需求,于是无休止的召唤了度娘,发现看不太懂.算是为自己做个笔记,也便于菜鸟级别的看的懂. 首先,我们看看点击选择时间的时候的展示页面吧 年 ...
- 深入理解Linux内核-第七章 进程调度
原文:http://blog.csdn.net/sailor_8318/article/details/2460177
- windows下ncl生成tiff图(案例)
一:安装软件和准备数据 1.需要安装Vapor(注意安装路径不要存在空格) 注:版本2.4.2及以后 2.安装NCL,方法见http://www.cnblogs.com/striver-zhu/p/4 ...
- 基于opencv的手写数字识别(MFC,HOG,SVM)
参考了秋风细雨的文章:http://blog.csdn.net/candyforever/article/details/8564746 花了点时间编写出了程序,先看看效果吧. 识别效果大概都能正确. ...
- jquery禁用右键单击功能屏蔽F5刷新
1.禁用右键单击功能$(document).ready(function() { $(document).bind("contextmenu",function(e) { aler ...
- java 创建线程
一.继承Thread类 为创建一个线程,最简单的方法就是从Thread类继承.这个类包含了创建和运行线程所需的一切东西.Thread类最重要的方法是run(),但为了使用run(),必须对其进行重写. ...
- nagios监控linux设置
本章主要用来设置nagios的相关配置文件,从而能实现对linux系统的监控. 在进行监控相关服务的时候,nagios会周期性的调用插件去监测服务器的状态,nagios自带的所有插件都放在如下目录: ...
- 基于vagrant工具在win7下免密登录linux
一.SSH加密方式 SSH采用的是"非对称密钥系统",即耳熟能详的公钥私钥加密系统,其安全验证又分为两种级别. 1. 基于口令的安全验证 这种方式使用用户名密码进行联机登录,一般情 ...
- STL源码剖析读书笔记--第四章--序列式容器
1.什么是序列式容器?什么是关联式容器? 书上给出的解释是,序列式容器中的元素是可序的(可理解为可以按序索引,不管这个索引是像数组一样的随机索引,还是像链表一样的顺序索引),但是元素值在索引顺序的方向 ...