一、通过maven工程创建
1、创建maven项目
项目结构
2、引入依赖
引入springboot父工程依赖、web启动器
<!--引入Springboot父工程-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.5.RELEASE</version>
</parent>
<dependencies>
<!--引入web启动器-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
3、编写主启动类
//用@SpringBootApplication 标注的类 相当于主启动类 告诉别人 这是程序的入口
@SpringBootApplication
public class SpringbootApplication {
public static void main(String[] args) {
SpringApplication.run(SpringbootApplication.class,args);
}
}
4、编写接口 helloController类
@RestController
public class helloController {
@RequestMapping("/hello")
public String hello(){
return "hello,SpringBoot!";
}
}
5、启动项目测试
@RestController 注解
@RestController 是一个复合注解
当需要同时加上@Controller 和 @ResponseBody两个注解时,可以用@RestController这个符合注解代替
1.@Controller 注解的原理
在springmvc中,@Controller注解用于标识一个java类为控制器;控制器主要负责接收请求、处理请求、并返回响应。
使用@Controller的类会被SpringMVC/SpringBoot自动扫描,并注册成为一个控制器,成为Spring的一个组件;
@Controller特性:
- 自动映射URL:@Controller注解可以自动将请求(前端输入的url地址)映射到控制器的方法上。
- 支持视图解析:@Controller注解可以将方法的返回值解析为视图,渲染到客户端。
2.@ResponseBody 作用
在@RequestMapping中,它的return返回值默认会被解析为url跳转路径;
如果想让Controller接口返回一个字符串或者json格式的对象,就可以在上面加上@ResponseBody注解;
@ResponseBody 会将你的返回值存在responsebody中返回给前端,这样就不会被解析成返回跳转路径了,而是将java对象作为json格式的数据返回给前端,前端接收到之后会把数据显示到页面上;
如果不加@ResponseBody就会默认被解析为url路径,一般使用在控制(Controller)层。