spring mvc json数据开发

在这里插入图片描述

package com.shsxt.springmvc.controller;

import com.shsxt.springmvc.po.User;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.ArrayList;
import java.util.List;

@Controller
public class jsonController {
/**
 * json数据开发
 * @resPonseBody
 *    表示方法响应的是数据
 *     如果响应的是字符串,直接输出,如果响应的是JavaBean或者对象,则会将对应的额对象转
 *     换成Json格式的字符串响应该注解声明在方法上声明在方法上或者方法的返回值类型的前面,修饰符后面
 *
 * @RequestBody
 * 表示接受的参数是一个json格式的字符串,必须是字符串
 * 用来处理来处理 application/json  类型字符串
 * 该注解声明在  方法的形参前
 *
 *如果是ajax请求
 *    需要在方法行添加@ResponseBody注解,表示方法的返回值数据会被ajax的回调函数接收
 *     如果方法形参设置了@RequestBody注解
 *     1,ajax传递参数时候,不能使用json对象,需要将对象设置为json格式字符串
 *     2.json格式字符串必须是标准的json格式
 *     3.设置请求类型 contentType:"application/json;charset=utf-8",
 */
    /**
     * @return
     * @ResponseBody 表示响应数据, 不做页面转发操作
     * 将响应的数据转化成json格式的字符串
     * z
     * 注解可以放在方法级别
     */
    @RequestMapping("queryUser")
    @ResponseBody
    public User queryUser() {
        User user = new User();
        user.setUserId(1);
        user.setUserName("张三");
        user.setUserPwd("123456");
        return user;
    }

    /**
     * 注解可以设置在修饰符之后,返回值类型前
     *
     * @return
     */

    @RequestMapping("queryUser02")

    public @ResponseBody
    User queryUser02() {
        User user = new User();
        user.setUserId(1);
        user.setUserName("张三");
        user.setUserPwd("123456");
        return user;
    }


    @RequestMapping("queryUserList")

    public @ResponseBody
    List<User> queryUserList( String uname,String upwd) {
        ArrayList<User> users = new ArrayList<>();
        User user = new User();
        user.setUserId(1);
        user.setUserName("张三");
        user.setUserPwd("123456");
        User user2 = new User();
        user.setUserId(1);
        user.setUserName("张四");
        user.setUserPwd("123456");
        User user3 = new User();
        user3.setUserName(uname);
        user3.setUserPwd(upwd);
        users.add(user3);

        users.add(user2);       users.add(user);
        return users;
    }
    /*
    直接返回字符串
     */
    @RequestMapping("test")
    //加
    @ResponseBody
    // 把内容往外输出
    //不加就会去访问test.jsp页面
    public String test(){
        return "test";
    }

    /**
     * @RequestBody 表示接受的参数是json格式的字符串
     * @param user
     * @return
     */
    @RequestMapping("testUser")
    @ResponseBody
    public User  testUser(@RequestBody User user){
return  user;


    }


}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值