一、编写一个简单的servlet程序
1.还是使用HelloWorld为例,我们写一个HelloWorld.java,代码如下:
package hello;//注意包的名字,在后面会有用。
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("");
out.println("");
out.println("");
out.println("");
out.println("");
out.println("");
out.println("Hello World!");
out.println("");
out.println("");
}
}
我们暂时保存源文件到c:\servlet目录下
2.编译源文件。
在这里各位需要注意HelloWorld使用了javax.servlet包,所以需要在classpath中加以说明,否则会编译出错。
具体的编译命令是:javac -classpath "%CLASSPATH%;%jboss_home%\server\default\lib\javax.servlet.jar" HelloWorld.java
这里要说明:
1)%CLASSPATH%指的是在环境变量中设置好的类库路径,如果你没有设置,那请你在环境变量中新建一个名为CLASSPATH的环境变量,其值指定为JDK目录\jre\lib\rt.jar。如果你想把javax.servlet包路径已包含进去,就在rt.jar后面加入";%jboss_home%\server\default\lib\javax.servlet.jar"。
2)%jboss_home%是指jboss的安装目录,你也可以在环境变量中建立一个jboss_home的变量,为其指定jboss的安装目录。
如果没有什么意外,编译会正常通过,你可以看到在c:\servlet目录中新增加了一个HelloWorld.class文件。
二、写一个XML配置文件
代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<!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>
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>hello.HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/HelloWorld</url-pattern>
</servlet-mapping>
</web-app>
请大家注意,每个标记必须小写,否则会出错。
看到<servlet-class>hello.HelloWorld</servlet-class>这句了吗?其中的那个hello就是我们刚建立的包。这说明,你可以包含多个包,但只要在<servlet-class></servlet-class>之间说明类所对应的包,就可以访问这些类了。
保存文件到c:\servlet目录中,命名为web.xml。
三、配置部署目录
1.首先在c:\servlet下建立一个web-inf目录,在目录中放入web.xml文件。
2.在web-inf目录下建立一个classes目录,放入编译好的HelloWorld.class文件
四、制作并部署用的war文件
还记得上次测试jsp时使用的jar程序吗?这次我们还是用它来生成部署的war文件。
在c:\servlet下执行jar cvf hello.war *.*,很快就生成了一个名为hello.war的文件,接着把hello.war复制到jboss的安装目录\server\default\deploy\下完成部署。
五、测试
在浏览器的地址栏中输入http://localhost:8080/hello/HelloWorld如果出现HelloWorld字样那么部署成功。