0
点赞
收藏
分享

微信扫一扫

在Spring Boot上添加controller服务

汤姆torn 2022-08-24 阅读 97


在《Spring Boot快速入门》基础上编写服务。

编写controller服务

新建controller包,包下新建HelloController:

在Spring Boot上添加controller服务_spring

package com.wong.ok.controller;

import com.alibaba.fastjson.JSON;
import com.wong.ok.bean.User;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@RestController
public class HelloController {
@ResponseBody
@RequestMapping("/hi")
public String hello(){
return "Hello";
}

/*default value*/
/*带默认值的*/
@ResponseBody
@RequestMapping("/goods")
public String showGoods(@RequestParam(defaultValue = "Potato") String productName){
return "product name:"+productName;
}

@ResponseBody
@RequestMapping("/user")
public User getUser(){
return new User("Tom1","boy","student");
}

@ResponseBody
@RequestMapping("/login")
public User login(User user){
user.setName(user.getName()+" Wong");
return user;
}

@ResponseBody
@RequestMapping("/login2")
public void login2(User user, HttpServletResponse response){
try {
user.setName(user.getName()+" Wong");
response.getWriter().write(JSON.toJSONString(user));
} catch (IOException e) {
e.printStackTrace();
}
}
}

  • @RestController 标志这是一个控制器
  • @ResponseBody 会包装返回结果,@responseBody注解的作用是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON数据或者是XML
  • @RequestMapping 是匹配前台请求路径的

运行

  1. 启动服务:Run ‘OkApplication’
  2. 在浏览器访问此服务:
  • ​​http://localhost:8080/hi​​在Spring Boot上添加controller服务_springboot_02- http://localhost:8080/goods
    在Spring Boot上添加controller服务_java_03
  • ​​http://localhost:8080/goods?productName=tomato​​在Spring Boot上添加controller服务_java_04
  • ​​http://localhost:8080/user​​在Spring Boot上添加controller服务_java_05
  • ​​http://localhost:8080/login​​在Spring Boot上添加controller服务_spring_06
  • ​​http://localhost:8080/login2​​在Spring Boot上添加controller服务_java_07

/login与/login2的请求是等价的。

谢谢阅读


举报

相关推荐

0 条评论