今天终于搞出来来了Servlet的HelloWorld,记录下过程。
下图是个整体框架图:
开发流程图:
第一步:配置TOMCAT
在tomcat的安装目录下,找到webapps文件夹,新建文件夹myWebSite(这个名字可以任意,代表自己的工程名字),在myWebSite文件夹下新建WEB-INF(这个名字不能错),在WEB-INF文件夹下新建两个文件夹分别是classes、lib文件夹,并新建一个文件web.xml。这里可以找到webapps文件夹下得ROOT文件夹,将里面的WEB-INF文件夹拷到myWebSite就可以了。没有的文件夹要新建。
第二步:开发Servlet(引入servlet-api.jar)
这里使用的工具是JCreator,其实Eclipse也可以的。这一步要做的事情就是在上面的classes文件夹里新建一个Hello类。先下载并安装JCreator,新建一个JavaFile,名字Hello,路径选到classes文件夹下。然后要引入servlet-api.jar这个包。点击JCreator的配置---选项---JDK配置文件,选中右边的JDK版本,如上图所示,点编辑,点添加--添加存档,然后将TOMCAT安装目录下得lib文件夹下得servlet-api.jar选中,确定即可。
编写代码:
package yanguoqi;
import javax.servlet.*;
import java.io.*;
public class Hello{
} 然后点工具---实现接口---找到javax---servlet---servlet,选中即可。
最终的Hello.java源代码为:
//这是我的第一个servlet,使用实现servlet接口的方式来开发package yanguoqi;import javax.servlet.*;import java.io.*;import javax.servlet.Servlet;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import java.io.IOException;public class Hello implements Servlet{ /** * Method init * * * @param parm1 * @throws ServletException * */ //初始化servlet,类似于构造函数 //只第一次访问survlet时被调用 public void init(ServletConfig parm1) throws ServletException { // TODO: 在这添加你的代码 System.out.println("init "); } /** * Method getServletConfig * * * @return * */ //得到servlet配置文件,不太重要 public ServletConfig getServletConfig() { // TODO: 在这添加你的代码 return null; } /** * Method service * * * @param parm1 * @param parm2 * @throws ServletException @throws IOException * */ //用于处理业务逻辑 public void service(ServletRequest parm1, ServletResponse res) throws ServletException, IOException { // TODO: 在这添加你的代码 System.out.println("service it"); PrintWriter pw = res.getWriter(); pw.println("Hello World!"); } /** * Method getServletInfo * * * @return * */ public String getServletInfo() { // TODO: 在这添加你的代码 return ""; } /** * Method destroy * * */ public void destroy() { // TODO: 在这添加你的代码 System.out.println("destroy!"); } }
注意这个程序写好后要编译下!每次修改后也应该编译。
第三步:部署web.xml
打开web.xml,坑爹的是JCreator貌似打不开,一打开就报错要求关闭。不得已,用eclipse打开来编辑。
<?xml version="1.0" encoding="UTF-8"?> <!-- 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_2_5.xsd" version="2.5"> <display-name>Welcome to Tomcat</display-name> <description> Welcome to Tomcat </description> <servlet> <!--给survlet起个名字,可以是任意的 --> <servlet-name>hello</servlet-name> <!--servlet的路径(包名+类名)--> <servlet-class>yanguoqi.Hello</servlet-class> </servlet> <servlet-mapping> <servlet-name>hello</servlet-name> <!-- 这是在浏览器中输入的访问该survlet的url,任意的 --> <url-pattern>/yanguoqi</url-pattern> </servlet-mapping></web-app>
第四步:输入网址访问
到tomcat文件夹下,找到bin下得startup打开,然后输入:http://localhost:8080/myWebSite/yanguoqi进行访。
注:reload一个servlet的方法:输入网址:http://localhost:8080/,点Tomcat Manager。会要求输入用户名和密码。我的是解压缩版本的,因此要自己设置下。如果是安装版的会提示设置密码。找到conf文件夹下的tomcat-users,添加用户及密码:
<role rolename="manager-gui"/>
<user username="yan" password="yan" roles="manager-gui"/>
至此完毕!明日再战。