JAVA module-info.java文件

Java9

module-info.java

module 本模块的名称{

	exports 对外暴露的包路径;
	
	requires 需要依赖的其他模块名称;
	
}
  • module-info.java不是类,不是接口,是一些模块描述信息。module也不是关键字。
  • exports 对外暴露的包路径;
    有些包你想要其他模块访问,有些包你不想要其他模块访问。
    有哪些包,你想要被其他模块访问的,这些包的名字就写在exports后面。
    就像import一样,但是不是导入,是导出。
  • requires 需要依赖的其他模块名称;
    本模块需要关联、依赖的其他模块,就把其他模块名称写在后面。
    只有一个模块不用写,java.base
//module mod.a中有:
//packet.abc.one
//和
//packet.abc.two

module mod.a{
	exports packet.abc.one;
}

module mod.b{
	requires mod.a; //模块b依赖模块a
	//b可使用a的one包
}

命名推荐使用完全英文小写,不要数字减号。

假设你的项目是一个多模块的Maven项目,其中一个模块包含了`application-druid.yml`文件,而你需要在另一个模块的Java代码中获取该文件中的数据库连接信息。 可以使用Spring Boot的`YamlPropertySourceLoader`类来加载YAML文件并转换为Java对象,然后再从Java对象中获取所需的属性值。 以下是示例代码: ```java import org.springframework.boot.env.YamlPropertySourceLoader; import org.springframework.core.env.PropertySource; import org.springframework.core.io.ClassPathResource; import java.io.IOException; import java.util.Map; public class DatabaseConfig { private String url; private String username; private String password; public DatabaseConfig() throws IOException { YamlPropertySourceLoader loader = new YamlPropertySourceLoader(); ClassPathResource resource = new ClassPathResource("application-druid.yml"); PropertySource<?> propertySource = loader.load("database", resource); Map<String, Object> properties = (Map<String, Object>) propertySource.getSource(); Map<String, Object> dataSourceProperties = (Map<String, Object>) properties.get("spring.datasource"); this.url = (String) dataSourceProperties.get("url"); this.username = (String) dataSourceProperties.get("username"); this.password = (String) dataSourceProperties.get("password"); } public String getUrl() { return url; } public String getUsername() { return username; } public String getPassword() { return password; } } ``` 在上述代码中,我们首先使用`YamlPropertySourceLoader`加载`application-druid.yml`文件,然后从加载后的属性源中获取`spring.datasource`的属性值,最后将属性值分别赋值给`url`、`username`和`password`变量。 你可以在需要使用数据库连接信息的地方实例化`DatabaseConfig`类,然后通过调用其`getUrl()`、`getUsername()`和`getPassword()`方法获取相应的属性值。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值