ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

第一个Servlet程序

2021-08-14 12:00:35  阅读:178  来源: 互联网

标签:第一个 项目 Servlet resp 程序 Maven import servlet javax


HelloServlet

1、构建一个普通的Maven项目

删掉里面的src目录,以后的项目可以在这个项目里面建立Moudel;这个空的工程就是Maven主工程。

​ 注意:也可以直接就利用外面大的Maven项目来写,但不利于项目结构化,还有之后如果还需要建立Maven的话,需要全部重新建 立项目并且导入jar包,不如主次(父子)工程来得方便。

image

image

image

image

image

image

image

image

2、关于Maven父子工程的理解:

​ 父项目中会有

    <modules>
        <module>servlet-01</module>
    </modules>

​ 子项目中会有(如果用的比较新的IDEA,可能子项目中没有这个,可以手动添加,而且必须要添加,否则不能用父项目的依赖)

image

  <parent>
      <artifactId>javaWeb</artifactId><!--父项目名字-->
      <groupId>org.example</groupId><!--工程组id(刚创建项目时有)-->
      <version>1.0-SNAPSHOT</version><!--版本,可自动生成-->
  </parent>

​ 父项目中的jar包子项目能直接使用(好处1)

​ Maven项目所需的同样的jar包就只需要在父项目中导入一次(好处2)

例如:

		<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
		<!--servlet jar包 -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/javax.servlet.jsp/javax.servlet.jsp-api -->
		<!--jsp jar包 -->
        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>javax.servlet.jsp-api</artifactId>
            <version>2.3.3</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
		<!--mysql jar包 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.25</version>
        </dependency>

3、Maven环境优化

1、修改web.xml为最新的(可直接复制粘贴)

<?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">
</web-app>

2、将Maven的结构搭建完整

(1)在main目录下面新建java和resources文件夹

image

(2)分别标注文件夹

image

4、编写一个Servlet程序

(1)建立相应的文件,编写测试代码

image

package com.test.servlet;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

public class HelloServlet extends HttpServlet {
    //由于get或者post只是请求实现的不同方式,可以互相调用,业务逻辑都一样
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        PrintWriter writer = resp.getWriter();//响应流
        writer.print("Hello Servlet");//前端输出
        System.out.println("Hello World");//后端输出
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doGet(req, resp);
    }
}

(2)建立映射,在web.xml中添加相应代码

image

  <!--注册Servlet-->
  <servlet>
    <servlet-name>hello</servlet-name>
    <servlet-class>com.test.servlet.HelloServlet</servlet-class>
  </servlet>
  <!--Servlet请求路径-->
  <servlet-mapping>
    <servlet-name>hello</servlet-name>
    <url-pattern>/hello</url-pattern>
  </servlet-mapping>

5、配置Tomcat

image

image

image

image

image

image

6、运行测试

image

image

image

标签:第一个,项目,Servlet,resp,程序,Maven,import,servlet,javax
来源: https://www.cnblogs.com/femme/p/15140522.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有