# 简易银行管理系统 这是一个使用 Java Swing 构建的简单银行账户管理系统。 ## 功能 * **账户管理**: * 开户:创建一个新的银行账户,系统会自动生成唯一的账户ID。 * 销户:删除一个现有账户。只有当账户余额为零时才能成功销户。 * 查询:根据账户ID查询账户的详细信息,包括账户持有人姓名和当前余额。 * **资金管理**: * 存款:向指定账户存入金额。 * 取款:从指定账户取出金额,账户余额必须充足。 * 转账:在两个指定账户之间转移金额,源账户余额必须充足。 ## 使用方式 1. 运行 `BankSystem.java` 文件启动应用程序。 2. **开户**: * 点击“开户”按钮。 * 在弹出的对话框中输入账户持有人姓名。 * 系统会提示账户创建成功,并显示新生成的账户ID。 3. **查询账户**: * 在“账户号”输入框中输入要查询的账户ID。 * 点击“查询”按钮。 * 如果账户存在,其姓名和余额将显示在相应的不可编辑字段中。 4. **存款**: * 首先查询一个账户或在“账户号”输入框中输入账户ID。 * 点击“存款”按钮。 * 在弹出的对话框中输入存款金额。 * 操作成功后,账户余额会自动更新(如果当前查询的是该账户)。 5. **取款**: * 首先查询一个账户或在“账户号”输入框中输入账户ID。 * 点击“取款”按钮。 * 在弹出的对话框中输入取款金额。 * 操作成功后,账户余额会自动更新(如果当前查询的是该账户)。 6. **转账**: * 首先查询源账户或在“账户号”输入框中输入源账户ID。 * 点击“转账”按钮。 * 在弹出的第一个对话框中输入目标账户ID。 * 在弹出的第二个对话框中输入转账金额。 * 操作成功后,源账户余额会自动更新(如果当前查询的是源账户)。 7. **销户**: * 首先查询一个账户或在“账户号”输入框中输入要销户的账户ID。 * 点击“销户”按钮。 * 系统会要求确认操作。 * 只有当账户余额为零时,销户才能成功。成功后,界面上的账户信息字段将被清空。 ## 数据存储 所有账户数据都存储在项目根目录下的 `accounts.json` 文件中。每个账户对象包含以下键: ```json [ { "accountId": "ACC16228383922", "name": "张三", "balance": 1000.50 }, { "accountId": "ACC16228383950", "name": "李四", "balance": 500.00 } ] ``` * `accountId`: (String) 唯一的账户标识符。 * `name`: (String) 账户持有人的姓名。 * `balance`: (double) 账户的当前余额。 ## 技术栈 * Java * Swing (用于GUI) * Gson (用于JSON数据处理)