当前位置: 首页 > news >正文

Servlet注册迭代史

Servlet注册迭代史

1、第一代,xml注册

<web-app><display-name>Archetype Created Web Application</display-name><!-- 定义一个Servlet --><servlet><!-- Servlet的名称,用于在配置中引用 --><servlet-name>HelloServlet</servlet-name><!-- Servlet的完全限定类名,这是Servlet类的Java类名 --><servlet-class>HelloServlet</servlet-class></servlet><!-- 配置Servlet映射 --><servlet-mapping><!-- 引用之前定义的Servlet的名称 --><servlet-name>HelloServlet</servlet-name><!-- 定义URL模式,当客户端访问此URL时,将由HelloServlet处理 --><url-pattern>/hello</url-pattern></servlet-mapping></web-app>

2、第二代,注解注册

@WebServlet("/hello")
/*** @author Administrator*/
public class HelloServlet extends HttpServlet {@Overridepublic void init() throws ServletException {System.out.println("HelloServlet...init初始化。");}@Overridepublic void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {System.out.println("HelloServlet...service。");//        防止乱码// 设置响应的字符编码为UTF-8res.setCharacterEncoding("UTF-8");// 设置响应的内容类型为text/html;charset=UTF-8res.setContentType("text/html;charset=UTF-8");res.getWriter().write("HelloServlet...,第二种注册servlet方式。(注解注册)");}@Overridepublic void destroy() {System.out.println("HelloServlet...destroy。");}}

3、第三代,注解注册

@Controller
@RequestMapping("/api")
public class HelloController {//    访问地址:http://localhost:8080/api/hello//    格式:http://ip:port/api/hello@ResponseBody@RequestMapping("/hello")private String show() {return "hello";}}

4、第四代,注解注册

@RestController
@RequestMapping("/api")
public class Hello2Controller {@RequestMapping("/test")public String test() {return "test";}
}

注:@Controller、和@RestController ,都是springmvc框架的注解。

只不过SSM阶段的时候、或者单独使用springmvc时,通常是用@Controller、或者@Controller和@RestController配合使用。

到了springboot阶段,通常来说…主要是以前后端分离形式开发,这个时候就不怎么需要@Controller了。

相关文章:

Servlet注册迭代史

Servlet注册迭代史 1、第一代&#xff0c;xml注册 <web-app><display-name>Archetype Created Web Application</display-name><!-- 定义一个Servlet --><servlet><!-- Servlet的名称&#xff0c;用于在配置中引用 --><servlet-name&…...

合创汽车V09纵享商务丝滑?预售价32万元起,正式宣布大规模生产

合创汽车正式宣布&#xff0c;旗下新款车型V09已于9月10日开始大规模生产&#xff0c;并预计将于10月13日正式上市。V09作为中大型纯电动MPV的代表之一&#xff0c;备受瞩目。该车型是广汽新能源和蔚来汽车共同成立的广汽蔚来改为广汽集团和珠江投管共同投资的高端品牌——合创…...

49. 视频热度问题

文章目录 实现一题目来源 谨以此笔记献给浪费掉的两个小时。 此题存在多处疑点和表达错误的地方&#xff0c;如果你看到了这篇文章&#xff0c;劝你跳过该题。 该题对提升HSQL编写能力以及思维逻辑能力毫无帮助。 实现一 with info as (-- 将数据与 video_info 关联&#x…...

【力扣练习题】加一

package sim;import java.math.BigDecimal; import java.util.Arrays;public class Add1 {/*给定一个由 整数 组成的 非空 数组所表示的非负整数&#xff0c;在该数的基础上加一。最高位数字存放在数组的首位&#xff0c; 数组中每个元素只存储单个数字。你可以假设除了整数 0 …...

Linux--I/O复用之select

目录 一&#xff1a;概念 二&#xff1a;使用 三&#xff1a;参数介绍&#xff1a; 1.ndfs&#xff1a; 2.fd_set类型&#xff1a; 3.readfds&#xff1a; 4.writefds&#xff1a; 5.exceptfds&#xff1a; 6.timeout&#xff1a; 7.返回值&#xff1a; 四&#xff1…...

数据结构大作业 成绩分析c语言程序设计

界面加载 界面展示 成绩输入 求平均成绩 升序排列 降序排列 名字排序 按名字搜索 按ID搜索 每门课成绩分析 成绩单展示 -...

Consul学习笔记之-初识Consul

文章目录 1. What is consul?2. Consul能干什么3. Consul的架构3.1 概念 4. Consul VS Eureka4.1 CAP4.2 对比 1. What is consul? 根据官方文档的定义&#xff1a; HashiCorp Consul is a service networking solution that enables teams to manage secure network connec…...

python实现读取并显示图片的两种方法

前言 嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 在 python 中除了用 opencv&#xff0c;也可以用 matplotlib 和 PIL 这两个库操作图片。 本人偏爱 matpoltlib&#xff0c;因为它的语法更像 matlab。 &#x1f447; &#x1f447; &#x1f447; 更多精彩机密、教程&…...

Spring Boot 整合 MyBatis

&#x1f648;作者简介&#xff1a;练习时长两年半的Java up主 &#x1f649;个人主页&#xff1a;程序员老茶 &#x1f64a; ps:点赞&#x1f44d;是免费的&#xff0c;却可以让写博客的作者开兴好久好久&#x1f60e; &#x1f4da;系列专栏&#xff1a;Java全栈&#xff0c;…...

2023高教社杯数学建模A题B题C题D题E题思路模型 国赛建模思路分享

文章目录 0 赛题思路1 竞赛信息2 竞赛时间3 建模常见问题类型3.1 分类问题3.2 优化问题3.3 预测问题3.4 评价问题 4 建模资料 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 竞赛信息 全国大学生数学建模…...

手机木马远程控制复现

目录 目录 前言 系列文章列表 渗透测试基础之永恒之蓝漏洞复现http://t.csdn.cn/EsMu2 思维导图 1&#xff0c;实验涉及复现环境 2,Android模拟器环境配置 2.1,首先从官网上下载雷电模拟器 2.2,安装雷电模拟器 2.3, 对模拟器网络进行配置 2.3.1,为什么要进行配置…...

linux 安装Docker

# 1、yum 包更新到最新 yum update # 2、安装需要的软件包&#xff0c; yum-util 提供yum-config-manager功能&#xff0c;另外两个是devicemapper驱动依赖的 yum install -y yum-utils device-mapper-persistent-data lvm2 # 3、 设置yum源 yum-config-manager --add-repo h…...

Java中的值传递与引用传递 含面试题

面试题分享 点我直达 2023最新面试合集链接 2023大厂面试题PDF 面试题PDF版本 java、python面试题 项目实战:AI文本 OCR识别最佳实践 AI Gamma一键生成PPT工具直达链接 玩转cloud Studio 在线编码神器 玩转 GPU AI绘画、AI讲话、翻译,GPU点亮AI想象空间 史上最全文档…...

SQL中CONVERT()函数用法详解

SQL中CONVERT函数格式: CONVERT(data_type,expression[,style]) 参数说明: expression 是任何有效的 Microsoft SQL Server™ 表达式。。 data_type 目标系统所提供的数据类型&#xff0c;包括 bigint 和 sql_variant。不能使用用户定义的数据类型。 length nchar、nva…...

借助各大模型的优点生成原创视频(真人人声)Plus

【技术背景】 众所周知&#xff0c;组成视频的3大元素&#xff0c;即文本语音图片。接着小编逐一介绍生成原创视频的过程。 【文本生成】 天工AI搜索&#xff08;thttp://iangong.cn&#xff09; 直接手机短信验证就可以使用&#xff0c;该大模型已经接入互联网&#xff0c…...

技能大赛物联网赛项参赛软件建设方案

一、概述 信息与通信技术的目标已经从任何时间、任何地点连接任何人&#xff0c;发展到连接任何物品的阶段&#xff0c;而万物的连接就形成了物联网。物联网的主要特征是通过条码识读设备、射频识别 (RFID&#xff09;装置、红外感应器、全球定位系统、激光扫描器等信息传感设备…...

蓝桥杯官网练习题(凯撒加密)

题目描述 给定一个单词&#xff0c;请使用凯撒密码将这个单词加密。 凯撒密码是一种替换加密的技术&#xff0c;单词中的所有字母都在字母表上向后偏移 3 位后被替换成密文。即 a 变为 d&#xff0c;b 变为 e&#xff0c;⋯⋯&#xff0c;w 变为z&#xff0c;x 变为 a&#x…...

JavaScript 数组中常用的方法

添加 push&#xff1a;数组末尾添加unshift&#xff1a;数组首位添加splice(1, 0, ‘新增内容’)&#xff1a;再指定位置插入&#xff0c;第二参数为0&#xff0c;表示新增&#xff1b;大于0&#xff0c;表示修改 删除 pop&#xff1a;删除末尾shift&#xff1a;删除首位slice(…...

YOLOV7改进-添加基于注意力机制的目标检测头(DYHEAD)

DYHEAD 复制到这&#xff1a; 1、models下新建文件 2、yolo.py中import一下 3、改IDetect这里 4、论文中说6的效果最好&#xff0c;但参数量不少&#xff0c;做一下工作量 5、在进入IDetect之前&#xff0c;会对RepConv做卷积 5、因为DYHEAD需要三个层输入的特征层一致&am…...

爬虫爬取mp3文件例子

相信训练模型时数据集的获取也是一个很头疼的事情&#xff0c;搞cv领域的可以扛着摄像头架起三脚架拍摄获取&#xff08;以前干过&#xff09;&#xff0c;但是如果是nlp领域的呢&#xff0c;特别是chatgpt等大模型出来后对这类文本等数据的需求更大&#xff0c;如果没有现成的…...

GoFrame+Vue3后台管理框架的WebSocket即时通讯实战:架构设计与消息推送

在 GoFrame Vue3 后台管理框架的开发中&#xff0c;即时通讯&#xff08;IM&#xff09;是一个高频需求——从站内信到客服系统&#xff0c;从通知推送到协作消息&#xff0c;都离不开 WebSocket 长连接。 XYGo Admin 基于 gorilla/websocket 实现了一套完整的即时通讯体系&a…...

VRM-VRChat双向转换引擎:打破虚拟角色平台壁垒的技术解决方案

VRM-VRChat双向转换引擎&#xff1a;打破虚拟角色平台壁垒的技术解决方案 【免费下载链接】VRMConverterForVRChat 项目地址: https://gitcode.com/gh_mirrors/vr/VRMConverterForVRChat VRM格式转换、VRChat SDK3兼容、Unity编辑器扩展、虚拟角色迁移、跨平台角色转换…...

优化ESP32 ADF 音频问题

可以&#xff0c;现在已经进入音质调试阶段了&#xff0c;不是“能不能播放”的阶段。 你现在的问题大概率不是一个单点问题&#xff0c;而是下面几类之一&#xff1a; 1. 音量 / 增益太大&#xff0c;导致 ES8388 或 MD8002A 功放削顶失真 2. I2S 时钟不准&#xff0c;导致声音…...

暗黑破坏神2存档编辑器:游戏数据解析与自定义编辑的技术实现

暗黑破坏神2存档编辑器&#xff1a;游戏数据解析与自定义编辑的技术实现 【免费下载链接】d2s-editor 项目地址: https://gitcode.com/gh_mirrors/d2/d2s-editor 在游戏开发与修改社区中&#xff0c;暗黑破坏神2&#xff08;Diablo II&#xff09;作为经典ARPG游戏&…...

我开会用了之后从怀疑到真香!2026华为手机语音转文字真后悔没早用

我上周差点因为漏记项目评审会的核心需求背锅&#xff0c;前前后后踩了N多会议记录的坑&#xff0c;用过不下10款语音转文字工具&#xff0c;掏心窝子说一句&#xff1a;听脑AI是同类工具中最值得职场人用的&#xff0c;没有之一。之前我真的不信什么语音转文字能解决所有问题&…...

C++项目集成Tesseract 5.x踩坑实录:从编译选项到内存管理的完整避坑指南

C项目集成Tesseract 5.x踩坑实录&#xff1a;从编译选项到内存管理的完整避坑指南 在计算机视觉和文档处理领域&#xff0c;Tesseract OCR引擎以其开源免费、多语言支持和较高的识别准确率&#xff0c;成为众多C项目的首选集成方案。然而&#xff0c;从源码编译到生产环境部署&…...

保姆级教程:用易语言和大漠插件给游戏做字库,实现自动化文字识别(附模块源码)

零基础实战&#xff1a;易语言与大漠插件游戏字库制作全指南 游戏自动化开发中&#xff0c;文字识别是绕不开的核心技术。想象一下&#xff0c;当你的程序能自动读取任务提示、NPC对话或物品名称时&#xff0c;整个自动化流程就拥有了"眼睛"。本文将彻底拆解大漠插件…...

【STM32H7实战】HRTIM高分辨率定时器在数字电源与电机控制中的高级应用与HAL库配置

1. HRTIM高分辨率定时器概述 HRTIM&#xff08;High-Resolution Timer&#xff09;是STM32H7系列中一个强大的定时器外设&#xff0c;专为数字电源转换、电机控制等高性能实时控制场景设计。相比普通定时器&#xff0c;它的分辨率高达184ps&#xff08;在400MHz主频下&#xff…...

BGA虚焊别头疼!从焊膏印刷到回流焊曲线,一份保姆级的SMT工艺避坑指南

BGA虚焊别头疼&#xff01;从焊膏印刷到回流焊曲线&#xff0c;一份保姆级的SMT工艺避坑指南 在SMT产线上&#xff0c;BGA虚焊问题就像个幽灵&#xff0c;时不时冒出来折腾工程师。上周产线刚报修一批主板&#xff0c;X光下那些不规则焊点像极了抽象派画作——可惜客户要的是工…...

科研人狂喜!AI生成的位图可以转矢量图了

今天给大家分享我最近挖到的宝藏科研工具&#xff1a;MedPeer「图片创作」——国内领先的垂直领域AI科研绘图工具&#xff0c;刚好解决我们科研人最头疼的几个痛点。尤其是它的人工绘图转换服务&#xff0c;简直是帮我解决了大麻烦&#xff0c;必须给大家捋捋明白。我们科研人绘…...