springboot整合jdbc-@PropertySource注解读取配置文件
-
创建表
CREATE TABLE `users` ( `userid` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(30) DEFAULT NULL, `usersex` varchar(10) DEFAULT NULL, PRIMARY KEY (`userid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
创建springboot项目
-
修改pom文件
<!--thymeleaf启动器--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <!--jdbc启动器--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <!--数据库驱动--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.20</version> </dependency> <!--druid数据源--> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.12</version> </dependency>
-
创建配置文件(resources/jdbc.properties)
jdbc.driverClassName=com.mysql.cj.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC jdbc.username=root jdbc.password=123456
-
创建配置类
//数据源的jdbc配置类 @Configuration @PropertySource("classpath:/jdbc.properties") //加载指定的配置文件 public class JdbcConfiguration { @Value("${jdbc.driverClassName}") private String driverClassName; @Value("${jdbc.url}") private String url; @Value("${jdbc.username}") private String username; @Value("${jdbc.password}") private String password; //实例化druid @Bean public DataSource getDataSource(){ DruidDataSource source = new DruidDataSource(); source.setDriverClassName(this.driverClassName); source.setUrl(this.url); source.setUsername(this.username); source.setPassword(this.password); return source; } }
-
测试(controller/UsersController)
@Controller public class UsersController { @Autowired private DataSource dataSource; @GetMapping("/showInfo") public String showInfo(){ return "ok"; } }
在return打断点,debug启动springboot,查看debugger信息