Spring Boot提倡约定优于配置,如何将类的生命周期交给spring
1、第一种自己写的类,Controller,Service。 用@controller @service即可
2、第二种,集成其它框架,比如集成shiro权限框架,集成mybatis分页插件PageHelper,第三方框架的核心类都要交于Spring大管家管理
@Configuration可理解为用spring的时候xml里面的
@Bean可理解为用spring的时候xml里面的
Spring Boot不是spring的加强版,所以@Configuration和@Bean同样可以用在普通的spring项目中,而不是Spring Boot特有的,只是在spring用的时候,注意加上扫包配置
Spring Boot则不需要,主要你保证你的启动Spring Boot main入口,在这些类的上层包就行
就像这样,DemoApplication是启动类,关于启动类的位置放置,在另一篇博客有专门的去分析。
@Configuration和@Bean的Demo类
、、、java
Spring Boot提倡约定优于配置,如何将类的生命周期交给spring
1、第一种自己写的类,Controller,Service。 用@controller @service即可
2、第二种,集成其它框架,比如集成shiro权限框架,集成mybatis分页插件PageHelper,第三方框架的核心类都要交于Spring大管家管理
@Configuration可理解为用spring的时候xml里面的
@Bean可理解为用spring的时候xml里面的
Spring Boot不是spring的加强版,所以@Configuration和@Bean同样可以用在普通的spring项目中,而不是Spring Boot特有的,只是在spring用的时候,注意加上扫包配置
Spring Boot则不需要,主要你保证你的启动Spring Boot main入口,在这些类的上层包就行
就像这样,DemoApplication是启动类,关于启动类的位置放置,在另一篇博客有专门的去分析。
@Configuration和@Bean的Demo类
[java] view plain copy
@Configuration
public class ExampleConfiguration {
@Value("com.mysql.jdbc.Driver")
private String driverClassName;
@Value("jdbc://xxxx.xx.xxx/xx")
private String driverUrl;
@Value("${root}")
private String driverUsername;
@Value("123456")
private String driverPassword;
@Bean(name = "dataSource")
public DataSource dataSource() {
BasicDataSource dataSource = new BasicDataSource();
dataSource.setDriverClassName(driverClassName);
dataSource.setUrl(driverUrl);
dataSource.setUsername(driverUsername);
dataSource.setPassword(driverPassword);
return dataSource;
}
@Bean
public PlatformTransactionManager transactionManager() {
return new DataSourceTransactionManager(dataSource());
}
}
这样,在项目中
@Autowired
private DataSource dataSource;
的时候,这个dataSource就是我们在ExampleConfiguration中配的DataSource
这样,在项目中
@Autowired
private DataSource dataSource;
的时候,这个dataSource就是我们在ExampleConfiguration中配的DataSource