java车辆租赁管理系统 论文_第1页
java车辆租赁管理系统 论文_第2页
java车辆租赁管理系统 论文_第3页
java车辆租赁管理系统 论文_第4页
java车辆租赁管理系统 论文_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

1、X X X X 大 学Java语言程序设计课程设计(论文)题目: 车辆租赁管理系统 院(系): 专业班级: 学 号: 学生姓名: 指导教师: 教师职称: 起止时间: 课程设计(论文)任务及评语院(系):软件学院 教研室:软件教研室学 号 学生姓名 专业班级 课程设计(论文)题目车辆租赁管理系统 课程设计(论文)任务任务与要求:(1). 掌握面向对象程序设计语言JAVA的基本语法(2). 掌握JAVA面向对象设计的思想,(3). 掌握VJAVA6.0与MyEclips JAVA 开发工具的使用 (4). 运用标准JAVA规范设计应用程序设计过程中,要严格遵守设计的时间安排,听从指导教师的指导。正

2、确地完成上述内容,规范完整地撰写出设计报告。指导教师评语及成绩 成绩: 指导教师签字: 年 月 日Xxxx大 学 课 程 设 计 说 明 书(论 文)目 录第1章 课程设计目的与要求11.1设计目的11.2实验环境11.3预备知识11.4设计要求1第2章 课程设计内容22.1 课题描述22.2 系统设计22.2.1功能分析22.2.2面向对象设计22.2.2类成员描述22.3程序实现22.3.1源码分析22.3.2运行结果2第3章 总结3参考文献4第1章 课程设计目的与要求1.1设计目的车辆信息输入用户可以录入车辆信息,车辆信息表包括id(自动编号) category model no pri

3、ce flag每个字段的含义及解释id:为 int 类型 定义为主键 自动增长category:车辆的类别,以下拉列表的形式给出列表的内容包括三种类型大客车、面包车、小轿车model:车辆的型号no:车辆的车牌号price:租车的价格 单位为/元flag:用来标记车辆的出租状态列出所有车辆;当输入车辆信息后,将跳转到车辆信息列表页,把数据库中所有的车辆信息取出来显示到前台的jsp 页面,并根据多表连接来判断这些车辆的出租状态,也就是说这些车辆有没有被出租 删除车辆;在车辆信息列表页中有删除车辆信息的链接,根据autos表中的id来删除车辆信息,删除后,跳转到原来的页面。租车;首先判断哪些车辆没

4、有被出租出去,然后把没有被出租的车辆显示在租车页面的下拉列表中,此时用户只需要填写 出租人的姓名就可以租车了,其实后台数据库已经把出租的车辆信息写进了数据库中的 leases表,这一动作包括这些信息被写进了数据库 id(自动编号),customer(客户姓名),leasedate(出租日期),retured(是否还车),returned(还车日期)出租的列表;被出租的车辆信息及出租的日期,出租人等一些信息通过多表连接查询显示到出租列表页面还车在出租列表页面每条信息的后面都有还车链接,点击连接将进行还车操作,后台数据库将根据id将相应的 retured字段的值改为还车标记(0表示未还,1表示已经

5、还了)统计租金根据车辆的类别来统计租金,并把统计的结果显示在统计页面1.2实验环境各Strtus部件的设计:功能/实现的Action/使用的Form-bean(及数据验证)/界面/转发视图:就是一组JSP文件,这些JSP文件没有业务逻辑,也没有模型信息,只有标签,这些标签可以是标准的JSP标签或者是客户化标签,如Struct标签库的标签。此外,通常将Strcut框架中的ActionForm Bean也划为视图模块中,ActionForm Bean是一种JAVABEAN,除了具有一些JAVABean的常规方法外,还包含了一些特殊的方法,用于验证HTML表单数据以及将其属性重新设置默认值。Stru

6、ct框架利用ActionForm Bean来进行视图和控制器之间表单数据的传递。Strcut框架将用户输入的表单数据保存在ActionForm Bean中,将它传递给控制器,控制器可以对ActionForm Bean中的数据进行修改,JSP文件使用Strcut标签读取修改后的ActionForm Bean的信息,重新设置HTML表单。控制器:控制器由ActionServlet类和Action类实现,ActionServlet类是Struct框架中的核心组件。是这个MVC的中央控制器的角色,ActionServlet主要负责接收HTTP请求的信息,根据配置文件struct-config.xml的

7、配置信息,将请求转发给适当的Action对象,如果该Action对象不存在,ActionServlet会先创建这个Action对象。Action类负责调用模型的方法,更新模型的状态,并帮助控制应用程序的流程,对于小型简单的应用,Action类本身也可以完成一些实际的业务逻辑。模型:模型表示应用程序的状态和业务逻辑,业务逻辑常常由JavaBean或者EJB组件实现。如果在Web应用开发中套用现成的Struct框架,可以简化每个开发阶段的工作,开发人员可以更加有针对性地分析应用需求,不必重新设计框架,只需在Struct框架的基础上,设计MVC各个模块包含的具体组件,在编码过程中,可以充分利用Str

8、uct提供的各种实用类和标签库,简化编码工作。Struct框架可以方便迅速地将一个复杂的应用划分成模型、视图和控制器组件,而Struct的配置文件struct-config.xml可以灵活地组装这些组件,简化开发过程1.3预备知识出租的列表;被出租的车辆信息及出租的日期,出租人等一些信息通过多表连接查询显示到出租列表页面还车在出租列表页面每条信息的后面都有还车链接,点击连接将进行还车操作,后台数据库将根据id将相应的 retured字段的值改为还车标记(0表示未还,1表示已经还了)统计租金根据车辆的类别来统计租金,并把统计的结果显示在统计页面1.4设计要求对于开发Web应用,要从头设计并开发出

9、一个可靠、稳定的框架不是一件容易的事情,随着Web开发技术的日趋成熟,在web开发领域出现了一些现成的优秀的框架,开发者可以直接使用它们,就是一个很好的框架结构,它是在JSP Model2基础上实现的一个MVC框架,它可以使你不必要从头开始全部开发组件,对于大项目更是很好的。在Strcut框架中模型由实现业务逻辑的JavaBean或者EJB组件构成,控制器由ActionSevelet和Action来实现,视图由一组JSP文件组成,图显示了Struct实现的MVC框架。浏览器Web服务器控制器ActionServlet视图JSP模型JavaBeanEJBStruct-config.xmlActi

10、onActionAction图:Struct实现的MVC框架第2章 课程设计内容1.1 课题描述提出问题2.2 系统设计设计两个表:a) 车辆信息autos(id,category类别,model型号,no车牌号,price租车价格)b) 租车信息leases(id,autoId车辆id,customer客户名称,leaseDate租车日期,returned是否还车?,returnDate还车日期)2.2.1功能分析<1. 管理车辆基本信息,增加/删除/列表;<2. 能进行租车/还车操作;<3. 按车辆类别统计租金(虽然是选做,已做好)。车辆基本信息包括:车辆类别(大客/面包

11、/轿车),品牌型号,车牌号,租车价格;租车时应记录:租车日期,车辆id,客户名称;还车时应记录:还车日期。2.2.2面向对象设计基于struts的车辆租赁管理系统基于struts的车辆租赁管理系统MMyDB.CarDB.AllValueBackcarForm.InputAutoForm.LeaseFormUpdateFormVInputAuto.jspLeaseAuto.jspLeaseok.jspListcar.jspListLeased.jspStatresult.jspCinputAutoActionlistCarActionListLeaseActionlistLeasedAction

12、listStatAction4.3Struts部件功能页面ActionForm-bean1.输入车辆信息InputAuto.jspInputAutoActioncategory,model,no,price2.车辆信息列表ListCar.jspListCarAction/3.删除车辆信息ListCar.jspUpdateActionId4.租车LeaseAuto.jspListLeasedActionAutoId,coustomer,leasedate5.还车Listleased.jspBackcarActionId6分类统计Statresult.jspStateAction/文件说明目录文件

13、说明Src/chenxinMyDB封装了数据库访问CarDB封装对数据库表的操作CharCodingFilter用于支持中文输入的过滤器AllValue分装了数据库字段所有用到的属性ApplicationRperties资源文件Src/chenxin/actionBackcarAction.java还车InputAutoAction.java输入车辆信息LeaseAction.java租车ListCarAction.java显示车辆信息ListLeaseAction.java显示可以被租的车ListLeasedAction.java显示一租的车辆信息StatAction

14、.java分类统计租金UpdateAction.java删除车辆信息Src/chenxin/formBackcarForm.java还车时所用到的id属性InputAutoForm.java封装了车辆信息的一些字段LeaseForm.java封装借车用的idUpdateForm.java封装删除车辆信息所用的idWebRoothead.jsp用<%include file=”%>命令,在每个页面包含这个文件用作菜单导航end.jsp每个页面包含的尾部文件inputAuto.jsp用户输入车辆信息页面leaseAuto.jsp用户租借车辆页面leaseok.jsp显示租借成功信息页面

15、listcar.jsp显示车辆信息列表页面listleased.jsp显示已租的车辆信息页面statresult.jsp统计显示页面Web-INFOWeb.xmlStruts配置文件Strus-config.xmlWeb项目的配置文件imageBank.jpg. head.gif end.gif网页中用到的图片输入车辆信息的部件输入租车信息的部件还车分类统计运行界面(1)插入车辆信息(2)车辆信息列表和删除操作(3)分类统计租金(4) 还车操作数据验证1. 输入车辆信息的数据验证 InputAutoForm.java 文件中的 validate方法如果不符合和则返回到 inputAuto.js

16、p页面输出错误提示信息主要验证判断所输入的车辆型号和车牌是否为空的错误验证和输入的价格是否为数字类型的验证public ActionErrors validate(ActionMapping mapping,HttpServletRequest request) / TODO Auto-generated method stubActionErrors errors = new ActionErrors();if (model = null | model.length() = 0) errors.add("model_error",new ActionMessage(&q

17、uot;model_error");if (no = null | no.length() != 7) errors.add("no_error",new ActionMessage("no_error");/判断所输入的 车辆型号和车牌是否为空的错误验证try if (!(Double.parseDouble(price)>=100&&Double.parseDouble(price)<=2000) errors.add("price1",new ActionMessage("pric

18、e1"); catch (NumberFormatException e) / TODO Auto-generated catch blockSystem.out.println(e);errors.add("price1",new ActionMessage("price1");return errors;/输入的价格是否为数字类型的验证return errors;2.输入租车信息的验证 LeaseForm.java 中的 validate 方法如果不符合验证规则将返回到leaseAuto.jsp页面并输出错误提示信息,如果验证通过将跳转到l

19、easeok.jsp页面显示租车成功的信息验证所输入的用户名是否为空public ActionErrors validate(ActionMapping mapping,HttpServletRequest request) / TODO Auto-generated method stubActionErrors errors = new ActionErrors();if (customer= null | customer.length() = 0) errors.add("customer_error",new ActionMessage("custome

20、r_error");return errors;2.2.2类成员描述2.3程序实现java bean的设计:各个类的功能,实现方法给个类的功能Src/chenxinMyDB封装了数据库访问CarDB封装对数据库表的操作CharCodingFilter用于支持中文输入的过滤器AllValue分装了数据库字段所有用到的属性ApplicationRperties资源文件Src/chenxin/actionBackcarAction.java还车InputAutoAction.java输入车辆信息LeaseAction.java租车ListCarAction.java

21、显示车辆信息ListLeaseAction.java显示可以被租的车ListLeasedAction.java显示一租的车辆信息StatAction.java分类统计租金UpdateAction.java删除车辆信息Src/chenxin/formBackcarForm.java还车时所用到的id属性InputAutoForm.java封装了车辆信息的一些字段LeaseForm.java封装借车用的id对数据库操作的一些类的方法功能介绍1 CarDB.java类向autos表中插入车辆信息向leases表中插入租车信息更新leases表中的returned字段删除autos表中的一条信息查询a

22、utos表中的全部信息分类统计功能查询租车信息2 MyDB.java封装对数据库的连接所需要加载的驱动要连接的数据库用户名密码Connection类型构造方法连接数据库关闭数据库3 CharEncodingFilter.java类2.3.1源码分析validate()验证中错误信息提示的中文处理采用java安装目录下的 x:Javajdk1.5.0_04bin native2ascii.exe文件进行中文转码然后输出中文提示的错误信息jsp页面采用”UTF-8”的编码形式配置过滤器处理页面的中文显示问题,过滤器的使用方法如下(1)首先写好过滤器的java文件,代码如下public class

23、CharEncodingFilter implements Filter public void destroy() public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException request.setCharacterEncoding("UTF-8");chain.doFilter(request, response);public void init(FilterConfig ar

24、g0) throws ServletException (2)然后在web.xml中配置相关的映射环境,配置代码如下<filter> <filter-name>CharEncodingFilter</filter-name> <filter-class>chenxin.CharEncodingFilter</filter-class> </filter> <filter-mapping> <filter-name>CharEncodingFilter</filter-name> <url-pattern>/*</url-pattern></filter-mapping>2.3.2运行结果输入车辆信息测试 (1)当输入车辆类型为空,车牌号为空时,价格正常时,查看结果测试用例为 类型=null 车牌号=null 价格=244系统提示 车辆类型为空,车牌号为空,(2)测试用例 类型=null 车

温馨提示

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

评论

0/150

提交评论