一步到位springboot 01:Hello Springboot!

Charlotte ·
更新时间:2024-09-21
· 615 次阅读

前言

为什么你学了n遍《1天精通springboot》,至今还是不精通springboot,甚至还是停留在学生项目?真正要做项目就应该一步到胃,半吊子半桶水是不行的。一个实战项目需要充分考虑状态码异常处理日志处理性能监控数据安全部署等等因素,而不是急于求成,为了达到1天精通的目标而糊弄过去。本专题的对象是后端小白,目标是搭建一套完善的Springboot后端框架,不至于项目跑起来,分分钟解体
在这里插入图片描述

码云地址:https://gitee.com/chaitou/leilema.git

Hello world

俗话说,hello world生万物!

一、创建项目

傻瓜式创建,真真是傻瓜式,就一路next…
创建springboot
填写项目名称添加maven依赖

二、添加Web依赖

稍等片刻以后,等项目加载成功后,添加依赖。

org.springframework.boot spring-boot-starter-web

添加依赖
这里详细讲下spring-boot-starter-web这个依赖。springboot的项目往往以xxxx-starter命名,springboot之所以受欢迎便是因为其约定大于配置的思想,默认的帮我们做了很多事情,而这便是其中一个例子。
web-starter
可以看到我们引入一个spring-boot-starter-web,而实际上springboot就帮我们引入了spring-webmvctomcat等等包。方便了开发人员又是找包,又是适配版本,还得配tomcat的苦恼

三、编写第一个controller

controller层为控制层,主要处理外部请求。调用service层,将service层返回的PO转化为DTO/VO并封装成统一返回对象返回给调用方

这里就不多累赘了,就是前后端交互的控制器,这里写一个最简单的hello world,前端用get请求,后端接收到请求后返回hello world。小白的话先抄把,后面有专门的文章讲controller

@RestController public class HelloWorldController { @GetMapping("/hello") public String helloWorld() { return "hello springboot!"; } }

第一个controller
强调一下@Controller@RestController有什么区别(初小白可以先跳过):
@Controller是用来标识当前类是controller类的,spring扫描到这种类时便会建立handle,当前端请求过来时调用匹配的handle。那么@RestController又是什么呢?进去看一下@RestController的源码

@Target({ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Documented @Controller @ResponseBody public @interface RestController { @AliasFor( annotation = Controller.class ) String value() default ""; }

可以看出,其实@RestController = @Controller + @ResponseBody

@responseBody注解将controller的方法返回的数据写入到response对象的body区。
也就是说@Controller返回的可能是视图也可能是数据。但是@RestController则一定是数据,并且自动的写入到responsebody中。

由于我们搭建的目标是Restful风格的纯后端项目,所有与前端的交互都通过json,至于视图的跳转控制,完全由前端实现,后端不关心。所以项目的所有controller,都将使用@RestController进行注解

四、启动项目

启动springboot
访问

总结

是不是很简单?比起spring mvc项目,还得配tomcat等等环境,springboot可以说是简单多了。要想实战一个项目,首先我们得有个项目!没有项目?那就new一个项目。下一节介绍一下将要完成的项目目标,以及如何拉取github上的完整项目,更好的进行学习


作者:bugpool



boot ng pr spring springboot gb

需要 登录 后方可回复, 如果你还没有账号请 注册新账号