当前位置:首页 > Java

java 如何存储数据

2026-03-24 21:08:02Java

存储数据到文件

使用 FileOutputStreamFileInputStream 实现二进制文件的读写。

// 写入数据
try (FileOutputStream fos = new FileOutputStream("data.bin")) {
    fos.write("Hello, World!".getBytes());
}

// 读取数据
try (FileInputStream fis = new FileInputStream("data.bin")) {
    byte[] buffer = new byte[1024];
    int bytesRead = fis.read(buffer);
    System.out.println(new String(buffer, 0, bytesRead));
}

使用序列化存储对象

实现 Serializable 接口,通过 ObjectOutputStreamObjectInputStream 存储和读取对象。

class Person implements Serializable {
    String name;
    int age;
}

// 序列化对象
try (ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("person.ser"))) {
    oos.writeObject(new Person("Alice", 30));
}

// 反序列化对象
try (ObjectInputStream ois = new ObjectInputStream(new FileInputStream("person.ser"))) {
    Person person = (Person) ois.readObject();
    System.out.println(person.name);
}

数据库存储(JDBC)

通过 JDBC 连接数据库(如 MySQL)存储数据。

String url = "jdbc:mysql://localhost:3306/mydb";
String user = "root";
String password = "password";

try (Connection conn = DriverManager.getConnection(url, user, password)) {
    // 插入数据
    String sql = "INSERT INTO users (name, age) VALUES (?, ?)";
    try (PreparedStatement pstmt = conn.prepareStatement(sql)) {
        pstmt.setString(1, "Bob");
        pstmt.setInt(2, 25);
        pstmt.executeUpdate();
    }

    // 查询数据
    sql = "SELECT * FROM users";
    try (Statement stmt = conn.createStatement();
         ResultSet rs = stmt.executeQuery(sql)) {
        while (rs.next()) {
            System.out.println(rs.getString("name"));
        }
    }
}

使用 NoSQL 数据库

通过 MongoDB 的 Java 驱动存储数据。

MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017");
MongoDatabase database = mongoClient.getDatabase("test");
MongoCollection<Document> collection = database.getCollection("users");

// 插入文档
Document doc = new Document("name", "Charlie").append("age", 28);
collection.insertOne(doc);

// 查询文档
Document query = new Document("name", "Charlie");
FindIterable<Document> result = collection.find(query);
for (Document d : result) {
    System.out.println(d.toJson());
}

使用缓存(Redis)

通过 Jedis 客户端连接 Redis 存储键值对。

java 如何存储数据

Jedis jedis = new Jedis("localhost");
jedis.set("key", "value");
String value = jedis.get("key");
System.out.println(value);
jedis.close();

标签: 数据java
分享给朋友:

相关文章

java如何

java如何

Java 基础语法 Java 是一种面向对象的编程语言,语法相对严谨。每个 Java 程序必须包含一个 main 方法作为程序入口。以下是一个简单的 Java 程序示例: public class…

java如何编译

java如何编译

编译Java程序的基本步骤 安装JDK(Java Development Kit)并配置环境变量。确保javac和java命令可在命令行中运行。JDK是编译和运行Java程序的必备工具。 创建Jav…

java如何编程

java如何编程

Java编程基础 Java是一种面向对象的编程语言,广泛应用于企业级开发、移动应用(Android)等领域。以下是Java编程的核心步骤和示例。 环境搭建 安装JDK 从Oracle官网下载适合…

java如何产生随机数

java如何产生随机数

使用 Math.random() 方法 Math.random() 生成一个范围在 [0.0, 1.0) 的伪随机 double 值。通过缩放和偏移可以生成指定范围的随机数。 double ra…

react如何接收数据

react如何接收数据

React 接收数据的方法 React 中接收数据的方式有多种,根据数据来源和场景的不同,可以选择适合的方法。以下是常见的几种方式: Props 传递数据 父组件通过 props 向子组件传递数据,…

vue实现数据滚动

vue实现数据滚动

Vue 实现数据滚动的方法 使用 CSS 动画实现滚动 通过 CSS 的 animation 和 @keyframes 实现滚动效果。适用于简单的文字或列表滚动。 <template>…