springmvc(@ResponseBody)无法跳转到对应的jsp页面

项目框架:spring+springmvc+mybatis

问题描述:Controller返回jsp页面名称后,前端无法跳转到该页面,而是将该jsp名称打印到前端页面

前端异常信息:无
后端异常信息:无
报错原因:controller方法存在多余的注解:@ResponseBody
解决方案:去掉controller方法上的@ResponseBody注解

相关注意点:

1.配置视图解析器
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  <property name="prefix" value="/WEB-INF/jsp/"></property>
  <property name="suffix" value=".jsp"></property>
</bean>

 

转载于:https://www.cnblogs.com/malefeng/p/9145350.html

Spring MVC 中的注解主要是用于简化 Web 开发,其中 `@ResponseBody` 和 `@RequestMapping` 是两个关键的注解。当你在一个控制器方法中使用了这两个注解,可以实现如下功能: 1. `@ResponseBody`: 这个注解通常放在返回值上,表示该方法的直接结果(如 Java 对象、字符串等)应该作为响应体发送给客户端,而是视图解析。这意味着当你有一个方法返回一个模型对象,而想通过 JSP 渲染,可以直接返回并转化为 JSON 或 XML 等格式。 ```java @RequestMapping(value = "/example", method = RequestMethod.GET) @ResponseBody public ExampleObject getExample() { // ...业务逻辑处理... return exampleObject; } ``` 在这个例子中,`getExample()` 的返回内容会被 Spring 自动转换成 JSON,并且直接写入 HTTP 响应。 2. `@RequestMapping`: 这个注解用于指定请求映射,包括 URL 路径、HTTP 请求方法等信息。它告诉 Spring MVC 何时调用这个控制器方法处理请求。 ```java @RequestMapping("/api/users") public String getUsersList(@RequestParam("page") int page) { // ...处理用户列表请求... return "users"; // 如果需要跳转对应JSP 文件,这里返回的是视图名称 } ``` 在这里,当访问 `/api/users?page=1` 时,会调用 `getUsersList` 方法。如果方法返回的是 `ExampleObject` 而是一个字符串 `"users"`,那么 Spring MVC 会试图查找名为 `users.jsp` 的 JSP 文件进行渲染。 总之,Spring MVC 注解配合,使得你可以选择是否需要将数据渲染到 JSP,如果需要,直接返回响应体;如果需要,可以用注解指定响应视图名,然后由 Spring 自动负责后续的视图渲染工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值