我想从application.properties文件中定义的键中读取整数值。这是我的属性文件。
spring.rabbitmq.port=31111
代码如下:
public Object getPortProperty() {
Properties properties = new Properties();
try {
File file = ResourceUtils.getFile("classpath:application.properties");
InputStream in = new FileInputStream(file);
properties.load(in);
} catch (IOException e) {
}
return (Integer) properties.get("spring.rabbitmq.port");
}
@Autowired
public UnitAmqpRestController(RabbitTemplate rabbitTemplate) throws IOException, TimeoutException {
this.rabbitTemplate = rabbitTemplate;
rabbitTemplate.setReplyTimeout(15_000L);
ConnectionFactory factory = new ConnectionFactory();
factory.setHost(getHostProperty());
factory.setPort((Integer) getPortProperty());
connection = factory.newConnection();
channel = connection.createChannel();
}
代码有问题的行是:
factory.setPort((Integer) getPortProperty());
您的代码抛出了NullPointerException
,而您有一个空的Catch
块。至少,您应该在那里添加一些日志来查看发生了什么。
而且,您使用的是Spring,应该很少需要手动解析application.properties
;它会自动加载到应用程序环境中。
因此您可以使用@value
将其绑定到一个局部变量(主机属性与此相同):
@Value("${spring.rabbitmq.port}")
private int mqPort;
@Value("${spring.rabbitmq.host}")
private String mqHost;
@Autowired
public UnitAmqpRestController(RabbitTemplate rabbitTemplate) throws IOException, TimeoutException {
this.rabbitTemplate = rabbitTemplate;
rabbitTemplate.setReplyTimeout(15_000L);
ConnectionFactory factory = new ConnectionFactory();
factory.setHost(mqHost);
factory.setPort(mqPort);
connection = factory.newConnection();
channel = connection.createChannel();
}
我有一个java代码可以将这些值追加到我的属性文件中 我的属性文件将有如下条目。 key1=主机、端口、orcl、用户名、密码 key2=主机、端口、orcl、用户名、密码 key3=主机、端口、orcl、用户名、密码等… 这些key1、key2和key3是连接名。 在进入属性文件之前,首先我必须检查该文件是否提供了连接名条目。我的意思是,如果用户再次使用key1或key2或key3连接名输入值,
我试图从Woocommerce的Wordpress网站上获取产品数据。我使用下面的代码获取特定类别产品的名称和缩略图。 这在获取“工具”类别中产品的名称和图像方面效果很好,但我想获取每个产品的权重。 产品重量在WordPress仪表板中设置为产品属性。 如何获取产品的这些数据?我似乎找不到访问这些的功能。
问题内容: 我从属性文件中获取了int,float,boolean和string。一切都已加载到属性中。目前,我正在解析值,因为我知道特定键的期望值。 设置这些常量值的更好方法是什么,如果我不知道什么可能是键的原始值数据类型。 属性文件。messassge.properties Constant.java 问题答案: 如果您拥有一类配置值(例如您的类),并且想要从配置(属性)文件中加载所有值,则可
我昨天让它工作,然后我做了一些事情,现在我一直试图修复它几个小时,我只是无法让它工作了。 我有一个包含
我在数据库中具有与数据库连接相关的属性。xml文件。我想在一个表中使用相同的值。属性文件。是否可以从中获取值。xml文件,并设置为。财产? --谢谢 使用loadFromXML时发生异常 线程“main”java中出现异常。util。InvalidPropertiesFormatException:组织。xml。萨克斯。SAXException:无效的系统标识符:http://www.hibern