程序 = 数据结构 + 算法(集成框架) ;程序员
程序 = 面向对象 + 框架 ; 码农
微服务
Springboot学习过程:
- 是什么
- 配置如何编写yaml
- 自动装配原理:重要
- 集成web开发:业务核心
- 集成数据库Druid
- 分布式开发:Dubbo+zookeeper
- Swagger:接口文档
- 任务调度
- Springsecurity :shiro做安全
JavaWeb -> ssh -> ssm
Spring是为了解决企业级应用开发的复杂性而创建的,简化开发。
采用4种关键策略:
1.基于pojo的轻量级和最小侵入型编程。
2.通过ioc,依赖注入(DI)和面向接口实现松耦合。
3.基于切面(AOP)和惯例进行声明式编程。
4.通过切面和模板减少样式代码。
Springboot 就是javaweb的开发框架 和springmvc类似
约定大于配置 默认进行很多配置
微服务架构:
打破 all in one架构
把每个功能独立出来。独立的功能原理动态组合,每个功能可以独立运行。
自动配置:
Pom.xml
Spring-boot-dependencies:核心依赖在浮工程中
写或者引入springboot依赖时不需要指定版本,就因为有这些版本仓库
启动器
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
启动器:springboot的启动场景
如spring-boot-starte-web,帮我们导入web环境的所有依赖
springboot会将所有功能场景,编程一个个的启动器。
我们要使用什么功能,就只需要找到对应的启动器就可以了。
主程序
//@SpringBootApplication :标注这个类是一个springboot的应用
@SpringBootApplication
public class DemoApplication {
//将springboot启动
public static void main(String[] args) {
//通过run方法将springboot应用启动
SpringApplication.run(DemoApplication.class, args);
}
}
拆分注解 (metadata:元数据)
@SpringBootConfiguration : springboot的配置
@Configuraion: spring配置类
@Component:说明这也是一个spring的组件
@EnableAutoConfiguration:自动配置
@AutoConfigurationPackage:自动配置包
@Import({AutoConfigurationPackages.Registrar.class}):自动配置包注册(或者为@Import({Registrar.class}))
@Import({AutoConfigurationImportSelector.class}) :自动配置导入选择