首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Java 入門專案:無資料庫人事管理系統,使用 IO 流持久化物件

     編輯:程式設計疑難解答

架構設計

// 1. 實體類別實作 Serializable
class Employee implements Serializable {
    private int id; String name; double salary;
    // getter/setter, toString
}

// 2. 資料存取層
class EmployeeDAO {
    private static final String FILE = "employees.dat";
    public void saveAll(List list) {
        try (ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(FILE))) {
            oos.writeObject(list);
        }
    }
    @SuppressWarnings("unchecked")
    public List loadAll() {
        File f = new File(FILE);
        if (!f.exists()) return new ArrayList<>();
        try (ObjectInputStream ois = new ObjectInputStream(new FileInputStream(FILE))) {
            return (List) ois.readObject();
        }
    }
}

// 3. 主程式選單
while (true) {
    // 1.新增 2.查詢 3.修改 4.刪除 5.退出
    // 操作 List 並即時 saveAll()
}

優缺點

優點缺點
零依賴、極簡部署無法高效查詢(全量載入)、無交易支援、並發不安全

進階建議

  • 改用 SQLite (JDBC) 或 H2 內嵌資料庫,獲得 SQL 查詢能力。
  • 或使用 Jackson 序列化為 JSON,可讀性更好。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved