— spring — 1 min read
在软件开发中存在大量的配置信息,通常传统做法是将其写成配置文件。比如基于javaweb的web.xml
配置项。当项目发展到一定的规模的时候,大量的配置文件会让我们管理,并且会感到有那么的一些重。
随着springboot的流行,基于注解的开发已经越发的体现出它的优雅和易用。在spring3
的时候已经支持大量的注解了,到后面的基于注解开发的形式也越发强大。
以maven
搭建的spring
工程为例,在项目中添加一个数据源依赖:
1<dependency>2 <groupId>com.alibaba</groupId>3 <artifactId>druid</artifactId>4 <version>1.1.21</version>5 </dependency>
在资源文件目录下新建jdbc.properties
配置文件,添加数据源信息:
1jdbc.driverClassName=com.mysql.jdbc.Driver2jdbc.url=jdbc:mysql://localhost:3306/community?useUnicode=true&characterEncoding=utf83jdbc.username=root4jdbc.password=123456
使用注解的方式配置数据库连接池信息:
1@Configuration2@PropertySource("classpath:jdbc.properties")3public class JDBCConfiguarion {45 @Value("${jdbc.driverClassName}")6 private String driverClassName;7 @Value("${jdbc.url}")8 private String url;9 @Value("${jdbc.username}")10 private String username;11 @Value("${jdbc.password}")12 private String password;1314 @Bean15 public DruidDataSource dataSource(){16 DruidDataSource dataSource = new DruidDataSource();17 dataSource.setDriverClassName(driverClassName);18 dataSource.setUrl(url);19 dataSource.setUsername(username);20 dataSource.setPassword(password);21 return dataSource;22 }23}
在项目中注入数据源并已debug
形式查看dataSource
的值,如果发现配置中加载了数据库信息则注入成功:
1@RestController2public class DataSourceController {34 @Autowired5 private DataSource dataSource;67 @GetMapping("hello")8 public String datasource(){9 try {10 Connection connection = dataSource.getConnection();11 } catch (SQLException e) {12 e.printStackTrace();13 }14 return "hello";15 }1617}