汽车租赁管理系统2.docx
- 文档编号:24696732
- 上传时间:2023-05-31
- 格式:DOCX
- 页数:73
- 大小:748.06KB
汽车租赁管理系统2.docx
《汽车租赁管理系统2.docx》由会员分享,可在线阅读,更多相关《汽车租赁管理系统2.docx(73页珍藏版)》请在冰豆网上搜索。
汽车租赁管理系统2
数据库课程实训报告
题目:
汽车租赁管理系统
目录2
1课题内容和要求1
1.1课题描述1
1.2课题要求1
2需求分析1
2.1功能需求分析1
2.2数据需求分析1
3系统设计3
3.1功能模块设计3
3.2数据库概念设计3
3.3数据库逻辑设计4
3.4数据库物理设计4
3.5数据库表间联系4
4系统实现5
4.1管理员模块实现5
4.2车辆信息模块实现6
4.3客户信息模块实现7
4.4司机信息模块实现8
5代码调试与功能测试9
5.1测试方案9
5.2测试结果9
6收获与体会12
参考文献13
附 录14
附录1源程序部分清单14
附录1.1登陆14
附录1.2车辆信息16
附录1.3客户信息24
附录1.4司机信息33
附录1.5车辆租赁41
汽车租赁管理系统设计
1课题内容和要求
1.1课题描述
汽车租赁管理系统是可以通过对汽车基本信息进行增加、删除、修改,对租赁客户信息进行增加、删除、修改,实现汽车的租借、归还、续借的管理系统。
1.2课题要求
1)可以对汽车基本信息进行增加、删除、修改
2)可以对租赁客户信息进行增加、删除、修改
3)可以实现汽车的租借、归还、续借
4)可以按重要字段查询汽车、客户等基本信息
5)可以实现租赁金额的计算
6)可以查询汽车、客户租赁历史记录
2需求分析
2.1功能需求分析
程序首先需要登录模块来实现管理员或者客户的登陆,在车辆信息模块中来实现对汽车基本信息的增加、删除、修改,在客户信息模块中实现对客户信息的增加、删除、修改,租赁模块来实现对客户对汽车的租赁功能实现,车辆查询模块来实现对车辆信息的查询,系统统计模块实习对租金收入、租用时间的统计。
2.2数据需求分析
登陆模块:
车辆信息模块:
客户信息模块:
客户租车模块:
司机信息模块:
系统统计模块:
租金信息模块:
数据字典:
3系统设计
3.1功能模块设计
车辆信息模块
车辆信息模块可以实现对"车辆名称"、"车辆类型"、"购买时间"、"车辆状况"、"租金标准(日)"、"租期起始时间"、"租期"的添加、删除和修改,同时也可以查询这些信息。
客户信息模块
客户信息模块可以实现对客户"身份证号"、"姓名"、"年龄"、"地址"、"电话"、"登录密码"的添加、删除和修改,可以利用身份证号来删除指定客户的信息。
客户租车模块
客户租车模块可以实现对车辆的租赁管理,内包含有对于租赁车辆的"车辆名称"、"车辆类型"、"购买时间"、"车辆状况"、"租金标准(日)"、"租期起始时间"、"租期",还有客户的"身份证号"、"姓名"、"年龄"、"地址"、"电话"、"驾驶证书"。
司机信息模块
司机信息模块可以实现对司机"身份证号"、"姓名"、"年龄"、"地址"、"电话"、"驾驶证书"的添加、删除和修改,同时也可以查询有关信息。
系统统计模块
系统统计模块中可以对已录入的信息进行统计汇总,包括"租金最高的车"、"租用时间最长的车、"今日收入"、"累计收入"。
租金信息模块
租金信息模块可以"车辆名称"、"车辆类型"、"租金标准"、"车辆起始时间"、"租期"进行查询。
3.2数据库概念设计
车辆信息模块E-R图:
客户信息模块E-R图:
司机信息模块E-R图:
3.3数据库逻辑设计
(1)车辆(车辆名称;车辆类型;购买时间;车辆状况;租金标准;租期起始时间;租期)
(2)客户(身份证号;姓名;年龄;地址;电话;登录密码)
(3)司机(身份证号;姓名;年龄;地址;电话;驾驶证书)
3.4数据库物理设计
管理员信息:
客户信息:
司机信息:
3.5数据库表间联系
4系统实现
4.1管理员模块实现
{
jLabel_IL1=newJLabel("身份证号");
p.add(jLabel_IL1);
jLabel_IL1.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf1);
{
jLabel_IL2=newJLabel("姓名");
p.add(jLabel_IL2);
jLabel_IL2.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf2);
{
jLabel_IL3=newJLabel("年龄");
p.add(jLabel_IL3);
jLabel_IL3.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf3);
{
jLabel_IL4=newJLabel("地址");
p.add(jLabel_IL4);
jLabel_IL4.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf4);
{
jLabel_IL5=newJLabel("电话");
p.add(jLabel_IL5);
jLabel_IL5.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf5);
{
jLabel_IL6=newJLabel("登录密码");
p.add(jLabel_IL6);
jLabel_IL6.setFont(newjava.awt.Font("微软雅黑",0,14));
}
可以实现对客户"身份证号"、"姓名"、"年龄"、"地址"、"电话"、"登录密码"的添加、删除和修改
4.2车辆信息模块实现
{
jLabel_IL2=newJLabel("车辆类型");
p.add(jLabel_IL2);
jLabel_IL2.setFont(newjava.awt.Font("华文彩云",0,14));
}
p.add(tf2);
{
jLabel_IL3=newJLabel("购买时间");
p.add(jLabel_IL3);
jLabel_IL3.setFont(newjava.awt.Font("华文彩云",0,14));
}
p.add(tf3);
{
jLabel_IL4=newJLabel("车辆状况");
p.add(jLabel_IL4);
jLabel_IL4.setFont(newjava.awt.Font("华文彩云",0,14));
}
p.add(tf4);
{
jLabel_IL5=newJLabel("租金标准");
p.add(jLabel_IL5);
jLabel_IL5.setFont(newjava.awt.Font("华文彩云",0,14));
}
可以实现对"车辆名称"、"车辆类型"、"购买时间"、"车辆状况"、"租金标准(日)"、"租期起始时间"、"租期"的添加、删除和修改,同时也可以查询这些信息。
4.3客户信息模块实现
p.add(newJLabel(""));
{
jLabel_IL1=newJLabel("身份证号");
p.add(jLabel_IL1);
jLabel_IL1.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf1);
{
jLabel_IL2=newJLabel("姓名");
p.add(jLabel_IL2);
jLabel_IL2.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf2);
{
jLabel_IL3=newJLabel("年龄");
p.add(jLabel_IL3);
jLabel_IL3.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf3);
{
jLabel_IL4=newJLabel("地址");
p.add(jLabel_IL4);
jLabel_IL4.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf4);
{
jLabel_IL5=newJLabel("电话");
p.add(jLabel_IL5);
jLabel_IL5.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf5);
{
jLabel_IL6=newJLabel("登录密码");
p.add(jLabel_IL6);
jLabel_IL6.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf6);
{
jLabel_IL7=newJLabel("在此输入身份证号点击查询删除");
p.add(jLabel_IL7);
jLabel_IL7.setFont(newjava.awt.Font("微软雅黑",0,14));
}
可以实现对客户"身份证号"、"姓名"、"年龄"、"地址"、"电话"、"登录密码"的添加、删除和修改
4.4司机信息模块实现
p.add(newJLabel(""));
{
jLabel_IL1=newJLabel("身份证号");
p.add(jLabel_IL1);
jLabel_IL1.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf1);
{
jLabel_IL2=newJLabel("姓名");
p.add(jLabel_IL2);
jLabel_IL2.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf2);
{
jLabel_IL3=newJLabel("年龄");
p.add(jLabel_IL3);
jLabel_IL3.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf3);
{
jLabel_IL4=newJLabel("地址");
p.add(jLabel_IL4);
jLabel_IL4.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf4);
{
jLabel_IL5=newJLabel("电话");
p.add(jLabel_IL5);
jLabel_IL5.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf5);
{
jLabel_IL6=newJLabel("驾驶证书");
p.add(jLabel_IL6);
jLabel_IL6.setFont(newjava.awt.Font("微软雅黑",0,14));
}
p.add(tf6);
{
jLabel_IL7=newJLabel("在此输入身份证号点击查询删除");
p.add(jLabel_IL7);
jLabel_IL7.setFont(newjava.awt.Font("微软雅黑",0,14));
}
可以实现对司机"身份证号"、"姓名"、"年龄"、"地址"、"电话"、"驾驶证书"的添加、删除和修改,同时也可以查询有关信息。
5代码调试与功能测试
5.1测试方案
登陆测试:
输入用户名qh密码123,点击管理员登陆。
车辆信息添加测试:
添加车辆名称1车辆类型1购买时间1905-07-10车辆状况1租金标准100,点击添加。
客户信息添加测试:
输入身份证号6435235322姓名科比年龄0地址苏州电话45252登录密码434,点击添加。
司机信息添加测试:
输入身份证号4783292姓名哒哒哒年龄43地址常州电话4562542驾驶证书A,点击添加。
5.2测试结果
车辆租赁系统:
车辆信息:
客户信息:
司机信息:
租金信息:
信息统计:
登陆界面:
6收获与体会
这次课程设计我设计的是一个汽车租赁管理系统,通过这次课程设计,我了解了一个完整的数据库系统设计的步骤,掌握了租车公司汽车租赁系统的业务流程及管理,巩固了我在课堂上所学的理论知识,开拓了自己的知识面,同时也让我看到了自己的不足,很多东西单独用可以做出来,可是连贯起来就出现了很多错,还有很多不足,需要努力。
当然在我同学的帮助下,见证了一个系统的诞生,虽然不复杂,但它可以实现一些基本的功能,很有成就感,是理论与实践的一次完美的结合,而且也学到很多课本上没有涉及到的知识,对编程经验也起到了累积作用,也是第一次了解了一个系统诞生所要经过的流程,前期、设计、完成、后期一个也不能少,不像平时只用编一个程序,至于需求和维护没有涉及,这次课程设计就像一次工作的体验,从头到尾不遗余力的把它完成。
体会就是自己在这次设计当中遇到了很多问题,一开始的时候根本无从下手、什么都不会,但是通过和同学成的讨论,查阅资料、网上查询等有了基本了解,使得问题得以一一解决。
总之,在这次程序设计中,学会到了很多以前没有了解到的知识,当然系统还有很多不足,比如主界面的缩放功能没有很好的实现等,这还需要在以后的学习中慢慢改进。
回想我在这段时间的课程设计,感到非常的充实。
因为有了同学的帮助,我才能完满完成了这个课程设计。
在以后的学习中我还会更努力的学习,把自己学到的知识运用到的以后的学习和工作中去。
参考文献
[1]钱雪忠,王燕玲,林挺.数据库原理及技术[M].北京:
清华大学出版社,2011.
[2]钱雪忠,罗海驰,陈国俊.数据库原理及技术课程设计[M].北京:
清华大学出版社,2014.
附 录
附录1源程序部分清单
附录1.1登陆
importjava.awt.event.ActionListener;
importjava.awt.Color;
importjava.awt.Dimension;
importjava.awt.FlowLayout;
importjava.awt.Toolkit;
importjava.awt.event.ActionEvent;
importjava.io.IOException;
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjava.sql.Statement;
importjava.util.Vector;
importjavax.swing.*;
publicclassdlimplementsActionListener{
JFrameframe=newJFrame("客户/管理员登陆");
JLabellabel1=newJLabel("用户名");
JLabellabel2=newJLabel("密码");
ImageIconjbi1=newImageIcon("image/admin.png");
ImageIconjbi2=newImageIcon("image/admin2.png");
ImageIconjbi3=newImageIcon("image/quit.png");
JButtonloginButton1=newJButton("管理员登陆",jbi1);
JButtonloginButton2=newJButton("客户登陆",jbi2);
JButtoncancelButton=newJButton("退出",jbi3);
JTextFieldt1=newJTextField(0);
JTextFieldt2=newJTextField(0);
ImageIconim=newImageIcon("image/5.jpg");
JLabela2=newJLabel(im);
JTextFieldusername=newJTextField(9);
JPasswordFieldpassword=newJPasswordField(9);
voidcreate(){
JPanelp=(JPanel)frame.getContentPane();
JPanelp1=newJPanel();
p.setLayout(newFlowLayout());
p.add(label1);
label1.setFont(newjava.awt.Font("华文彩云",0,16));
p.setSize(5,5);
p.setLocation(4,8);
p.add(username);
username.setFont(newjava.awt.Font("华文彩云",0,14));
p.setSize(100,200);
p.setLocation(800,800);
p.add(label2);
label2.setFont(newjava.awt.Font("华文彩云",0,16));
p.setSize(50,20);
p.setLocation(40,80);
p.add(password);
p.setSize(100,20);
p.setLocation(80,120);
loginButton1.setFont(newjava.awt.Font("华文彩云",0,14));
p.add(newJLabel(""));
p.add(newJLabel(""));
p.add(loginButton1);
loginButton2.setFont(newjava.awt.Font("华文彩云",0,14));
p.add(loginButton2);
p.add(cancelButton);
cancelButton.setFont(newjava.awt.Font("华文彩云",0,14));
//p.add(t1);
//p.add(t2);
p.setBackground(newjava.awt.Color(255,255,255));
p.add(a2);
{
p.add(newJLabel(""));
}
//p.setBackground(Color.red);
p.setVisible(true);
loginButton1.addActionListener(this);
loginButton2.addActionListener(this);
cancelButton.addActionListener(this);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
Toolkittoolkit=Toolkit.getDefaultToolkit();
Dimensiond=toolkit.getScreenSize();
frame.setBounds(d.width/2-375,d.height/2-225,750,450);
//frame.setBounds(200,100,750,550);
frame.setVisible(true);
}
publicstaticvoidmain(String[]args){
dldome=newdl();
dome.create();
}
publicvoidactionPerformed(ActionEvente){
if(cancelButton.equals(e.getSource())){
System.exit(0);
}
if(loginButton1.equals(e.getSource())){
if((username.getText().equals("qh")==true)&&(password.getText().equals("123")==true)){
ZJMgz=newZJM();
gz.create();
frame.setVisible(false);
}
else
JOptionPane.showMessageDialog(null,"登录失败!
");
}
if(loginButton2.equals(e.getSource())){
System.out.print("123123");
if((username.getText().equals("121")==true)&&(password.getText().equals("123")==true)){
KHZCgz=newKHZC();
gz.create();
frame.setVisible(false);
}
else
JOptionPane.showMessageDialog(null,"登录失败!
");
}
}
}
附录1.2车辆信息
importjava.awt.Color;
importjava.awt.Dimension;
importjava.awt.FlowLayout;
importjava.awt.Toolkit;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.sql.Connection;
importjava.sql.Drive
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汽车 租赁 管理 系统