spring boot学习02 - 返回json数据
程序员文章站
2022-07-10 21:08:55
spring boot学习02 - 返回json数据1.`@Controller`与`@RestController`区别2.代码实现2.1.创建返回实体2.2.创建`controller`,并返回数据2.3.返回结果1.@Controller与@RestController区别@RestController 相当于 @Controller + @ResponseBody@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Doc...
spring boot学习02 - 返回json数据
1.@Controller
与@RestController
区别
@RestController
相当于 @Controller
+ @ResponseBody
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Controller
@ResponseBody
public @interface RestController {
/**
* The value may indicate a suggestion for a logical component name,
* to be turned into a Spring bean in case of an autodetected component.
* @return the suggested component name, if any (or empty String otherwise)
* @since 4.0.1
*/
@AliasFor(annotation = Controller.class)
String value() default "";
}
当返回的是jsp
,html
页面时,可使用@Controller
注解,返回return
中的相关页面;
@Controller
@RequestMapping("/demo")
public class LoginController {
@RequestMapping("/login")
public String login(UserInfo info){
// 数据库检查登录用户名、密码是否正确
// ...
return "index"; // 登陆成功,返回index页面
}
}
若需要返回的数据是json
串时,在使用@Controller
的前提下还需添加@ResponseBody
注解,这种情况下就可直接使用@RestController
注解完成操作。
@RestController
@RequestMapping("/demo")
public class LoginController {
@RequestMapping("/getInfo")
public UserInfo getInfo(String userName){
UserInfo info = new UserInfo();
// 数据库查询用户信息
// ...
return info; // 直接返回json数据
}
}
在当前流行的前后端分离的环境下,即可使用@RestController
来代替@Controller
与@ResponseBody
,前台只需获取json
数据即可。
2.代码实现
2.1.创建返回实体
项目创建entity
存放实体类
public class StudentEntity {
private String name;
private int age;
private String sex;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
2.2.创建controller
,并返回数据
@RestController
@RequestMapping("/learn2")
public class JsonController {
@RequestMapping("/returnJson")
public StudentEntity returnJson(){
StudentEntity studentEntity = new StudentEntity();
studentEntity.setName("张三");
studentEntity.setAge(21);
studentEntity.setSex("男");
return studentEntity;
}
}
2.3.返回结果
源码地址:github
本文地址:https://blog.csdn.net/jance_hui/article/details/107345864
推荐阅读
-
Spring mvc实现Restful返回json格式数据实例详解
-
spring boot 2 全局统一返回RESTful风格数据、统一异常处理
-
Spring mvc实现Restful返回json格式数据实例详解
-
一起学习Spring boot 2.1.X | 第五篇:Mybatis Druid 数据库(注解版)
-
Android 客户端通过内置API(HttpClient) 访问 服务器(用Spring MVC 架构) 返回的json数据全过程
-
Spring boot 传递JSON 数据格式 为NULL 格式化。数据库配置
-
spring boot学习02 - 返回json数据
-
spring boot 文档学习笔记day02
-
shiro学习三(spring boot整合shiro读取数据库数据实现用户登录,权限认证)
-
spring boot2.x 后端参数校验+统一异常处理+后端自定义全局统一接口返回响应数据格式