Spring使用注解开发

springboot Sep 22, 2018

在软件开发中存在大量的配置信息,通常传统做法是将其写成配置文件。比如基于javaweb的web.xml配置项。当项目发展到一定的规模的时候,大量的配置文件会让我们管理,并且会感到有那么的一些重。

随着springboot的流行,基于注解的开发已经越发的体现出它的优雅和易用。在spring3的时候已经支持大量的注解了,到后面的基于注解开发的形式也越发强大。

maven搭建的spring工程为例,在项目中添加一个数据源依赖:

   <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.21</version>
        </dependency>

在资源文件目录下新建jdbc.properties配置文件,添加数据源信息:

jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/community?useUnicode=true&characterEncoding=utf8
jdbc.username=root
jdbc.password=123456

使用注解的方式配置数据库连接池信息:

@Configuration
@PropertySource("classpath:jdbc.properties")
public class JDBCConfiguarion {

    @Value("${jdbc.driverClassName}")
    private String driverClassName;
    @Value("${jdbc.url}")
    private String url;
    @Value("${jdbc.username}")
    private String username;
    @Value("${jdbc.password}")
    private String password;

    @Bean
    public DruidDataSource dataSource(){
        DruidDataSource dataSource = new DruidDataSource();
        dataSource.setDriverClassName(driverClassName);
        dataSource.setUrl(url);
        dataSource.setUsername(username);
        dataSource.setPassword(password);
        return dataSource;
    }
}

在项目中注入数据源并已debug形式查看dataSource的值,如果发现配置中加载了数据库信息则注入成功:

@RestController
public class DataSourceController {

    @Autowired
    private DataSource dataSource;

    @GetMapping("hello")
    public String datasource(){
        try {
            Connection connection = dataSource.getConnection();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return "hello";
    }

}

标签

毛俊

探索,热爱,分享。

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.