Servlet入门级实战

一 点睛

从现实的开发来看,既然是Java程序,建议写在Java程序里面,而非Scriptlet(代码段)中。这时就会用到Servlet开发技术。

Applet:应用小程序,是嵌入网页的Java小程序,它不使用主方法运行,这里的let表示“小程序”。

Servlet=Server+Applet,指的是服务器(server)端小程序(let)。Servlet程序,严格来讲是使用Java程序实现的CGI开发。CGI指的是公共网关接口标准,理论上,可以使用任何语言实现,但是传统的CGI有一个非常严重的问题:它采用重量级的多进程的方式进行处理,而Servlet与传统的CGI的主要区别在于:它使用轻量级多线程的方式处理。

二 实战——自动搭建一个简单的Servlet程序

1 建立一个项目目录树

2 编写Servlet程序HelloWorld.java

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.PrintWriter;
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("<html>");
        out.println("<head>");
        out.println("<title>Hello Servlet!</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Hello World!</h1>");
        out.println("</body>");
        out.println("</html>");
        out.close() ;
    }
}

3 编译Servlet

D:\Program\Tomcat8\webapps\ServletDemo>javac -classpath "D:\Program\Tomcat8\lib\servlet-api.jar" -d .\WEB-INF\classes .\src\HelloWorld.java

此时,在D:\Program\Tomcat8\webapps\ServletDemo\WEB-INF\classes目录会生成HelloWorld.class

4 创建web.xml

web.xml是一个部署描述文件,把它放置在WEB-INF目录下。

<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
                      http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
    <servlet>
       <servlet-name>servletDemo</servlet-name>
       <servlet-class>HelloWorld</servlet-class>
    </servlet>
    <servlet-mapping>
       <servlet-name>servletDemo</servlet-name>
       <url-pattern>/hello.do</url-pattern>
    </servlet-mapping>
</web-app>

说明:

<servlet>和<servlet-mapping>下的<servlet-name>必须一致,可以随便命名,它对外部不可见。

<url-pattern>是外部访问URL,通过<servlet-name>和<servlet-class>关联,这里它关联到HelloWorld这个类。

5 在server.xml中加入web项目

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">

        <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
        -->

        <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common" -->
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
        <Context path="/webdemo" docBase="D:\Program\Tomcat8\webapps\WebDemo"/>
        <!--下面这一行为新增-->
        <Context path="/servdemo" docBase="D:\Program\Tomcat8\webapps\ServletDemo"/>
      </Host>

6 重启Tomcat

7 运行测试

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值