对于SpringMVC整合过程中注解没有起作用的情况,处理方法如下:
对于SpringMVC整合过程中注解没有起作用的情况,处理方法如下:
- 确认是否开启注解扫描
在 SpringMVC 的配置文件中,需要先配置注解扫描,才能让 SpringMVC 自动识别使用了注解的类和方法。配置示例如下:
<context:component-scan base-package="com.example.controller" />
其中,base-package
属性的值为注解所在的包路径。
- 确认依赖是否完整
如果注解扫描已经配置,但是注解仍然没有被识别,那么需要确认项目的依赖是否完整。一般来说,使用 SpringMVC 框架需要引入以下依赖:
<!-- SpringMVC框架核心包 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- Spring框架核心包 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- servlet-api包,用于处理HTTP请求和响应 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>${servlet-api.version}</version>
<scope>provided</scope>
</dependency>
其中, spring.version
和 servlet-api.version
需要根据实际项目中使用的版本进行调整。
示例1:
现有一个Controller,代码如下:
@Controller
@RequestMapping("/test")
public class TestController {
@RequestMapping("/hello")
public String hello() {
return "hello";
}
}
当访问 /test/hello
页面时,发现页面出现 404 错误。解决方法如下:
- 确认是否开启注解扫描。在 SpringMVC 的配置文件中增加如下配置:
<context:component-scan base-package="com.example.controller" />
- 确认依赖是否完整。在项目的 pom.xml 文件中添加如下依赖:
<!-- SpringMVC框架核心包 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- Spring框架核心包 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- servlet-api包,用于处理HTTP请求和响应 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>${servlet-api.version}</version>
<scope>provided</scope>
</dependency>
示例2:
现有一个Controller,代码如下:
@Controller
public class TestController {
@RequestMapping("/hello")
public String hello() {
return "hello";
}
}
当访问 /hello
页面时,发现页面出现 404 错误。解决方法如下:
-
修改
@RequestMapping
的值为"/"
,即@RequestMapping("/")
。 -
修改 SpringMVC 的配置文件,增加对根路径的映射,代码如下:
<mvc:view-controller path="/" view-name="index"/>
其中,view-name
属性的值为根路径所对应的视图名称。
本文标题为:SpringMVC整合,出现注解没有起作用的情况处理
基础教程推荐
- jsp hibernate的分页代码第3/3页 2024-01-11
- java – 从spring执行sql脚本时“用户缺少权限或对象未找到” 2023-11-09
- MyBatis-Plus 条件查询器的实现 2023-03-16
- SpringBoot整合Javamail实现邮件发送的详细过程 2023-06-30
- SpringBoot自定义错误处理逻辑详解 2023-06-17
- 关于spring中单例Bean引用原型Bean产生的问题及解决 2023-01-02
- SpringBoot接收参数使用的注解实例讲解 2023-04-17
- IDEA快速搭建jsp项目的图文教程 2024-01-09
- 逐一侦破 网上银行安全漏洞 2024-01-13
- 编码为GB2312网站让AJAX接收的数据显示支持中文 2024-02-27