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配置文件,并且结构更加的清晰