1、描述springboot
1、springboot是一个开发微服务的框架
springboot应用程序开发中(根据开发的先后顺序,描述springboot的特点)
2、打包方式:打包方式是jar包
3、无需xml配置,只有一个application.properties属性文件
4、可以通过在pom.xml中添加相应依赖,从而对主流框架的无配置集成
5、通过在pom.xml添加与第三方框架的启动器(starter),从而达到自动配置
6、他是一个C/S的桌面应用程序,通过main方法启动容器
7、每个springboot应用程序内嵌了一个tomcat容器,可以通过application.properties文件配置容器的端口
启动容器后,容器自动扫描应用程序中的注解,并将应用部署到内嵌的tomcat容器中
总结:从以下几个方面描述springboot的特点
打包方式:
无需xml配置,只有一个application.proties属性文件
pom依赖:
starter :自动配置:
桌面应用:
内嵌容器:
2、springboot应用与传统单体应用的比较
传统单体应用
1、需要配置大量的xml文件
2、web应用只能打成war包,
3、且web应用要部署到tomcat等容器上
4、是B/S架构的应用
3、springboot中使用的注解
启动器中:
1、@SpringBBootApplication
这是springboot的核心注解,同时也是一个组合注解
2、@SpringBootApplication由以下三个注解组成
@SpringBootConfiguration :
与@Configuration作用一样,表示其标示的类是IOC容器的配置类
@EnableAutoConfiguration
用于将所有符合自动配置的bean加载到springboot创建并使用的容器中
@ComponentScan
用于自动扫描和加载符合条件的bean,并加载到IOC容器中
3、@MapperScan
用于指定扫描mybatis中的mapper所在的包
配置类中:
1、@Configuration
标示其所在的类时IOC容器的配置类
2、@ConfigurationProperties
表示其所在的类是一个配置属性类,会被配置类注入
3、@Bean
在使用@Configuration的类中,用在方法上,相当于在xml文件中配置bean
测试类中:
1、@RunWith(SpringJunit4ClassRunner.class): 指定在spring的环境下测试
2、@SpringBootTest(App.class)
自动配置类中:
1、@ConditionalOnClass
2、@ConditionalOnBean
3、@EnableConfigurationProperties
4、@AutoConfigureAfter
4、springboot开发微服务与dubbo开发微服务的比较
开发微服务的两个框架,dubbo和springboot
dubbo是基于RPC的远程方法调用
2、由注册方,提供者,消费者三者组成
注册方用于提供者注册服务,管理服务
消费者通过注册中心查询服务,通过远程代理接口,进行远程方法调用,执行提供者的服务
3、使用xml进行数据交互
4、使用soap (Simple Object Access Protocol)协议,是比http低层的协议,性能会比restful风格的服务好一点
5、客户端需要引用服务端的代理实例
6、应用于同构应用的场景中
7、通过业务接口发布服务
springboot基于restful风格的服务
1、使用json进行数据交互
2、使用http协议
3、不需要在客户端应用服务端的代理实例
4、通过controller发布资源数据
5、资源由唯一的uri标识,客户端通过http的get,post,put,delete等不同的操作,来区分对某一个资源的增删改查