I would to read application.properties using @Value
.
app.properties
JDBC_DRIVER =com.mysql.cj.jdbc.Driver
DB_URL =jdbc:mysql://127.0.0.1:3306/vetobooks?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
USER =root
PASS =a
main
package com.example.java_spring_java_example;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;
@SpringBootApplication
public class main {
public static void main(String[] args) {
ConfigurableApplicationContext context = SpringApplication.run(main.class, args);
context.getBean(JDBCMysql.class);
}
}
JDBCMysql
package com.example.java_spring_java_example;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Component
public class JDBCMysql {
@Value("${JDBC_DRIVER}")
public String JDBC_DRIVE;
@Value("${USER}")
public String USER;
@Value("${PASS}")
public String PASS;
@Value("${DB_URL}")
public String DB_URL;
public void loadValue() {
System.out.println(DB_URL+"-"+ USER+"-"+ PASS+"...");
}
}
I get null-null-null as a result. How can I get the real values?