Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从属性源读取数据库属性不工作_Java_Mysql_Spring Boot_Properties - Fatal编程技术网

Java 从属性源读取数据库属性不工作

Java 从属性源读取数据库属性不工作,java,mysql,spring-boot,properties,Java,Mysql,Spring Boot,Properties,我想从application.property文件读取数据库属性值,但无法读取 我试着从自定义属性文件中读取属性,但不起作用。我不想硬编码的属性,因为它将在不同的服务器不同 @Configuration @PropertySource("application.properties") public class DatabaseUtils { @Value("${mysql.drive}") private static String MY_SQL_DRIVER; @

我想从application.property文件读取数据库属性值,但无法读取

我试着从自定义属性文件中读取属性,但不起作用。我不想硬编码的属性,因为它将在不同的服务器不同

@Configuration
@PropertySource("application.properties")
public class DatabaseUtils {

    @Value("${mysql.drive}")
    private static String MY_SQL_DRIVER;

    @Value("${mysql.url}")
    private static String MY_SQL_URL;

    @Value("${mysql.username}")
    private static String DATABASE_USERNAME;

    @Value("${mysql.password}")
    private static String DATABASE_PASSWORD;

    public DatabaseUtils () {

    }

    @Bean
     public static PropertySourcesPlaceholderConfigurer placeHolderConfigurer() {
      return new PropertySourcesPlaceholderConfigurer();
     }

    public static ResultSet executeDBQuery(String query) {
        try {

            Class.forName(MY_SQL_DRIVER);
            Connection connection = DriverManager.getConnection(MY_SQL_URL, DATABASE_USERNAME, DATABASE_PASSWORD);

            Statement statement = connection.createStatement();
            ResultSet resultSet = statement.executeQuery(query);
            return resultSet;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }

    }
}


(properties file)
# database
databaseDriver=com.mysql.jdbc.Driver
databaseUrl=jdbc:mysql://localhost:3306/school
databaseUsername=root
databasePassword=root

I am new to spring-boot so getting a little confused as to why its not working, read a lot of online sources and tried them but didnt work, not sure what I am missing. Any help will be appreciated.

属性文件中的属性与@Value.for中给出的属性不同。例如,属性键是databaseDriver,但代码中给出的是mysql.drive

 @Value("${mysql.drive}")
 private static String MY_SQL_DRIVER;
但应该是这样

@Value("${databaseDriver}")
 private static String MY_SQL_DRIVER;

属性文件中的属性与@Value.for中给出的属性不同。例如,属性键是databaseDriver,但代码中给出的是mysql.drive

 @Value("${mysql.drive}")
 private static String MY_SQL_DRIVER;
但应该是这样

@Value("${databaseDriver}")
 private static String MY_SQL_DRIVER;

基本上,您在属性文件中定义的属性应该在应用程序权限中引用。在这里,您将属性定义为databaseDriver

   databaseDriver=com.mysql.jdbc.Driver
然后在代码中,您还应该询问“databaseDriver”


基本上,您在属性文件中定义的属性应该在应用程序权限中引用。在这里,您将属性定义为databaseDriver

   databaseDriver=com.mysql.jdbc.Driver
然后在代码中,您还应该询问“databaseDriver”


@PropertySource(“application.properties”)不是必需的。您给了错误的占位符@Value@rakcity您的问题解决了吗?@PropertySource(“application.properties”)不是必需的。您给了错误的占位符@Value@rakcity你的问题解决了吗?