zoukankan      html  css  js  c++  java
  • maven 构建的 第一个servlet程序

    servlet 第一个程序

    1.什么是servlet:

    Servlet是一种服务器端的baiJava应用程序,具du有独立于平台和协议zhi的特性dao,可以生成动态的Web页面。

    它担当zhuan客户请求(shuWeb浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)

    的中间层。 Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,

    Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。

    2.新建一个普通的maven项目:

     点击下一步。

     点击finish

    3.导入servlet依赖:

        <dependencies>
            <!--        Servlet依赖-->
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>javax.servlet-api</artifactId>
                <version>4.0.1</version>
                <scope>provided</scope>
            </dependency>
            <!--        JSP依赖-->
            <dependency>
                <groupId>javax.servlet.jsp</groupId>
                <artifactId>javax.servlet.jsp-api</artifactId>
                <version>2.3.3</version>
                <scope>provided</scope>
            </dependency>
    
        </dependencies>

     将上面的代码加入 pom.xml中。

    4.创建maven web子项目:

     将项目的src目录删除掉。

     右击项目new一个module

     选择在创建一个maven项目

    创建maven项目博客:https://www.cnblogs.com/love2000/p/14155577.html

     

     好这就创建了一个子项目

     

     查看pom.xml就可以看到 多了一个modules 里面包含了我们新建的项目名 这样一来就相当于有了一个子模块叫servlet-01 它可以用主项目的所有包

     在 main中建立 java和resources 文件夹(注意颜色也要是对应的)

    5.编写一个servlet程序:

      新建一个package包在java目录下。

     在servlet下新建一个类 然后编写代码。

    com.xiaofu.servlet.HelloServlet:

    package com.xiaofu.servlet;
    
    import javax.servlet.ServletException;
    //导入HttpServlet包
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    import java.io.PrintWriter;
    
    //要实现 servlet需要继承HttpServer这个类
    public class HelloServlet extends HttpServlet {
        //处理get请求
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            super.doGet(req, resp);
            PrintWriter writer = resp.getWriter(); //响应流
            writer.print("Hello_Servlet"); //打印一个字符串
    
        }
    
        //处理post 请求
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            super.doPost(req, resp);
        }
    }

    6.编写servlet映射:

    为什么需要映射:我们编写的是java程序,但是要通过浏览器访问,而浏览器需要连接web服务器,所以我们需要

    再web服务器中注册我们写的servlet,还需要给他一个浏览器能够访问的路径。

     来到web.xml配置servlet

    <?xml version="1.0" encoding="UTF-8"?>
    <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"
              metadata-complete="true">
      
          <!--注册Servlet-->
          <servlet>
            <servlet-name>hello</servlet-name>
          <!--对应的类-->
            <servlet-class>com.xiaofu.servlet.HelloServlet</servlet-class>
          </servlet>
      
          <!--配置Servlet请求路径-->
          <servlet-mapping>
            <!--这个名字要对应上面的servlet-name-->
            <servlet-name>hello</servlet-name>
            <!--请求路径-->
            <url-pattern>/hello</url-pattern>
          </servlet-mapping>
      
    </web-app>

    7.配置tomcat服务器:

    配置tomcat博客https://www.cnblogs.com/love2000/p/14164947.html

    配置好tomcat后点击启动

     tomcat就添加成功了

     再在浏览器输入 刚刚设置的请求路径 点击回车 可以看到执行了对应类的内容 

     他是怎么输出Hello_Servlet的呢?

     会先来到web.xml中找到对应要执行的类

     找到了类 执行了里面的内容 最后打印了Hello_Servlet.

     

  • 相关阅读:
    论学究式教育
    Oracle中rownum与order by的执行顺序
    无效存储过程问题解决
    解决SGA_MAX_SIZE 的大小比 MEMORY_TARGET 大导致数据无法启动的错误
    ORACLE 按时间创建分区表
    Timage Canvas画图
    Oracle存储过程的加密
    Win32对话框模板创建的窗口上响应键消息,Tab焦点切换消息,加速键消息
    win32 TreeCtrl控件通知消息, LVN_SELCHANGED和LVN_ITEMCHANGED用法
    win32 对话框模板添加加速键
  • 原文地址:https://www.cnblogs.com/love2000/p/14166696.html
Copyright © 2011-2022 走看看