1.1 SpringBoot简介
① 为所有Spring 开发提供一个更快更广泛的人门体验。
② 零配置。无冗余代码生成和XML 强制配置,遵循“约定大于配置” 。
③ 集成了大量常用的第三方库的配置, Spring Boot 应用为这些第三方库提供了几乎可以零配置的开箱即用的能力。
④)提供一系列大型项目常用的非功能性特征,如嵌入式服务器、安全性、度量、运行状况检查、外部化配置等。
1.2 Spring Boot 不是Spring 的替代者
Spring 框架是通过IOC 机制来管理Bean 的。Spring Boot 依赖Spring 框架来管理对象的依赖。
Spring Boot 并不是Spring 的精简版本,而是为使用Spring 做好各种产品级准备。
简单的说,平常我们开发一个项目就好比组装一台电脑主机,需要我们自己购买各式各样的配件,最后把它们组装在一起。而Spring Boot 就好比是厂商帮我们组装好的品牌机电脑,各种常用的配件都帮我们封装好了,并且提供了许多的接口,只要我们想增加某个配件,或者修改某个配件的版本,只要跟他讲一下名称,都不需要我们自己去购买,他就会把配件送上门并且帮你装好,用springboot就是这么轻松!
1.3 Spring Boot 2 新特性
目前Spring Boot 已经开发到了2.0.2版本 ,而我们之后的项目案例也是基于springboot2来开发的。
Spring Boot 2 基于最新的Java 8 和Spring Framework 5 ,这意味着Spring Boot 2 拥有构建现代应用的能力。
( 1 )基于Java 8 的反射增强, Spring Framework 5.0 中的方法参数可以更加高效地进行访问。
( 2 )接口提供基于Java 8 的默认方法构建的选择性声明。
( 3 )支持候选组件索引作为类路径扫描的替代方案。
( 4 )当然,最为重要的是, 此次Spring Framework 5.0 推出了新的响应式堆钱WEB 框架。
相应地, Spring Boot 2 会集成最新的技术枝,包括Spring Data 、Spring Security 、Spring Integration 、Spring AMQP, Spring Session 、Spring Batch 等都做了更新,其他的第三方依赖也会尝试使用最新的版本。
毫无疑问,Spring Boot 是一种趋势,同时我们在使用spring boot 的同时也在使用着其它新的技术框架。
2.1 开启我们的第一个springboot项目。
正如Spring Boot 所承诺的那样,使用Spring Boot 可以最大化减少项目的配置, 真正做到开箱即用。现在就来给大家演示一下,如何创建第一个Spring Boot 项目。快速创建一个springboot项目有许多方法,包括官方推荐的,下面我只用intellij IDEA来演示,如何开始第一个hello word项目。
1.创建一个新项目,spring Initializr
![4e66702f8adfc1427ce5ca4320e6f27a.png](https://i-blog.csdnimg.cn/blog_migrate/4b337e19d3119834a2fa8b41893dc548.png)
![459201acbe7494e091360e990530037c.png](https://i-blog.csdnimg.cn/blog_migrate/207c6cdce73f40216894eebe5e36a8d8.png)
因为这里只是简单的输出一个HelloWorld而已,所以勾选一个web就够了
![fc7a8b845466301c2f1d665a41d548f9.png](https://i-blog.csdnimg.cn/blog_migrate/2d39ced5734822fa845b618e998c35a6.png)
基本目录结构
![ea63f24f141acada50ca19a4eae323c3.png](https://i-blog.csdnimg.cn/blog_migrate/9b613b67df556c852756ed089fed02ad.png)
打开HelloworldApplication.java观察
![20ac6b9635d231cfc887e48dce3d2d21.png](https://i-blog.csdnimg.cn/blog_migrate/71b0969627615573e2e030cbc2db6782.png)
可以看到,Spring Boot 提供了一个@SpringBootApplication 注解。
@SpringBootApplication = (默认属性的) @Configuration + @EnableAutoCon:figuration + @ComponentScan
( 而: ① : @Configuration:经常与@Bean 组合使用,使用这两个注解就可以创建一个简单的Spring 配置类, 可以用来替代相应的XML 配置文件。
② : @@EnableAutoCon:figuration :能够自动配置Spring 的上下文,猜测和配置用户想要的Bean类。
③ : @ComponentScan : 会自动扫描指定包下的全部标有@Component 的类, 并注册成Bean,包括子注解@Service 、@Repository 、@Controller。这些Bean 一般是结合@Autowired 构造函数来注入。)
而下面的main 方法是一个标准的Java 方法,main 方法通过调用Run,将业务委托给了Spring Boot 的SpringApplication 类。SpringApplication将引导用户的应用启动并相应地启动被自动配置的Tomcat Web 服务器。
3. 编写控制器HelloController.java
1.0 在helloworld文件夹下新建一个controller包,然后创建HelloController.java
![3c4488bd190d15de7a2bd817440a2398.png](https://i-blog.csdnimg.cn/blog_migrate/30f878e8792d6171c1b8854e72f846aa.png)
代码如下
@RestController
其中:@RestController = @Controller + @ResponseBody
而@ResponseBody : 该注解用于将Controller 的方法返回对象, 通过适当的HttpMessageConverter转换为指定格式后,写入Response对象的body数据区。
@Controller 不用解释了
另外:@RequestMapping :用来处理请求地址映射的注解,可用于类或方法上。也可以写作 GetMapping 、PostMapping、PutMapping 、DeleteMapping 、PatchMapping。这些在后面的文章我们在详细说明。
启动程序,在HelloworldApplication上右键 然后Run HelloworldApplication(注意不是HelloController)
![f99163267cf399dcedadbe0d4850c946.png](https://i-blog.csdnimg.cn/blog_migrate/c2cb953e91f260ed55fbead00b07a475.png)
启动成功,默认端口8080,这个可以在application.properties中修改
![2ed08f8140231209644fd7c90582ec01.png](https://i-blog.csdnimg.cn/blog_migrate/216e9dbd53afc954b296fd0cba553862.png)
打开浏览器,输入localhost:8080/helloworld
![32227bcb168fa410a24c6154d70b3a20.png](https://i-blog.csdnimg.cn/blog_migrate/4d315f049bb5871b9a29233749aa2add.png)
成功,到这里最简单的一个web功能就实现了,在后面的文章中讲详细的讲解springboot的一个功能,然后根据springboot开发一个项目,记录一下在使用中的一些体会,也方便自己以后回顾。
另外提一点,有的时候常常出现端口被占用,很有可能是之前的其他项目没有正常关闭,这时候打开任务管理器,把java.exe关掉再重新启动就行了。
————————————————
版权声明:本文为CSDN博主「渡西湖」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/xwd718/article/details/80640357