首页 > 其他分享 >1.简易使用Servlet

1.简易使用Servlet

时间:2024-04-10 14:00:30浏览次数:12  
标签:web Servlet resp 简易 使用 servlet javax HelloServlet

1.Servlet简介

  • Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于交互式地浏览和生成数据,生成动态Web内容。
  • 狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类。从原理上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。
  • 开发Servlet程序
    1. 编写一个类,实现Servlet接口
    2. 部署到web服务器中

2.HelloServlet

  1. 构建Maven项目,删掉src目录
  2. 添加servlet依赖
    <dependencies>
        <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api  官网地址-->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>
  1. 添加jsp依赖
<!-- https://mvnrepository.com/artifact/javax.servlet.jsp/javax.servlet.jsp-api -->
        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>javax.servlet.jsp-api</artifactId>
            <version>2.3.3</version>
            <scope>provided</scope>
        </dependency>
  1. Maven环境优化
    • 修改web.xml为最新
    • 将maven的结构搭建完整
  2. 编写一个Servlet程序
    1. 创建一个Servlet继承HttpServlet,并且重写doGet和doPost
public class HelloServlet extends HttpServlet {
    // 由于get和post只是请求实现方式不一样 ,可以相互调用 因为逻辑一样
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        // 做get请求的处理
        System.out.println("get");
    }

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        // ServletInputStream inputStream = req.getInputStream();
        // ServletOutputStream outputStream = resp.getOutputStream();
        PrintWriter writer = resp.getWriter(); //响应流
        writer.print("hello servlet");
    }

  1. 在web.xml中配置HelloServlet
    让tomcat将封装好的request找到对应的servlet让其使用
    <servlet>
<!--        取名字 尽量和servlet类名相同-->
        <servlet-name>HelloServlet</servlet-name>
<!--        servlet的位置-->
        <servlet-class>com.fei.servlet.HelloServlet</servlet-class>
    </servlet>
    <servlet-mapping>
<!--        跟上边servlet名字相同-->
        <servlet-name>HelloServlet</servlet-name>
<!--        浏览器通过改url找到servlet 相当于项目名-->
        <url-pattern>/HelloServlet</url-pattern>
    </servlet-mapping>

3.配置Tomcat

  1. 在菜单栏中,选择「Run」->「Edit Configurations...」
  2. 在打开的「Run/Debug Configurations」窗口中,点击左上角的「+」按钮,选择「Tomcat Server」->「Local」。在「Name」字段中,为你的Tomcat配置起一个识别名字。

    应用服务器如果没有配置的话,找到Tomcat目录直接丢到里边
  3. 部署完成

    4.测试
    现在IDEA中启动服务器
    访问http://localhost:8080/项目名/ 会显示index.jsp中的内容
    访问http://localhost:8080/项目名/(url 在web中配置的名字)

    布置成功

标签:web,Servlet,resp,简易,使用,servlet,javax,HelloServlet
From: https://www.cnblogs.com/hashifei/p/18125892

相关文章

  • 【2024】Onlyfans如何使用搜索功能?Onlyfans如何搜索博主?如何在OnlyFans搜索HongkongDo
     1.什么是OnlyfansOnlyFans是一种内容订阅服务平台,它成立于2016年。它允许内容创作者在平台上面分享自己的创作,如图片、视频等等,用户需要支付订阅费用才能查看创作者的内容。此外,用户还可以通过打赏的方式来让创作者为自己量身定制作品。由于其独特的付费机制,很多创作者都......
  • TiDB-TiCDC的使用方法
    命令:1.cdccli2.tiupctlcdc1.查看capture状态(如果没下载会自动下载)tiupctl:v6.1.0cdccapturelist--pd=http://192.168.210.38:23792.创建同步任务格式cdcclichangefeedcreate--pd=http://192.168.210.38:2379--sink-url="mysql://root:[email protected]......
  • 如何使用VBA关闭Excel后台进程?
    以下是使用VBA关闭Excel后台进程的示例代码: SubCloseExcelProcess()   DimobjWMIServiceAsObject  DimcolProcessesAsObject  DimobjProcessAsObject  DimstrComputerAsString  DimstrExcelAsString     '设置要关闭的进......
  • 汇编语言简易教程(5):环境构建
    汇编语言简易教程(5):环境构建最近在学习assembly64时,需要对程序进行编写->生成汇编代码->调试->执行.本文聚焦于如果在Windows环境下,尽可能精简并且完整的构建一个汇编环境.基于Windows11,WSLUbuntu22.04,vscode,其他的系统/WSL发行版本.您可以以本文作为......
  • 汇编语言简易教程(6):工具链以及调试器
    汇编语言简易教程(6):工具链以及调试器通常,用于创建程序的编程工具集称为工具链。就本文而言,工具链包括以下内容汇编器Assembler​连接器Linker​加载器Loader​调试器Debugger虽然工具链有很多选项,但本文使用了一组相当标准的开源工具,这些工具可以很好地协同工作并......
  • 【Python使用turtle库随便画一些乱七八糟的东西】
    1、画一些五颜六色乱七八糟的Python代码如下:importrandomimportturtle#导入turtle和random库t=turtle.Turtle()#创建海龟笔t#创建一个常用颜色列表用来随机抽取颜色colors=["red","orange","lime","yellow","blue","indigo","p......
  • 汇编语言简易教程(1):简介
    汇编语言简易教程(1):简介本教程完全来自于学习asseble64时的读书笔记,因为原书是英文版且缺少翻译,因此本教程也可以作为原书的导读.WhatisAssemblyLanguage具体机器架构相关,在不同的架构上,指令会有差异(复杂指令集/精简指令集)低级语言(这里的低级指的是......
  • 汇编语言简易教程(3):编码表示
    汇编语言简易教程(3):编码表示'表示'指的是计算机如何在内存中表示/存储.计算机使用二进制(1/0)进行存储,但是由于空间的限制,任何表示方式只能表达一定范围,一定精度的数据.本章简要总结了整数、浮点和ASCII表示方案。假设读者已经普遍熟悉二进制、十进制和十六进制......
  • 汇编语言简易教程(2): 计算机体系概览
    汇编语言简易教程(2):计算机体系概览架构​​CPURAMBUSDEVICESecondaryStorage(SSD/DiskDrive)通常来说程序被存储在硬盘中,在实际需要运行时从硬盘加载到内存.主存通常来说是易失性存储,所以在断电时,存储内容会丢失.二级内存通常是不易失的,对于断电等行......
  • 汇编语言简易教程(4):基本语法
    汇编语言简易教程(4):基本语法以yasm语法为主注释​;​分号之后的所有内容全都是注释,没有实际作用.数值数值必须是10进制/16进制/八进制最终都会被转为16进制的数字,以0x​开头,例如127​->0x7f​当使用8进制的时候:511​->777q​默认基数(基数)为十进制,......