配置web工程

第一步安装tomcat

配置环境变量

运行结果

在idea中创建网络工程

目录结构完善

导入maven依赖

第一步,配置dispatcherservlet

DispatcherServlet 是一个 Servlet 类,它负责接收并处理 HTTP 请求。为了让 Web 应用程序能够识别并正确地处理这些请求,我们需要将 DispatcherServlet 注册到 web.xml 文件中,并为其配置一个请求映射路径。例如,以下配置:

xml 复制代码
xmlCopy Code
<servlet>
    <servlet-name>dispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/applicationContext.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>dispatcher</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>

在这个例子中:

  • <servlet> 标签定义了 DispatcherServlet,指定了其类路径和初始化参数(例如 Spring 配置文件的位置)。
  • <servlet-mapping> 标签将 DispatcherServlet 映射到 /* 路径,这意味着所有请求都会交由 DispatcherServlet 处理。

第二步,创建处理器

kotlin 复制代码
package com.xyu.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

//控制器类的方法会通过注解如@RequestMapping(或其他更具体的注解,如@GetMapping, @PostMapping等)与特定的请求URL进行绑定,从而处理HTTP的响应
@Controller
//标记该类是mvc的控制器
public class my_controller {
    //创建一个处理器
    @RequestMapping("hello")
    
    @ResponseBody
    public String login() {
        return "hello";
    }
// @RequestMapping("/hello") 表示当请求 URL 为 /hello 时,调用 hello 方法进行处理。
// @ResponseBody 注解表示方法的返回值直接作为响应体返回给客户端,而不是去解析为视图。
}

控制器类的方法会通过注解如@RequestMapping(或其他更具体的注解,如@GetMapping, @PostMapping等)与特定的请求URL进行绑定,从而处理HTTP响应

第三步 创建springmvc.xml配置文件
ini 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       https://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        https://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/mvc
        http://www.springframework.org/schema/mvc/spring-mvc.xsd">
        <context:component-scan base-package="com.xyu.controller"></context:component-scan>
</beans>

第四步,在spring.xml中开启注解开发

<context:component-scan base-package="com.xyu.controller"></context:component-scan>

第五步,创建视图文件及配置视图解析器

  1. prefix : 设置视图名称的前缀,Spring 会将返回的视图名称与此前缀拼接,查找实际的视图文件。例如,如果返回视图名称是 hello,Spring 会在 /WEB-INF/views/hello.jsp 路径下查找对应的 JSP 文件。
  2. suffix : 设置视图名称的后缀,通常是 .jsp,这样就可以让 Spring 自动为视图名称添加后缀。例如,视图名称 hello 会被解析为 /WEB-INF/views/hello.jsp

配置web.xml文件

xml 复制代码
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
    <!-- 配置Spring的DispatcherServlet -->
    <servlet>
        <servlet-name>dispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!-- 配置Spring容器的配置文件 -->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springmvc.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup> <!-- 确保在服务器启动时加载 -->
    </servlet>

    <!-- 配置DispatcherServlet的映射 -->
    <servlet-mapping>
        <servlet-name>dispatcherServlet</servlet-name>
        <url-pattern>/</url-pattern> <!-- 让Spring MVC处理所有请求 -->
    </servlet-mapping>

    <!-- 配置ContextLoaderListener(可选) -->
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
</web-app>

家人们注意一定要注意

给选对了,不然就会报错

相关推荐
咖啡の猫30 分钟前
Shell脚本-for循环应用案例
前端·chrome
uzong2 小时前
面试官:Redis中的 16 库同时发送命令,服务端是串行执行还是并行执行
后端·面试·架构
百万蹄蹄向前冲3 小时前
Trae分析Phaser.js游戏《洋葱头捡星星》
前端·游戏开发·trae
追逐时光者3 小时前
.NET 使用 MethodTimer 进行运行耗时统计提升代码的整洁性与可维护性!
后端·.net
朝阳5813 小时前
在浏览器端使用 xml2js 遇到的报错及解决方法
前端
GIS之路4 小时前
GeoTools 读取影像元数据
前端
ssshooter4 小时前
VSCode 自带的 TS 版本可能跟项目TS 版本不一样
前端·面试·typescript
你的人类朋友4 小时前
【Node.js】什么是Node.js
javascript·后端·node.js
Jerry5 小时前
Jetpack Compose 中的状态
前端
David爱编程5 小时前
面试必问!线程生命周期与状态转换详解
java·后端