java如何存储数据
数据存储方法
内存存储 使用变量或数据结构(如数组、集合)临时保存数据,程序结束后数据消失。适合快速访问但无需持久化的场景。
int number = 10;
List<String> list = new ArrayList<>();
文件存储
通过java.io或java.nio包将数据写入文本文件、二进制文件或CSV等格式。适合中小规模持久化数据。
try (BufferedWriter writer = new BufferedWriter(new FileWriter("data.txt"))) {
writer.write("Hello, World!");
}
数据库存储 使用JDBC连接关系型数据库(如MySQL、PostgreSQL)或NoSQL数据库(如MongoDB)。适合结构化数据和高并发场景。
String sql = "INSERT INTO users (name) VALUES (?)";
try (Connection conn = DriverManager.getConnection(url);
PreparedStatement pstmt = conn.prepareStatement(sql)) {
pstmt.setString(1, "Alice");
pstmt.executeUpdate();
}
序列化存储
通过ObjectOutputStream将对象转换为字节流保存到文件。适合Java对象持久化,但需实现Serializable接口。
try (ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("object.dat"))) {
oos.writeObject(myObject);
}
缓存存储
利用HashMap、ConcurrentHashMap或第三方库(如Ehcache、Redis)实现高速临时存储。适合频繁读取的场景。
Map<String, String> cache = new ConcurrentHashMap<>();
cache.put("key", "value");
云存储 通过AWS S3、Google Cloud Storage等API存储数据到云端。适合分布式访问和大文件存储。

AmazonS3 s3Client = AmazonS3ClientBuilder.standard().build();
s3Client.putObject("bucket-name", "key", new File("file.txt"));
选择标准
- 数据量:小数据可用文件或内存,大数据需数据库或云存储
- 持久性:临时数据用内存/缓存,长期保存选文件/数据库
- 访问频率:高频访问建议缓存或内存数据库
- 结构化程度:非结构化数据适合文件或NoSQL






