最近开始了一个web项目,深深感觉到web方面知识的混杂,越来越明白java为什么可以流行这么多年了,库啊,框架啊,一抓一大把,要多方便有多方便,开发效率提升太高了。

最初使用SpringMVC时,为其ModelAndView可以直接返回页面和数据感觉爽到不行,但是当只想返回数据而不返回页面时,该怎么办呢,难道还要每次自己进行json格式转化吗,太麻烦了。

用ModelAndView显然不行,因为其必须要附带视图页面,如果没有,则会报下面错误。
这里写图片描述

怎么办呢,我们可以使用@ResponseBody注解,方便的返回json数据
它会将内容或对象进行合适的格式转换作为 HTTP 响应正文返回

具体使用方法如下:

库依赖

<!-- json -->
        <dependency>
          <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>${jackson.version}</version>
        </dependency>

xml配置

启动注解
<mvc:annotation-driven/>

使用方式

controller

@RequestMapping("c")
    @ResponseBody
    public String d()
    {
        HashMap s = new HashMap();
        s.put("aaa", "你好啊");
        return s;
    }

效果

这里写图片描述

注意事项

如果返回的对象里的属性必须拥有get方法,因为要进行数据转化直接返回string时,不会进行json格式的转化

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐