热门文章
怎么在Spring\SpringBoot中配置连接数据库?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
设置jdbc.properties
jdbc.driverClassName=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://127.0.0.1:3306/SSMjdbc.username=rootjdbc.password=root
创建配置类
@Configuration//声明该类是一个java配置类,相当于一个xml配置文件@PropertySource("classpath:jdbc.properties")//读取资源文件publicclassJdbcConfiguration{@Value("${jdbc.driverClassName}")privateStringdriverClassName;@Value("${jdbc.url}")privateStringurl;@Value("${jdbc.username}")privateStringusername;@Value("${jdbc.password}")privateStringpassword;@Bean//将返回值注入到IOC容器中publicDataSourcedataSource(){DruidDataSourcedataSource=newDruidDataSource();//设置连接数据库的四大参数dataSource.setDriverClassName(this.driverClassName);dataSource.setUrl(this.url);dataSource.setUsername(this.username);dataSource.setPassword(this.password);returndataSource;}}
设置application.properties
jdbc.driverClassName=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://127.0.0.1:3306/SSMjdbc.username=rootjdbc.password=root
创建配置类-JdbcProperties
/***@Author:Promsing*@Date:2021/5/30-15:41*@Description:封装了读取出来的配置文件*@version:1.0*/@ConfigurationProperties(prefix="jdbc")publicclassJdbcProperties{privateStringdriverClassName;privateStringurl;privateStringusername;privateStringpassword;publicvoidsetDriverClassName(StringdriverClassName){this.driverClassName=driverClassName;}publicvoidsetUrl(Stringurl){this.url=url;}publicvoidsetUsername(Stringusername){this.username=username;}publicvoidsetPassword(Stringpassword){this.password=password;}publicStringgetDriverClassName(){returndriverClassName;}publicStringgetUrl(){returnurl;}publicStringgetUsername(){returnusername;}publicStringgetPassword(){returnpassword;}}
创建配置类-JdbcConfiguration
/***@Author:Promsing*@Date:2021/5/30-14:52*@Description:连接数据库的Java配置类*@version:1.0*/@Configuration//声明该类是一个java配置类,相当于一个西xml配置文件@EnableConfigurationProperties(JdbcProperties.class)//加载JDBC的配置类publicclassJdbcConfiguration{@AutowiredprivateJdbcPropertiesjdbcProperties;//方式一@Bean//将返回值注入到IOC容器中publicDataSourcedataSource(){DruidDataSourcedataSource=newDruidDataSource();//设置连接数据库的四大参数dataSource.setDriverClassName(this.jdbcProperties.getDriverClassName());dataSource.setUrl(this.jdbcProperties.getUrl());dataSource.setUsername(this.jdbcProperties.getUsername());dataSource.setPassword(this.jdbcProperties.getPassword());returndataSource;}/*//方式二:最优雅最简单--直接换掉方式一@Bean//将返回值注入到IOC容器中@ConfigurationProperties(prefix="jdbc")publicDataSourcedataSource(){DruidDataSourcedataSource=newDruidDataSource();returndataSource;}**//*//方式三通过构造函数注入--在方式一上的方式修改publicJdbcConfiguration(JdbcPropertiesjdbcProperties){this.jdbcProperties=jdbcProperties;}**//*//方式四通过方法的参数注入--直接换掉方式一publicDataSourcedataSource(dbcPropertiesjdbcProperties){DruidDataSourcedataSource=newDruidDataSource();//设置连接数据库的四大参数dataSource.setDriverClassName(jdbcProperties.getDriverClassName());dataSource.setUrl(jdbcProperties.getUrl());dataSource.setUsername(jdbcProperties.getUsername());dataSource.setPassword(jdbcProperties.getPassword());returndataSource;//}**/}
1. Autowired注入
2.直接在@Bean方法中使用@ConfigurationProperties(prefix = "jdbc")
3.构造函数主语
4.@Bean方法形参注入
需要注意的是配置文件中的名称要与JdbcProperties中的属性名称要一致。项目开发过程中第二种最优雅最简洁,但是我们最常用的还是第一种,这一种更符合我们的开发习惯,书写习惯。
Debug方式启动,以上几种方式都能给DruidDataSource赋值。
关于怎么在Spring\SpringBoot中配置连接数据库问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。