SpringMVC入门

1、SpringMVC概念

SpringMVC是在Spring框架的基础上引入MVC模式的思想,SpringMVC即是一种框架,也是一种思想,将前后端彻底分离,后端不再需要关注前端的代码。前后端分工明确

我们原先学习的MVC+三层架构,MVC是web开发模式,传统的Java技术栈实现如下:

但是这种情况下,每一个请求处理都需要写一个Servlet,这需要写大量的重复代码,所以我们需要将Servlet进行包装,或者说进行分门别类,每一个pojo类就对应一个Servlet,然后将功能模块进行细分、

MVC框架思想和及其设计:

负责共有行为的Servlet称之为前端控制器,负责业务行为的JavaBean称之为控制器controller

2、创建项目

2.1、创建一个Maven项目

在main下创建一个Java目录

将resources标记为资源根目录

2.2、配置好Tomcat

下面是配置Tomcat的方法

2024/11/25,idea的Web项目构建,以及Tomcat的配置_web facet怎么配置-CSDN博客

3、SpringMVC依赖和配置

3.1、依赖:

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-webmvc</artifactId>

<version>5.3.18</version>

</dependency>

3.2、在web.xml里配置dispatchServlet

<!-- 配置dispacherServlet-->

<servlet>

<servlet-name>DispatcherServlet</servlet-name>

<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

<init-param>

<param-name>contextConfigLocation</param-name>

<!--spring.xml相当于springMVC的配置文件-->

<param-value>classpath:spring.xml</param-value>

</init-param>

</servlet>

<servlet-mapping>

<servlet-name>DispatcherServlet</servlet-name>

<url-pattern>/</url-pattern>

</servlet-mapping>

3.3、加载spring.xml配置文件

3.3、创建一个测试的控制类

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

@Controller

public class TestController {

@RequestMapping("testSpringMVC")

public void test(){

System.out.println("Hello SpringMVC!");

}

}

启动tomcat服务器,打开浏览器,在地址栏输入http://localhost:8080/testSpringMVC 回车,回到idea,可以看到控制台打印了test方法里面的输出语句

能够看到控制台打印了这个语句说明请求的确应该到我们的后台程序中来了,但是浏览器的页面却显示了500的错误,如下图

想要解决这个问题也很简单,那就是给一个返回页面:

相关推荐
承渊政道19 分钟前
C++学习之旅【实战全面解析C++类和对象】
c++·笔记·学习
丝斯201126 分钟前
AI学习笔记整理(30)—— 计算机视觉之动作识别相关算法
人工智能·笔记·学习
AA陈超30 分钟前
LyraStarterGame_5.6 Experience系统分析
开发语言·c++·笔记·学习·ue5·lyra
烤麻辣烫31 分钟前
黑马大事件学习-16 (前端主页面)
前端·css·vue.js·学习
嗷嗷哦润橘_40 分钟前
AI Agent学习:MetaGPT项目之debate.py
学习
做cv的小昊40 分钟前
计算机图形学:【Games101】学习笔记04——着色(光照与基本着色模型,着色频率、图形管线、纹理映射)
笔记·学习·3d·图形渲染·光照贴图·计算机图形学
秋深枫叶红43 分钟前
嵌入式第三十三篇——linux系统编程——文件IO
linux·学习·文件io
第二层皮-合肥44 分钟前
50天学习FPGA第21天-verilog的时序与延迟
学习·fpga开发
知识分享小能手1 小时前
CentOS Stream 9入门学习教程,从入门到精通,CentOS Stream 9 中大数据 —语法详解与实战案例(15)
大数据·学习·centos
石像鬼₧魂石1 小时前
Hydra 弱口令爆破的详细命令模板
linux·windows·学习·ubuntu