流练习:银行系统练习

阅读: 评论:0

流练习:银行系统练习

流练习:银行系统练习

银行系统练习
  • TestMain

    public class TestMain {public static void main(String[] args) {// 实现一个银行业务系统// 要求有如下功能// 1.登录// 2.开户// 3.查询余额//// 记录银行用户信息//       账号--密码--余额// 分析://  User类:javaBean jopo//  Dao 缓存:直接操作数据库 模型层//  BankSystemE 银行系统继承类:用于实现单例模式 ,初始化缓存数据//  Atm类 : 逻辑处理 //  我是用户Atm atm = new Atm();atm.window();}
    }
    
  • User

    public class User {private String userName;private String pwd;private String balance;public User(String userName, String pwd, String balance) {this.userName = userName;this.pwd = pwd;this.balance = balance;}public String getUserName() {return userName;}public void setUserName(String userName) {this.userName = userName;}public String getPwd() {return pwd;}public void setPwd(String pwd) {this.pwd = pwd;}public String getBalance() {return balance;}public void setBalance(String balance) {this.balance = balance;}
    }
    
  • Dao

    import java.io.*;
    import java.util.HashMap;
    import java.util.Set;public class Dao {// 缓存机制private HashMap<String,User> dbs = new HashMap<>();FileReader fr = null;BufferedReader br = null;// 初始化数据库{try {fr = new FileReader("/Users/macos/");br = new BufferedReader(fr);String line = br.readLine();while(line != null){String name = line.split("-")[0];String pwd = line.split("-")[1];String balance = line.split("-")[2];User user = new User(name,pwd,balance);dbs.put(name,user);line = br.readLine();}} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {try {if(br != null){br.close();}} catch (IOException e) {e.printStackTrace();}try {if(fr != null){fr.close();}} catch (IOException e) {e.printStackTrace();}}}// 登录public boolean login(String name,String pwd){User user = (name);if(user != null){ // 说明存在用户名Pwd().equals(pwd)){return true;}return false;}return false;}// 注册public boolean register(String name,String pwd){User user = (name);if(user == null){ // 说明不存在用户名User newUser = new User(name,pwd,"0");dbs.put(name,newUser);return true;}// 用户名存在return false;}// 查询余额:应该是登陆成功之后public String getBalance(String name){User user = (name);Balance();}// 写入数据库public boolean closeDbs(){FileWriter fw = null;BufferedWriter bw = null;try {fw = new FileWriter("/Users/macos/");bw = new BufferedWriter(fw);Set<String> userNmaes = this.dbs.keySet();for (String userName : userNmaes) {User user = (userName);bw.UserName()+"-"&#Pwd()+"-"&#Balance());bw.newLine();}} catch (IOException e) {e.printStackTrace();} finally {try {if(bw != null){bw.close();}} catch (IOException e) {e.printStackTrace();}try {if(fw != null){fw.close();}} catch (IOException e) {e.printStackTrace();}}return true;}public static void main(String[] args) {Dao d = new Dao();System.out.println(d.dbs);}
    }
    
  • BankSystemE

    public class BankSystemE extends BankSystem{// 用于做银行系统的单例模式: 所以实现BankSystemprivate BankSystemE(){}private static BankSystemE  bankSystemE= null;// 在系统中初始化所有的数据,供所有的atm 使用public static BankSystemE getInstance(){// 懒汉式if(bankSystemE == null){bankSystemE = new BankSystemE();}return bankSystemE;}private Dao dbs = new Dao();public Dao getDbs() {return dbs;}public void setDbs(Dao dbs) {this.dbs = dbs;}}
    
  • Atm

    import java.util.HashMap;
    import java.util.Scanner;public class Atm{// 初始化数据,获取bs方法private BankSystemE bs = Instance();private Dao dao = null;public Atm(){this.dao = bs.getDbs();}// 记录登录状态private String userName = null;// 键盘输入private Scanner scanner = new Scanner(System.in);// 登录功能private void login() {System.out.println("请输入用户名:");String userName = Line();System.out.println("请输入密码:");String pwd = Line();boolean isLogin = dao.login(userName, pwd);if(isLogin){this.userName = userName;System.out.println("登陆成功");return;}System.out.println("登录失败");}// 开户功能private void openCounter() {if(this.userName != null){// 说明现在已登录System.out.println("请先退出登录");return;}System.out.println("请输入用户名:");String userName = Line();System.out.println("请输入密码:");String pwd = Line();boolean register = ister(userName, pwd);if(register){System.out.println("开户成功");return;}System.out.println("开户失败");}// 查询余额功能private void getBalance() {if(this.userName != null){ // 说明登陆成功呢String balance = Balance(this.userName);System.out.println("你的账户余额为   "+balance);return;}System.out.println("请先登录");}// 主窗口public void window(){Scanner scanner = new Scanner(System.in);while(true){System.out.println("1.登录");System.out.println("2.开户");System.out.println("3.查询余额");System.out.println("4.退出登录");System.out.println("0.退出");System.out.println("     请输入操作:");int i = Int();if(i == 1){this.login();}else if(i == 2){this.openCounter();}else if(i == 3){Balance();}else if(i == 4){this.userName = null;}else if(i == 0){System.out.println("退出");// 最重要的一步,写入所欲数据this.dao.closeDbs();break;}else{System.out.println("你的输入有误");}}}
    }
    

本文发布于:2024-02-02 16:22:29,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170686214844984.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

下一篇:dbs:apple
标签:银行   系统
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23