Spring Boot框架。或许从命名上就能看出这个框架的设计初衷:快速的启动Spring应用。
因而Spring Boot应用本质上就是一个基于Spring框架的应用
自动配置、起步依赖、Actuator、命令行界面(CLI)
什么是Spring Boot
Spring Boot其设计目的是用来简化 Spring 应用的初始搭建以及开发过程。
Spring Boot 的目标不在于为已解决的问题域提供新的解决方案,而是为平台带来另一种开发体验,从而简化对这些已有技术的使用。
Spring Boot 充分利用了 JavaConfig 的配置模式以及“约定优于配置”的理念,能够极大的简化基于 Spring MVC 的 Web 应用和 REST 服务开发。
对于已经熟悉 Spring 生态系统的开发人员来说,Spring Boot 是一个很理想的选择。
为什么选择Spring Boot
- Spring Boot 使编码变简单
- Spring Boot 使配置变简单
- Spring Boot 使部署变简单
- Spring Boot 使监控变简单
1..Spring3.x到Spring4.x
从Spring3.x开始提供了Java配置方式,使用Java配置方式可以更好的理解你配置的Bean,现在我们就处于这个时代,并且Spring4.x和Spring boot都推荐使用java配置的方式
2. Spring的Java配置方式
Java配置是Spring4.x推荐的配置方式,可以完全替代xml配置
2.1、@Configuration 和 @Bean
Spring的Java配置方式是通过 @Configuration 和 @Bean 这两个注解实现的:
1、@Configuration 作用于类上,相当于一个xml配置文件;
2、@Bean 作用于方法上,相当于xml配置中的<bean>;
* 该示例演示了通过Java配置的方式进行配置Spring,并且实现了Spring IOC功能
编写SpringConfig 用于实例化Spring容器
@Configuration //通过该注解来表明该类是一个Spring的配置,相当于一个xml文件
@ComponentScan(basePackages = "cn.itcast.springboot.javaconfig") //配置扫描包
public class SpringConfig
{ @Bean // 通过该注解来表明是一个Bean对象,相当于xml中的<bean>
public UserDAO getUserDAO(){
return new UserDAO(); // 直接new对象做演示
}
}复制代码
编写测试方法 用于启动Spring容器
public class Main {复制代码
public static void main(String[] args) {
// 通过Java配置来实例化Spring容器
AnnotationConfigApplicationContext context = new
AnnotationConfigApplicationContext(SpringConfig.class);复制代码
// 在Spring容器中获取Bean对象
UserService userService = context.getBean(UserService.class);复制代码
// 调用对象中的方法
List<User> list = userService.queryUserList();
for (User user : list) {
System.out.println(user.getUsername() + ", " + user.getPassword()
+ ", " + user.getPassword()); }
复制代码
// 销毁该容器
context.destroy(); }
}
复制代码
测试效果
小结
从以上的示例中可以看出,使用Java代码就完美的替代xml配置文件,并且结构更加的清晰