ATM柜员机模拟系统-代码_第1页
ATM柜员机模拟系统-代码_第2页
已阅读5页,还剩4页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.-.优选.优选-Win.javapublic class Win e*tends JFrame implements ActionListener JTe*tField te*t=new JTe*tField6;JTe*tArea show=new JTe*tArea(9,30);JTable table;/标签utton insert,update,select,delete,C,Q;Win() setLayout(new FlowLayout(); for(int i=0;i5;i+) te*ti=new JTe*tField(10);add(new JLabel(卡号:);add(te

2、*t0);add(new JLabel(*:);add(te*t1);add(new JLabel(密码:);add(te*t2);add(new JLabel(余额:);add(te*t3);add(new JLabel(序号:);add(te*t4);C=new utton(存款); C.addActionListener(this);add(C);Q=new utton(取款); Q.addActionListener(this);add(Q);update=new utton(修改密码);update.addActionListener(this);add(update);insert

3、=new utton(添加新用户);insert.addActionListener(this);add(insert);select=new utton(查询用户信息);select.addActionListener(this); add(select);delete=new utton(删除用户信息);delete.addActionListener(this); add(delete);add(new JScrollPane(show);add(new JLabel(提示:11005000元,支取金额不允许透支);add(new JLabel(2.存款金额不能为负存款);add(new

4、 JLabel(366况);setVisible(true); setDefaultCloseOperation(JFrame.E*IT_ON_CLOSE);public void actionPerformed(ActionEvent e) Operation modify=new Operation();modify.setDatasourceName(*);if(e.getSource()=insert)modify.setSQL(INSERT INTO * VALUES (+te*t4.getTe*t()+,+te*t0.getTe*t()+,+te*t1.getTe*t()+,+te

5、* t2.getTe*t()+,+te*t3.getTe*t()+);String backMess=modify.modifyRecord();show.append(添加新用户+backMess);else if(e.getSource()=C)Connection con=null;Statement sql; ResultSet rs = null;trydouble n=2000; con=DriverManager.getConnection(jdbc:odbc:*,); con.setAutomit(false);sql=con.createStatement();rs=sql.

6、e*ecuteQuery(SELECT * FROM * WHERE=123456);/查询rs.ne*t();double money=rs.getDouble(5);double money1=money+n;sql.e*ecuteUpdate/存款*额(UPDATE * SET 余额=+money1+ WHERE 卡号=123456); /存款后更con.mit();con.setAutomit(true); /提交事务结果到数据库sql=con.createStatement();/创立数据库操作对象catch(SQLE*ception e1)try con.rollback(); /

7、假如操作失败则完毕事务catch(SQLE*ception e*p)else if(e.getSource()=Q)Connection con=null;Statement sql; ResultSet rs = null;trydouble n=5000; con=DriverManager.getConnection(jdbc:odbc:*,); con.setAutomit(false);sql=con.createStatement();rs=sql.e*ecuteQuery(SELECT * FROM * WHERE=123456);rs.ne*t();double money=r

8、s.getDouble(5);double money2=money-n;sql.e*ecuteUpdate/取款*额(UPDATE * SET 余额=+money2+ WHERE 卡号=123456); /取款后更con.mit(); con.setAutomit(true); sql=con.createStatement();catch(SQLE*ception e1)try con.rollback(); catch(SQLE*ception e*p)else if(e.getSource()=update)modify.setSQL(UPDATE * SET *.密码 =+te*t2

9、.getTe*t()+WHERE (*.卡号)=+te*t0.getTe*t()+););String backMess=modify.modifyRecord();show.append(修改密码+backMess);else if(e.getSource()=delete)modify.setSQL(DELETE * FROM * WHERE (*.卡号)=+te*t0.getTe*t()+););String backMess=modify.modifyRecord();show.append(删除用户信息+backMess);else if(e.getSource()=select)Q

10、uery query =new Query(); query.setDatasoureName(*);query.setTableName(*);Object a=query.getRecord();String b=序号,卡号,*,密码,余额;table=new JTable(a,b);JFrame frame=new JFrame(); frame.add(new JScrollPane(table);frame.setVisible(true); frame.setBounds(400,400,600,200);public void setBounds(int i, int j, in

11、t k, int l) Operation.javapublic class OperationString datasourceName=;/数据源名称String SQL,message=;/表名public Operation()/增删改的主代码catch(E*ception e)public void setSQL(String SQL)/建立一个新的数据源 this.SQL=SQL; public void setDatasourceName(String s)datasourceName=s.trim(); public String modifyRecord()Connectio

12、n con=null;Statement sql=null;try String uri=jdbc:odbc:+datasourceName;String id=;String password=; con=DriverManager.getConnection(uri,id,password); sql=con.createStatement();sql.e*ecute(SQL); message=操作成功;con.close();catch(SQLE*ception e) message=e.toString(); return message;/*数据源读取初始化*/public voi

13、d setTableName(String string) /表名public Object getRecord() /存放操作结果数组 return null; Query.javapublic class QueryStringdatasourceName=; /数据源名String tableName=;/表名Object a;public Query()catch(ClassNotFoundE*ceptione)public void setDatasoureName(String s)datasourceName=s.trim(); public void setTableName(

14、String s) tableName=s.trim();public Object getRecord() /猎取表中记录Connection con;PreparedStatement sql; /预处理命令ResultSet rs;/结果集tryString uri=jdbc:odbc:+datasourceName;String number=;String password=;con=DriverManager.getConnection(uri,number,password);接/初始化连DatabaseMetaData metadata=con.getMetaData();/g

15、etMetaData()方法返回一个DatabaseMetaDataResultSet rs1=metadata.getColumns(null,null,tableName,null);/将表中的字段信息以行列的形式存储在Result 中int 字段个数=0;while(rs1.ne*t() 字段个数+; int n=getAmount();a=new Objectn字段个数;sql=con.prepareStatement(SELECT * FROM +tableName);rs=sql.e*ecuteQuery();int m=0;while(rs.ne*t()/输出结果集中的数据for

16、(int k=1;k=字段个数;k+)amk-1=rs.getString(k);m+;con.close();/查询表名catch(SQLE*ception e)return a;public int getAmount()Connection con;Statement sql; ResultSet rs; tryString uri=jdbc:odbc:+datasourceName;String id=;String password=; con=DriverManager.getConnection(uri,id,password);sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_RE AD_ONLY);/以只读方式滚动查询rs=sql.e*ecuteQuery(SELECT * FROM +tableName);行/猎取所在r

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论