校园卡掌上管理系统编码与测试报告第十组由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“xx管理系统测试报告”。
校园卡掌上管理系统
----编码与测试报告
制作人:
曹 静 崔 文
傅小江 李国明
1、编码
1.1部分代码
1.1.1数据库实施阶段任务
(1)建立数据库(校园卡管理系统)
create database campuscard;⑵建立数据表
1)用户信息表的建立
Create table tb_admin(Id int(10)not null primary key,username varchar(32)
not null,paword varchar(32)
not null,type smallint(1)not null,createdate
date not null);
2)校园卡信息表的建立
create table tb_card(Id int(10)not null primary key,Stuid varchar(10)
not null,cardid varchar(13)
not null,paword varchar(32)
not null,balance double(5)not null,status int(1)not null,createdate
date not null);3)消费信息表的建立
Create table tb_consumption(Id int(10)not null primary key,cardid varchar(13)
not null,money doublae(5)
not null,addre varchar(32)not null,createdate
date not null);
4)转账信息表的建立
Create table tb_recharge(Id int(10)not null primary key,cardid varchar(13)
not null,money doublae(5)
not null,createdate
date not null);
5)学生信息表的建立
Create table tb_student(Id int(10)not null primary key, Stuid varchar(10)not null, Name varchar(32)not null,cardid varchar(18)
not null,bankcard varchar(19)not null,createdate
date not null);
1.1.2实体类
CardUsers类源代码 package userGUI;public cla CardUsers { public String UserID;//用户编号 public String UserName;//用户名; public String UserSex;public String UserPwd;public String UserType;public CardUsers(String UserID){ this.UserID = UserID;}
public CardUsers(String UserID, String UserName, String UserSex, String UserPwd, String UserType)throws PwdShortException { if(UserPwd.length()
public String getUserID(){ return UserID;}
public void setUserID(String UserID){ this.UserID = UserID;}
public String getUserName(){ return UserName;}
public void setUserName(String UserName){ this.UserName = UserName;}
public String getUserPwd(){ return UserPwd;} public void setUserPwd(String UserPwd)throws PwdShortException { if(UserPwd.length()
public String getUserSdx(){ return UserSex;}
public void setUserSdx(String UserSdx){ this.UserSex = UserSex;}
public String getUserType(){ return UserType;}
public void setUserType(String UserType){ this.UserType = UserType;}
@Override public String toString(){ return “用户编号=” + UserID + “, 姓名=” + UserName + “, 性别=” + UserSex + “, 密码=” + UserPwd + “, 身份=” + UserType;} }
CardUseRecords类源代码 package operationGUI;
public cla CardUseRecords { private long CardNo;private String UseItems;private double money;private String UseTime;
public CardUseRecords(long cardNo, String item, double money, String time){ this.CardNo = cardNo;this.UseItems = item;this.money = money;this.UseTime = time;} public long getCardNo(){ return CardNo;}
public String getUseItems(){ return UseItems;}
public String getUseTime(){ return UseTime;}
public double getMoney(){ return money;}
@Override public String toString(){ return “卡号=” + CardNo + “, 名目=” + UseItems + “, 费用=” + money + “, 时间=” + UseTime;} }
SchoolCard类源代码 package cardGUI;import javax.swing.JOptionPane;public cla SchoolCard { public int cardNo;//卡号
static int NextCardNo=111003200;//起始卡号 private String UserID;//卡所属的用户编号 private String paword;private double balance;private boolean isUsing;
public SchoolCard(){ this.cardNo=NextCardNo++;} public SchoolCard(String UserID, String paword){ this();this.UserID = UserID;this.paword = paword;this.balance=0;this.isUsing=true;} public static void setNextCardNo(int newStartNo){//设置起始卡号 SchoolCard.NextCardNo = newStartNo;} public int getCardNo(){ return cardNo;} public String getUserID(){//差卡的用户号 return UserID;} public void setUserID(String uid){//设置卡的用户号 this.UserID = uid;} public double getBalance(){//查询余额 return balance;} public String getPaword(){ return paword;} public void setPaword(String upwd)throws UseStateException{ if(check())this.paword = upwd;else throw(new UseStateException());} public void deposit(double money)throws UseStateException{ if(check())this.balance=balance+money;else throw(new UseStateException());} public void consume(double money)throws UseStateException{ if(check()){ if(this.balance>=money)this.balance=balance-money;else JOptionPane.showMeageDialog(null,“卡上余额不够消费,请先充值!”);} else throw(new UseStateException());} public boolean getCardState(){ return isUsing;} public void setState(boolean state){ this.isUsing = state;} public boolean check(){ if(this.isUsing)return true;else return false;} @Override public String toString(){ return “卡号=” + cardNo + “, 用户号=” + UserID + “, 密码=” + paword + “, 余额=” + balance + “, 是否可用=” + isUsing;}
1.1.3实现数据库连接
package operationGUI;import java.sql.*;public cla DBAcce { private Connection conn=null;private Statement stmt=null;public ResultSet rs=null;private PreparedStatement prestmt=null;private String driver=“sun.jdbc.odbc.JdbcOdbcDriver”;private String url=“jdbc:odbc:CardConn”;//自定义数据源名 private String user=“jane”;private String pwd=“123456”;public String notes=“数据库操作提示”;//实例方法:实现数据库连接 public void dbconn(){ try{ Cla.forName(driver);conn=DriverManager.getConnection(url, user, pwd);stmt=conn.createStatement();} catch(ClaNotFoundException ec){ System.out.println(ec);} catch(SQLException es){ System.out.println(es);} catch(Exception ex){ System.out.println(ex);} } //实现数据库查询并返回查询记录
public ResultSet dbSelect(String selString){ try{ rs=stmt.executeQuery(selString);} catch(SQLException es){ System.out.println(es);notes=“数据库查询出现异常”;} return rs;} //数据库更新
public String dbUpdate(String updateString){ try{ prestmt=conn.prepareStatement(updateString);prestmt.executeUpdate();notes=“记录更新成功”;} catch(SQLException es){ System.out.println(es);notes=“数据库更新出现异常”;} return notes;} //插入数据
public String dbinsert(String insertString){ try{ prestmt=conn.prepareStatement(insertString);prestmt.executeUpdate();notes=“插入记录成功”;} catch(SQLException es){ System.out.println(es);notes=“数据库插入出现异常”;} return notes;} //删除
public String dbDelete(String delString){ try{ prestmt=conn.prepareStatement(delString);prestmt.executeUpdate();notes=“删除成功”;} catch(SQLException es){ System.out.println(es);notes=“数据库删除现异常”;} return notes;} //关闭数据库
public void dbclose(){ if(conn!=null){ try{ rs.close();stmt.close();conn.close();} catch(Exception e){} } } } 1.2 系统主界面的截图。
校园卡管理界面
校园卡管理主要功能是对校园卡信息进行查询,开户销户等功能的操作。
图1登录界面
1.3系统部分功能界面的截图。
图2 个人信息查询界面
图3 修改密码界面
图4 开户界面
图5销户界面
图6 丢失界面
图7 补办界面
图8 校园卡信息查询界面
2、测试
2.1测试分析 用户登录界面
//确定按钮代码
private void jBtnOKActionPerformed(java.awt.event.ActionEvent evt){ if(jRadioButtonp.isSelected())chtype=“普通用户”;else chtype=“管理员”;db.dbconn();sql=“select * from CardUsers”;db.dbSelect(sql);try { while(db.rs.next()){System.out.println(“b”);//如果用户号,密码,身份相符
if(txtUID.getText().equals(db.rs.getString(“UserID”))&& String.valueOf(txtPWD.getPaword()).equals(db.rs.getString(“UserPwd”))&& chtype.equals(db.rs.getString(“UserType”))){ //显示用户名,并新建当前用户对象,存储有关信息。currentuser=new CardUsers(txtUID.getText());currentuser.UserPwd= String.valueOf(txtPWD.getPaword());currentuser.UserID=txtUID.getText();currentuser.UserType=chtype;currentuser.UserName=db.rs.getString(“UserName”);jlbnote.setText(“欢迎你:”+currentuser.UserName+“!”);System.out.println(“b”);new SchoolCardMainGUI(currentuser).setVisible(true);System.out.println(“c”);//主界面
this.dispose();db.dbclose();} else jlbnote.setText(“账号,密码,身份不符,请检查输入信息是否正确!”);} } catch(SQLException e){ System.err.print(e.toString());} db.dbclose();}
主界面
用户信息录入界面
//添加用户代码
private void jbtnAddActionPerformed(java.awt.event.ActionEvent evt){ try { Connection con=DriverManager.getConnection(“jdbc:odbc:CardConn”,“jane”,“123456”);java.sql.Statement sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);ResultSet rs=sql.executeQuery(“SELECT * FROM CardUsers”);while(rs.next()){ if(rs.getString(1).equals(jtxtUserID.getText())){ break;} } if(rs.isAfterLast()==false){ JOptionPane.showMeageDialog(this,“已经添加此用户!”);} else{ m.removeAllElements();CheckValiddate ck=new CheckValiddate(jtxtUserID);if(ck.check(0)){ String uid=jtxtUserID.getText();String uname=jtxtUserName.getText();String upwd=jtxtPwd.getText();try{ user=new CardUsers(uid,uname,usex,upwd,utype);//userlist.add(user);m=new DefaultListModel();} catch(PwdShortException e){} userlist.add(user);for(int j=0;j
修改密码
//确定按钮响应事件代码
private void jbtnOKActionPerformed(java.awt.event.ActionEvent evt){ CheckValiddate ck=new CheckValiddate(txtPwdnew);if(ck.check(0)&& txtPwdnew.getText().length()>=6){ if(txtPwdnew.getText().equals(txtPwdNA.getText())){ db.dbconn();String sql=“update CardUsers set UserPwd='”+txtPwdnew.getText()+“'where UserID='”+currentuser.UserID+“'”;db.dbUpdate(sql);db.dbclose();jlbnote.setText(“修改密码成功!”);// JOptionPane.showMeageDialog(this, “chenggong”, “tishi”,JOptionPane.WARNING_MESSAGE);} else jlbnote.setText(“两次输入密码不一致!”);} }
2.2黑盒测试
void mima(){ char a[7],b[]={“533159”};int i,j;for(j=1;j
2.3白盒测试
void dljm(){ char i;//“定义一个全局变量” printf(“nn”);M: system(“cls”);//按任意键继续。printf(“nn”);printf(“tt◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆n”);printf(“tt************************************************n”);printf(“tt*******※欢迎进入校园卡管理系统功能界面※*******n”);printf(“tt************************************************n”);printf(“tt◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆n”);printf(“nnnn”);//mima();printf(“ttt→←→←→←→←→←→←→←→←→←→n”);printf(“ttt←→←→A 校园卡信息添加系统 ←→←→n”);printf(“ttt→←→←→←→←→←→←→←→←→←→n”);printf(“ttt←→←→B 校园卡信息删除系统 ←→←→n”);printf(“ttt→←→←→←→←→←→←→←→←→←→n”);printf(“ttt←→←→C 校园卡信息查找系统 ←→←→n”);printf(“ttt→←→←→←→←→←→←→←→←→←→n”);printf(“ttt←→←→D 校园卡信息修改系统 ←→←→n”);printf(“ttt→←→←→←→←→←→←→←→←→←→n”);printf(“ttt←→←→E 校园卡信息求值系统 ←→←→n”);printf(“ttt→←→←→←→←→←→←→←→←→←→n”);printf(“nnn”);printf(“tt请输入所需功能的对应字母n”);i=getchar();switch(i)//开关控制语句 { case 'A':zjsj();goto M;break;//“利用case语句进行选择所要执行的内容,break语句进行跳转。
case 'B':scsj();goto M;break;case 'C':czsj();goto M;break;case 'D':xgsj();goto M;break;case 'E':jspx();goto M;break;} } 具体截图操作功能如下:
目录一、前言二、消费者群体分析1、大学生的消费心理分析2、大学生的消费心理分析三、市场分析四、产品分析1、产品介绍2、产品分类五、营销策略分析六、网上服务分析七、店......
第十一章 创新与创新管理一、填空1.维持和创新是管理的基本内容,有效的管理在于______与________的组合.2.从创新的规模以及创新对系统的影响程度来考虑,可将其分为____和__......
第十一章 商业银行中间业务与管理一、名词解释1、国际结算:以货币收付来清偿国与国之间债权债务及实现资金转移的行为就是国际结算(international settlement)。国际结算不是......
购物中心运营与购物中心管理系统第八期作者:邱浩 本文旨在阐明在全新的商业竞争中,购物中心经营者到底想要什么,以及购物中心系统供应商到底要给客户什么,才能支撑国内购物中心......
电子商务系统建设与管理一、电子商务概念广义:是指通过电子信息技术、网络互联技术和现代通信技术使得商业交易涉及的各方当事人借助电子方式联系,而无需依靠纸面文件完成单据......