面向对象程序设计实训报告示例.docx
《面向对象程序设计实训报告示例.docx》由会员分享,可在线阅读,更多相关《面向对象程序设计实训报告示例.docx(20页珍藏版)》请在冰豆网上搜索。
面向对象程序设计实训报告示例
面向对象程序设计实训报告
题目:
资费管理系统项目实训
专业及班级:
姓名:
分数:
一、项目描述
近年来, 电信行业经历了很大得变化,包括从固定到移动、从语音到数据、从电路交换到分组交换、从窄带到宽带得变化。
电信运营商在市场与政策得双重影响下,正面临着深刻得重组。
新技术新业务创造了市场机会,使新运营商不断兴起。
老运营商为了保持原有得市场份额也通过兼并改组等方式不断扩大业务范围,争取为客户提供从传统得市话、长话、移动、智能网(3G)到新兴得数据。
用户将来可以在多个运营商提供得多种电信业务中自由选择。
二、设计方案
1、使用得软件工具与环境
(1)Myeclipse
(2)MySQLServer
2、系统功能
(1)登录模块
实现登录功能得数据处理,如果用户名与密码不存在,实现注册功能。
(2)用户管理模块
实现开通账号、用户账号查询、用户列表功能。
其中开通账号查询可以更方便用户得查询,用户可以通过开通账号查询来查取一些相关得信息。
用户列表中具有增加、暂停、修改、与删除等功能。
(3)管理员管理模块
管理员管理模块分为三部分:
增加管理员、管理员列表与私人信息。
增加管理员包括得信息有:
账号、登录密码、重复密码、真实姓名、管理员邮箱、联系电话、登录权限等。
其中登录权限包括:
管理员管理、资费管理、用户管理、账务查询、账单查询。
管理员列表包括得信息:
账号、姓名、电话、邮箱、开户日期、权限、修改与删除。
私人信息包括:
登录密码、重复密码、真实姓名、管理员邮箱、开通日期、联系电话、登录权限,其中登录权限又包括资费管理、账务查询与管理员管理三个级别。
管理员管理模块得需求:
①管理员开通账户管理:
管理用户账号,包括账号开通、暂停(加锁)、恢复、删除等。
②管理员资料管理:
管理员资料,包括姓名、身份证号、地址等。
③管理员信息:
ID、姓名、账号、密码、状态(正常/暂停/关闭)、联系电话、Email、开通日期、停止日期、权限(查询/修改/开户)等。
(4)资费管理模块
完成资费得增、删、改、查功能。
(5)账单管理模块
需求:
整合系统按月生成用户账单。
账单信息(可参考移动或联通得账单管理模块):
①用户标识信息:
账单ID、姓名、账号、状态、联系电话、开通日期、Email。
②账务信息:
账号、日期、登录时间长度、本月费用。
③账单明细:
登录时间、退出时间、时长。
(6)账务管理模块
需求:
按月、年分别生成《月账务信息统计报表》与《年账务信息统计报表》。
月账务信息(可参考移动或联通得账务模块):
①生成一个计费月周期中每一天得账务信息。
②月账务信息:
日期、时长、费用。
③年账务信息(可参考移动或联通得账务模块)。
(7)用户自服务管理模块
需求:
用户通过Internet查询自己得当前或历史账单,并能修改自己得密码或变更相关业务。
用户账务信息查询:
①用户标识信息:
账单ID、姓名、状态、开通日期。
②账务信息:
日期、登录时长、本月费用。
③用户信息修改:
账单明细,如登录时间、退出时间、时长。
三、模块设计
1、登录模块
界面设计:
成员类型
成员名
整体布局:
流式布局
成
员
变
量
JFrame
app
JButton
登录,清除,注册,重新输入,退出
JLabel
用户姓名,用户口令
JTextField
用户名
JPasswordField
用户密码
JDialog
提示
成
员
方
法
监听器相应得处理事件
actionPerformed
流程图:
2、 管理模块
界面设计:
成员类型
成员名
整体布局:
网格布局
成员变量
JButton
用户管理,资费管理,账单管理,账务管理,管理员管理,用户自服务,退出系统;
JPanel
p3
成
员
方
法
监听器相应得处理事件
actionPerformed
流程图:
3、用户管理模块
界面设计:
开
通
账
户
JButton 提交,重设
界面布局:
BorderLayout
JTextField 账务账号,账务密码,重复密码,用户名称,性别选项,用户状态,电子邮箱,联系电话,公司,公司邮箱,邮政编码
JRadioButton男,女,开通,暂停
JboBox付款方式,省份,职业
Stringst1,st2,st3
用
户
管
理
JButton 开通账户,用户列表,查询
界面布局:
BorderLayout()
GridLayout(1,5,30,0)
JTextField账务账号
JPanelp1,p2,p3,p4,p5
JButton[]jb=newJButton[3]
JScrollPanejsp1
Connection con
Statement sql
ResultSetrs
intmessage=0
用户列表
JTablem_view
界面布局:
BorderLayout()
JPanelp1,p2,p3
流程图:
4、资费管理
界面设计:
名称
资费管理
描述
封装了对用户得业务处理
Swing容器
Jpanel,p1,p2,p3;
Swing属性
JButton 添加资费,资费列表;
可激发得事件
actionPerformed(ActionEvent e);
类别
class
事件接听接口
ActionListener
功能描述
完成资费信息得增,删,,改,查功能
流程图:
5、账单管理
界面设计:
名称
账单管理
描述
封装了对用户得业务处理
类别
class
Swing容器
Jpanel,p1,p2,p3,p4;Jtable jt
Swing组件
JButton明细,查询
JTextFiled账务账号
JboBox年,月
JTextAreata
可激发得事件
actionPerformed(ActionEvente),itemStateChanged(ItemEventf)
事件接听接口
ActionListener
功能描述
根据数据库信息查询生成账单
流程图:
6、账务管理
界面设计:
流程图:
7、管理员管理
界面设计:
管
理
员
管
理
JButton
p1,p2,p3
界面布局:
BorderLayout
JPanel
button[]=new JButton[3]
管
理
员
列
表
JButton
button[]=newJButton[3]
界面布局:
BorderLayout
JTable
table1
私
人
信
息
JPanel
p1,p2,p3,p4
JLabel
label1[]=newJLabel[7]
JTextField
tf1,tf2,tf3,tf4
JPasswordField
pf1,pf2
界面布局:
BorderLayout
JButton
button1[]=newJButton[2]
增
加
管
理
员
JPane
p1,p2
界面布局:
BorderLayout
JTextField
textfield[]=newJTextField[6]
JTextField
checkbox1[]=newJCheckBox[5]
JLabel
label1[]=new JLabel[7]
JButton
label2[]=new JLabel[7]
String
提交
流程图:
8、用户自服务
界面设计:
修
改
个
人
信
息
JButton 修改
页面布局:
BorderLayout()
GridLayout(1,5,30,0)
JLabel label1[]=new JLabel[14]
JTextFieldtextfield1[]=newJTextField[6]
String string1[]={"","密码*","重复密码*","姓名*","联系方式*","电子邮箱*","付款方式*","","职业","省份","性别","公司","公司邮箱","邮编"}
JPasswordFieldmima,chongfumima
JRadioButton fukuanfangshi[]=newJRadioButton[3]
JRadioButton男,女
JboBox 省份,职业
String st1,st2,st3,st4,st5,st6,st7,st8,st9,st10
用户自服务
JButtonbutton[]=newJButton[2]
界面布局:
BorderLayout()
JPanel p1,p2,p3
流程图:
四.调试分析
登录模块
注册模块
管理界面
用户管理模块
开通账户模块
用户列表模块
查询模块
资费管理
添加资费
资费列表
账单管理
查询
账务管理
月账务管理
年账务
管理员管理模块
增加管理员
管理员列表
私人信息模块
用户自服务模块
修改个人信息
账单查询
五、心得体会
这次试验主要就就是运用数据库MySQL与MyEclipse进行电信IP自费管理系统得编写。
在进行代码编写得过程中遇到了很多得问题。
做实验老师事先已经把代码发给我们,让我们学着打。
本来写程序、做系统应该就就是设计好界面,想好思想在开始进行代码得编写工作。
我们在打得过程中就就就是在为打代码而打代码,没怎么去思考它得代码,只有每当代码有错之后才会回过头去瞧瞧代码有就就是哪里出得错,出得什么错。
在检查代码出错得时候,也不知道代码为什么这样写,也从没有深究她得原因。
在这次实验过程中又学习了数据库连接,怎么创建数据库,跟着老师做得时候觉得挺麻烦得,很多时候都感觉自己跟不上。
当数据库不小心关闭后或者要修改得时候就要重新建立数据库很有可能还会忘记哪些步骤。
因此还在网上搜索了一下有什么更方便得方法,慢慢尝试着去做。
在这次试验中,我们使用得就就是老师编写好得数据库文档,也不知道知道那个数据库文档怎么写得。
在最开始时,在Myeclipse中连接数据库得时候遇到很多问题。
找不到在哪添加,关于数据库有时添加错误。
在这次实验中我觉得最主要得就就是初步了解了做一个简单得管理系统得程序。
在做得过程中会碰到很多得问题,最主要得就就就是要自己对代码进行思考。
虽然在改错得时候可以让自己明白出现了什么样得错误,可就就是不明白代码怎么来得,即使知道了错误就就是什么,也不知道怎么改。