当前位置: 首页 > news >正文

Spring MVC使用@RestController生成JSON示例

继上一章的生成JSON示例http://www.cnblogs.com/EasonJim/p/7500405.html,现在还有另一种选择,就是使用@RestController,下面将参照上一节例子进行改造,展示核心代码。

UserController.java

package com.jsoft.testspringmvc.controller;

import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

import com.jsoft.testspringmvc.model.User;

@RestController
@RequestMapping("/user")
public class UserController {

    @RequestMapping(value = "{name}", method = RequestMethod.GET)
    public User getUser(@PathVariable String name) {

        User user = new User();

        user.setName(name);
        user.setId(1);
        return user;
    }
}

结果:

如果想要返回XML数据,直接在实体里面标记@XmlRootElement即可,比如下面所示的POJO类

package com.jsoft.testspringmvc.model;

import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement(name = "user")
public class User {
    private String name;
    private int id;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }
}

Maven示例:

https://github.com/easonjim/5_java_example/tree/master/springmvc/tutorialspoint/test33 

 

参考:

http://www.yiibai.com/spring_mvc/spring-4-mvc-rest-service-example-using-restcontroller.html

相关文章:

  • Tyrion中文文档(含示例源码)
  • 控制域名忘记续费,三星数百万台手机陷入“任人宰割”境地
  • 【趣味题】够买餐具
  • 《大道至简》第一章读后感(伪代码)
  • 新态势感知系列(1):从态势感知到全方位态势感知
  • [noip模拟]计蒜姬BFS
  • Android零基础入门第63节:过时但仍值得学习的选项卡TabHost
  • 「vmware」虚拟机与主机共享目录
  • 找出潜在威胁 端点侦测与反制系统
  • Oracle 自适应游标
  • 读《自控力》| 时刻明确你真正想要什么
  • js面向对象
  • 【转载】xtrabackup原理及实施
  • 在Android应用程序中实现推送通知
  • Hbase源码分析:Hbase UI中Requests Per Second的具体含义
  • 「面试题」如何实现一个圣杯布局?
  • 5分钟即可掌握的前端高效利器:JavaScript 策略模式
  • Angular4 模板式表单用法以及验证
  • Git学习与使用心得(1)—— 初始化
  • Idea+maven+scala构建包并在spark on yarn 运行
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • mysql外键的使用
  • nginx 配置多 域名 + 多 https
  • php的插入排序,通过双层for循环
  • React-flux杂记
  • Redux 中间件分析
  • VirtualBox 安装过程中出现 Running VMs found 错误的解决过程
  • 百度小程序遇到的问题
  • 不发不行!Netty集成文字图片聊天室外加TCP/IP软硬件通信
  • 对JS继承的一点思考
  • 浮动相关
  • 高程读书笔记 第六章 面向对象程序设计
  • 给github项目添加CI badge
  • 聊聊hikari连接池的leakDetectionThreshold
  • 使用SAX解析XML
  • 无服务器化是企业 IT 架构的未来吗?
  • [地铁译]使用SSD缓存应用数据——Moneta项目: 低成本优化的下一代EVCache ...
  • PostgreSQL 快速给指定表每个字段创建索引 - 1
  • raise 与 raise ... from 的区别
  • ​3ds Max插件CG MAGIC图形板块为您提升线条效率!
  • # MySQL server 层和存储引擎层是怎么交互数据的?
  • # 执行时间 统计mysql_一文说尽 MySQL 优化原理
  • (附源码)SSM环卫人员管理平台 计算机毕设36412
  • (九)One-Wire总线-DS18B20
  • (十六)一篇文章学会Java的常用API
  • (一) springboot详细介绍
  • **PHP二维数组遍历时同时赋值
  • .apk文件,IIS不支持下载解决
  • .bat批处理(九):替换带有等号=的字符串的子串
  • .net FrameWork简介,数组,枚举
  • .NET 使用配置文件
  • .net 无限分类
  • .NET/C# 的字符串暂存池
  • .NET设计模式(11):组合模式(Composite Pattern)
  • .net通用权限框架B/S (三)--MODEL层(2)