SpringMVC接收返回值方法汇总

传统方式

复制代码
@RequestMapping("/param01")
public String param01(HttpServletRequest request) throws UnsupportedEncodingException {
    request.setCharacterEncoding("UTF-8");
    String id = request.getParameter("id");
    request.setAttribute("msg","账号或密码错误");
    System.out.println("id="+id);
    return "success";
}

ModelAndView返回

复制代码
@RequestMapping("/param02")
public ModelAndView param02(String name){
    System.out.println("name="+name);
    ModelAndView mv = new ModelAndView();
    mv.setViewName("success");
    mv.addObject("msg","账号或密码错误");
    return mv;
}

字符串返回

复制代码
@RequestMapping("/param12")
public String param12(String name, Model model){
    System.out.println("name="+name);
    model.addAttribute("msg","账号或密码错误");
    return "success";
}

转发与重定向

默认返回页面是转发效果

如果需要重定向,需要在返回页面的时候,追加redirect:,后边需要追加视图后缀

复制代码
@RequestMapping("/getUser")
public String getUser(Model model){
    model.addAttribute("msg","测试数据");
    return "redirect:hello.jsp";
}

Ajax返回

在方法上方添加注解@ResponseBody

如果整个类都为Ajax返回的方法则可在类的上方添加@RestController替代@Controller

Ajax返回json格式的数据需要在pom.xml中导入依赖坐标

复制代码
<!--引入json的依赖-->
<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-core</artifactId>
  <version>2.9.0</version>
</dependency>
<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-databind</artifactId>
  <version>2.9.0</version>
</dependency>
<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-annotations</artifactId><version>2.9.0</version>
</dependency>

前端调用Ajax方法从后台获取数据即可

相关推荐
郝学胜-神的一滴10 小时前
线程同步:并行世界的秩序守护者
java·linux·开发语言·c++·程序人生
掉鱼的猫10 小时前
灵动如画 —— 初识 Solon Graph Fluent API 编排
java·openai·workflow
周杰伦fans10 小时前
AndroidStudioJava国内镜像地址gradle
android·java·android-studio
艾莉丝努力练剑10 小时前
【Linux进程控制(一)】进程创建是呼吸,进程终止是死亡,进程等待是重生:进程控制三部曲
android·java·linux·运维·服务器·人工智能·安全
天天摸鱼的java工程师10 小时前
RocketMQ 与 Kafka 对比:消息队列选型的核心考量因素
java·后端
uup10 小时前
SpringBoot 集成 Redis 分布式锁实战:从手动实现到注解式优雅落地
java·redis
Java陈序员10 小时前
数据同步神器!一款搞定多种数据源同步的开源中间件!
java·spring boot·mysql
liuhaikang11 小时前
鸿蒙高性能动画库——lottie-turbo
java·开发语言·nginx
面对疾风叭!哈撒给11 小时前
Liunx之Docker 安装启动 influxdb2
java·spring cloud·docker