Java学习笔记----Properties(属性)类的使用

注意啦……Properties类要来了

properties这个类是干啥的呢?

之前写了一篇博客,是关于Map的,里面讲了properties是继承HashTable类的,然后HashTable是实现Map接口的。

所以,这个类是和Map键值有关系的。
那么我写段代码来测试一下。

public class PropertiesDemo {
	public static void main(String [] args) {
		Properties properties = new Properties();//创建properties类
		properties.setProperty("username", "蜡笔小新");
		properties.setProperty("password", "123456");
		System.out.println(properties.getProperty("username"));
		System.out.println(properties.getProperty("password"));
	}
}

创建properties类之后,使用以下方法来进行键值对应的操作:

properties.setProperty(String1,Srting2);   向属性类里面输入键和值
properties.getProperty(String1);           通过键来找到相应的值

Properties除了能当Map来使用,properties还能读文件……

黑科技来了,大家注意:
Properties类能从文件中得到键值对应,调用的方法是

propertise.load()    通过这个方法来加载(load)      后缀是.properties的文件

使用这个方法来加载后缀是.properties文件,之后对文件进行加载

在F盘里面的Javalearn文件夹当中写一个txt文件,文件里面写上以下内容
在这里插入图片描述
把这个文件写成 namepassword.properties形式的文件
在这里插入图片描述在这里要提醒大家一下:
我之前试了试,写的人名是汉字的时候,好像读出来的是乱码,so,人名需要写成英文的。还有,要转换成.properties后缀,具体是怎么操作,请大家到百度上去查。

万事俱备,只欠源代码,那么打开文件是怎么操作的呢?
看我敲的代码:

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.*;
import java.util.Properties;

public class PropertiesDemo {
	public static void main(String [] args) 
		throws FileNotFoundException, IOException {
		Properties properties = new Properties();//创建properties类
		properties.load(new FileInputStream("F://Javalearn/namepassword.properties"));
		System.out.println(properties.getProperty("username"));
		System.out.println(properties.getProperty("password"));
	}
}

properties有一个load() 方法,是用来加载文件的,load里面加的对象是文件输入流(写到现在,记住即可,之后的博客当中还会介绍)
文件输入流就是load里面的那个new FileInputStream(文件路径)

关于properties的操作就写到这里吧,我也写不下去了,
但是在最后还要强调一些东西:
Properties操作的时候,依然可以像map一样,使用put和get方法,但是一般时候我们都是使用setProperty和getProperty方法

好了,那么,还是那句话——多多留言,会变有钱,多多点赞,会变好看呐、

在 Kafka 中,Producer 是用来发送消息到 Kafka 集群的组件。在本篇文章中,我们将介绍如何使用 Kafka 的 Java 客户端 API 来编写一个简单的 Producer。 1. 引入 Kafka 依赖 首先,需要在 Maven 或 Gradle 构建中引入 Kafka 客户端依赖: ```xml <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> <version>2.8.0</version> </dependency> ``` 2. 创建 Producer 实例 接下来,在 Java 代码中创建一个 KafkaProducer 实例: ```java Properties props = new Properties(); props.put("bootstrap.servers", "localhost:9092"); props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer"); props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer"); Producer<String, String> producer = new KafkaProducer<>(props); ``` 其中,bootstrap.servers 是必须设置的属性,用于指定 Kafka 集群中至少一个 Broker 的地址。key.serializer 和 value.serializer 用于指定消息的键和值的序列化器。这里我们使用的是 StringSerializer,也可以使用其他序列化器实现自定义序列化逻辑。 3. 发送消息 一旦创建了 KafkaProducer 实例,就可以使用它来发送消息到指定的 Kafka 主题: ```java ProducerRecord<String, String> record = new ProducerRecord<>("test-topic", "key", "value"); producer.send(record); ``` 这里的 ProducerRecord 构造函数中,第一个参数是要发送消息的主题名称,第二个参数是消息的键,第三个参数是消息的值。send() 方法用于将 ProducerRecord 发送到 Kafka 集群。 4. 关闭 Producer 在使用完 Producer 后,需要关闭它以释放资源: ```java producer.close(); ``` 完整代码示例: ```java import org.apache.kafka.clients.producer.*; import java.util.Properties; public class KafkaProducerExample { public static void main(String[] args) { Properties props = new Properties(); props.put("bootstrap.servers", "localhost:9092"); props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer"); props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer"); Producer<String, String> producer = new KafkaProducer<>(props); ProducerRecord<String, String> record = new ProducerRecord<>("test-topic", "key", "value"); producer.send(record); producer.close(); } } ``` 这就是一个简单的 Kafka Producer 的使用示例。在实际应用中,还可以根据需要设置其他属性,例如消息的分区策略、消息的压缩方式等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值