自己写的一个的注解,使用方便简洁^_^
源码地址:https://github.com/bigBigRiver/MyConfiguration.git
config.properties文件
userName=engineerdong
password=123456
配置文件对应的实体类
import com.river.boot.annotation.MyConfiguration;
import lombok.Data;
import org.springframework.stereotype.Component;
@Data
@Component
@MyConfiguration(value = "/config.properties")
public class MyConfig {
private String userName;
private String password;
}
测试类:
@Slf4j
@SpringBootTest
class BootApplicationTests {
@Autowired
MyConfig myConfig;
@Test
void logSomething() {
log.info(myConfig.getUserName() + ":" + myConfig.getPassword());
}
}
打印:
com.river.boot.BootApplicationTests 2020年01月10日 22:56:58 -- engineerdong:123456
注解类:
/**
* @author river
* 2020/1/10
*/
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface MyConfiguration {
String value() default "application.properties";
}
注解类处理类(springboot):
import com.river.boot.annotation.MyConfiguration;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeansException;
import org.springframework.boot.CommandLineRunner;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
import java.io.InputStream;
import