SpringBoot简介:

  1. 微框架,与Spring4一起诞生,比如RestController
  2. 可以快速上手,整合了一些子项目(开源框架或者第三方开源库)
  3. 可以依赖很少的配置就可以十分快速的搭建并且运行项目
  4. 基于Spring,使开发者快速入门,门槛很低,(Spring全家桶里面的一员)
  5. SpringBoot可以创建独立运行的应用而不依赖于容器
  6. 不需要打包成war包,可以放到tomcat中直接运行
  7. 提供maven的极简配置,缺点就是会引入很多你不需要的包
  8. 根据项目来依赖,从而配置Spring,需要什么配什么
  9. 提供可视化的相关功能,方便监控,比如性能,应用的健康程度等
  10. 简化配置,不用再看过多的XML,通过去XML化,来引入注解化
  11. 为微服务SpringCloud铺路,SpringBoot可以整合很多格式各样的框架来构建微服务,比如Dubbo,Thrift等

SringBoot使用场景

  • 有Spring的地方都行
  • j2ee/web项目
  • 微服务

构建第一个SpringBoot  Demo

构建方式:

1使用官方地址生成项目:https://start.spring.io

2直接使用开发工具新建SpringBoot项目(此处使用Idea直接新建)

首先我们新建项目

点击next:

根据自己爱好填入信息

点击next:

根据需求引入相关依赖,此处我们只选择web依赖,点击finish。

这样我们就新建完成了第一个SpringBoot项目。

这个类就是我们的启动类,直接运行这个类,就能启动我们的SpringBoot项目。

查看运行结果如下:

此时我们新建一个HelloController.class:

代码如下:

importorg.springframework.web.bind.annotation.RestController;  
  
/\*\*  
\* hello  
\*  
\* @author javaHuang  
\* 公众号:【ToBeTopJavaer】  
\* @create 03 28, 2020  
\* @Version 1.0.0  
\*/  
@RestController  
publicclassHelloController{  
   @RequestMapping("/hello")  
   publicObjecthello(){  
       return"hello javaHuang";  
  }  
}

我们来启动项目,然后访问localHost:8080:

SpringBoot响应客户端渲染数据:

SpringBoot构造并且返回一个json对象

首先们新建一个pojo包,并且在包中新建一个User对象:

User.class 代码如下:

packagecom.tobe.topjavaer.springbootstudy.pojo;  
  
importjdk.jfr.DataAmount;  
  
importjava.util.Date;  
  
/\*\*  
\* 用户实体类  
\*  
\* @author javaHuang  
\* 公众号:【ToBeTopJavaer】  
\* @create 03 28, 2020  
\* @Version 1.0.0  
\*/  
publicclassUser{  
   privateStringname;  
   privateStringpassword;  
   privateIntegerage;  
   privateDatebirthDay;  
   privateStringdesc;  
  
   publicStringgetName() {  
       returnname;  
  }  
  
   publicvoidsetName(Stringname) {  
       this.name\=name;  
  }  
  
   publicStringgetPassword() {  
       returnpassword;  
  }  
  
   publicvoidsetPassword(Stringpassword) {  
       this.password\=password;  
  }  
  
   publicIntegergetAge() {  
       returnage;  
  }  
  
   publicvoidsetAge(Integerage) {  
       this.age\=age;  
  }  
  
   publicDategetBirthDay() {  
       returnbirthDay;  
  }  
  
   publicvoidsetBirthDay(DatebirthDay) {  
       this.birthDay\=birthDay;  
  }  
  
   publicStringgetDesc() {  
       returndesc;  
  }  
  
   publicvoidsetDesc(Stringdesc) {  
       this.desc\=desc;  
  }  
}  

第二步,我们新建一个Controller包,并且新增一个UserController.class

首先我们以 SpringMvc的方式创建的UserController.class代码如下:

packagecom.tobe.topjavaer.springbootstudy.Controller;  
  
importcom.tobe.topjavaer.springbootstudy.pojo.User;  
importorg.springframework.stereotype.Controller;  
importorg.springframework.web.bind.annotation.RequestMapping;  
importorg.springframework.web.bind.annotation.ResponseBody;  
  
importjava.util.Date;  
  
/\*\*  
\* 用户控制器  
\*  
\* @author javaHuang  
\* 公众号:【ToBeTopJavaer】  
\* @create 03 28, 2020  
\* @Version 1.0.0  
\*/  
@Controller  
@RequestMapping("/user")  
publicclassUserController{  
   @RequestMapping("/getUser")  
   @ResponseBody  
   publicUsergetUser(){  
       Useru\=newUser();  
       u.setName("javaHuang");  
       u.setAge(18);  
       u.setPassword("javaHuang");  
       u.setBirthDay(newDate());  
       returnu;  
  }  
}

启动SpringBootStudyApplication.class:

我在配置文件中将端口改成了8888

所以我们的访问地址为 localhost:8888/user/getUser

然后我们将SpringMvc写法改成SpringBoot写法:

packagecom.tobe.topjavaer.springbootstudy.Controller;  
  
importcom.tobe.topjavaer.springbootstudy.pojo.User;  
importorg.springframework.stereotype.Controller;  
importorg.springframework.web.bind.annotation.RequestMapping;  
importorg.springframework.web.bind.annotation.ResponseBody;  
importorg.springframework.web.bind.annotation.RestController;  
  
importjava.util.Date;  
  

\* 用户控制器  
\*  
\* @author javaHuang  
\* 公众号:【ToBeTopJavaer】  
\* @create 03 28, 2020  
\* @Version 1.0.0  
\*/  
//@Controller  
@RestController //@RestController = @Controller+@ResponseBody  
@RequestMapping("/user")  
publicclassUserController{  
   @RequestMapping("/getUser")  
//   @ResponseBody  
   publicUsergetUser(){  
       Useru\=newUser();  
       u.setName("javaHuang");  
       u.setAge(18);  
       u.setPassword("javaHuang");  
       u.setBirthDay(newDate());  
       returnu;  
  }  
}

SpringMVC和SpringBoot的写法差别也不大,只是将RestController注解替代了Controller和ResponseBody。

总结:

今天是我们《SpringBoot从菜鸟到老鸟》系列的第一篇,内容简单,便于吸收,后续会持续输出有料的干货,希望大家有钱的也不要捧个钱场,有钱没钱点个赞,给我写下去的动力。

谢谢大家。


TopJavaer
291 声望64 粉丝