Spring为了解决企业级应用开发的复杂性而创建,简化开发。
Spring如何简化开发?
1.基于POJO的轻量级和最小入侵性
2.通过IOC,依赖注入(DI)和面向接口实现松耦合。
3.基于切面(AOP)和管理进行声明式编程。
4.通过切面和模板(template)减少样式代码
什么是SpringBoot?
http://xxxx.do风格最开始属于Struts2框架的遗留风格。
可能的新服务架构:【服务网格】
约定大于配置
java企业级应用->J2EE->spring->springBoot的过程。
maven整合jar包,springboot整合所有框架。
springBoot的优点
1.为所有Spring开发者更快的入门
2.开箱即用,提供各种默认配置来简化项目配置
3.内嵌式容器简化Web项目
4.没有冗余代码生成和XML配置的要求
程序=数据结构 + 算法(程序员)
程序=面向对象 + 框架(码农)
微服务
什么是微服务
微服务是一种架构风格。当一个业务或者模块:service比如userService随着业务扩大,一台电脑放不下时,就需要独立出一个模块放到单独的电脑中。将业务拆分成模块。把独立出来的功能元素的动态组合。
高内聚、低耦合。
SpringBoot build anything。
SpringCloud coordinate anything
SpringCloud Data Flow connect anything
通信方式:http、rpc
第一个SpringBoot程序
官方:提供了一个快速生产的网站!IDEA集成了这个网站。
第一种在Spring官网快速开始。
其中GA表示最新版,SNAPSHOT表示快照版本,不推荐使用。
点击overview,以及页面尾部的Spring Initializr
其他的一些选项就按照正常流程走,其中要选择依赖。一般情况选择Spring Web即可,Tomcat等都会自动配置好。
点击生成,下载即可生成。
下载完解压导入IDEA即可。
第二种通过IDEA自动集成的创建SpringBoot项目。
创建新项目。
选择Spring Initializr,其中的默认网址就是springBoot创建项目的官网。
剩下的步骤其实官网的选择一致。选择对应的配置。
选择对应的依赖。
将多余的文件删掉,其实和普通的maven项目一样。
两种创建SpringBoot项目的方式更推荐第二种,直接通过IDEA创建。
hello world
其中DemoApplication是SpringBoot的主程序入口。
DemoApplicationTests是SpringBoot的单元测试。
application.properties是SpringBoot的配置文件。
其中controller、dao、pojo、service这些层的包必须都在DemoApplication的同级目录下才能生效.
启动项目,在页面中输入配置好的地址就能够访问该方法。
真的要比SSM简化太多太多。
但是我发现在成熟的项目里有多个文件夹,只有其中一个具有appliction,记录当做问题疑惑。
正常开发中一般在类名前也会配置一个总路径,各个方法有不同的路径指向。
对于刚创建的pom.xml的各个解释