版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
经典word整理文档,仅参考,双击此处可删除页眉页脚。本资料属于网络整理,如有侵权,请联系删除,谢谢!课程设计说明书N.1O1.课程设计的目的当计算机与互联网飞速的发展和使用,越来越多的公司、单位和个人通过网站提供服务、公布信息、交流知识等使互联网越来越方便我们的生活。在Web开发中,Java语言以其可扩展性、灵活性、可靠性和跨平台等特点,成为进行web编程的首选。更重要的是,开源社区提供了一大批功能强大的框架技术,、Spring、Hibernate等,利用这些技术使我们更高效的维护和建立我们自己的网站同时也让网站的开发更加方便和快捷。在这学期课堂上所学到的Java周时间,使用Java框架技术完成网上订餐系统的分析设计和开发。有了网上订餐系统,人们可以在家随意挑选自己喜爱的食物。现在正是经济全球化的时代,利用网络,我们可以浏览不同地区甚至不同国家的商品,这也改变着人们的消费观,网上订餐系统正是符合了这一趋势的发展,越来越多的人能够不出门就能吃上美味可口的饭菜。网上订餐的出现,正是体现了这一点。不少商家都把眼观放在了网上销售这一方面,把实体销售渐渐转变为网上销售。现在人们越来越重视节省时间,提高效率,不管是消费者还是商家都如此,有了网上订餐系统,可以让订餐者与餐厅进行互动,足不出户,选这样做对于商家和消费者来说无疑是双赢的。本系统为了便于各种操作,采用多页面的模式。用户可在不同网页进行相应操作:⑴在管理员信息表中,包括的数据项:帐号,密码,权限,注册时间。沈阳大学课程设计说明书N.2O⑵在订餐客户信息表中,包括的数据项:用户编号,用户名,密码,姓名,电话,身份证,注册时间等。添加时间等,每道菜都有它的菜名、介绍、价格等信息,为了让菜品的这些信息在页面⑸在购物车信息,包括的数据项:购物车信息唯一标识,食品id,订餐用户名,添加时间等。当顾客选购菜品放入购物车时,我们会把这些菜品的id、数量、价格记录存入订单关联表中,通过订单关联表中的信息算出会员将要支付的金额,再通过菜品id这个主健把相应的信息存入个人订单这张表中进行维护。⑹为了有效地管理菜品,在新增菜品时加了一个分类属性,在此需要建张分类表进行维护,系统总体功能图如图1所示。用户管理菜单浏览用户反馈订单管理课程设计信息管理系统,包括用户注册、管理员登录、菜品查询、菜品详单等。任沈阳大学课程设计说明书N.3O该系统是借助MySQLMySQL创建数据库订餐管理系统,MySQL数据库中数据的操作可以分为四种不同的类型,分别是添加、删除、查询和修改。该数据库包含的表有菜品信息表、管理员表、订单表等。IDbianhaomingchengleibietupianjianjiejiageaddtime与之相关联,如表1所示。沈阳大学课程设计说明书N.4O表1是否为主键是否为空idintbianhaomingchengleibie其中,ID设置为int型,并设为主键,且不能为空;、pwd设置为varchar型,如表2所示。是否为主键是否为空是否否VarcharVarchar沈阳大学课程设计说明书N.5O用户注册信息表,记录系统中的注册用户信息。把汉字转化为汉语拼音,作为字段名。把IDmimadiquzhaopianissh与之相关联。表3是否为主键是否为空int用strutsSystemException和异常处理类SystemExceptionHandlerMessageRperties中定义需要在Dao中抛出异常时声明的内容。在struts-config.xml中配置公共异常处理文件<global-exceptions>,加入资源文件<message-resourcesparameter="MessageResources"/>在Dao中抛出自定义异常。并在公共异常处理页面中使用struts标签<html:errors/>进行异常信息显示。顾客模块为封装的异常跳转页面如下图3所示:沈阳大学课程设计说明书图3在配置文件中可见,异常是以键值对的方式在struts1.1中存放,type属性是指异常类,handler属性是指异常的处理类,path属性是指出现异常后跳转的错误页面。该系统通过输入用户名和密码进行登录,登录界面如图4所示。课程设计说明书图4功能描述:顾客登陆管理,包括登陆时管理员需要输入用户名、密码、验证码、也一次登陆的时候只需要输入验证码,即可直接登录。课程设计说明书N.8O"({==={}{沈阳大学课程设计说明书用户可以通过订餐系统主页面进行订餐如图5所示。5功能描述:顾客登陆管理,包括(1)登陆时可以以游客或者会员的两种方式进行订餐操作,如果是会员登陆,先前需要录入用户名、密码、验证码,以便系统确认登陆成功。(2)(3)选购美食,作为顾客,在挑选美食的过程中,可以直接将称心的美食选进购物选购美食部分代码如下:……//得到日志对象log=课程设计说明书N.10O=;}=;=;};;沈阳大学课程设计说明书N.11O}首先判断是从哪个页面跳到到这里来调用这一方法,随着调用者的不同,方法也会将最后的传输到不同的页面中去。然后查询出所有美食的记录数,再对是否是第一次登录到此页面进行判断,以为,第一次登录时当前页数和每页显示行数是默认的,而此Spring中动态注入的服务层中食品类的对象调用查询食品信息的方法,再将结果通过request对象传输到对应的页面中去。==-}}此方法要在jsp页面中有DWR的对象调用,其中得到的路径是图片在服务器上的String类中的split后再作为查询条件在数据库中查询,查询出美食的信息。然后DWR对象会将查询出来的信息作为jsp页面中回调函数的参数传回页面端。沈阳大学课程设计说明书功能描述:对菜品信息进行维护,包括:⑵菜品过季下架,用于菜品原料缺少或菜品过季等情况,进行逻辑删除。⑶菜品的查询,可以按菜品的名称、价格、销售量、是否是推荐菜品进行查询,默认是推荐菜品查询。⑷修改维护菜品信息,主要针对菜品原料的价格更变菜品的价格及菜品是打折时的价格更变,如图6所示。课程设计说明书N.13O=;==={{;首先,有系统自动未上传图片命名,防止覆盖,然后通过字符串拼接的方式作为图片的地址存入数据库(例如:图片名称叫aaa,扩展名为,在存入数据库中的地址就是相对地址系统自动生成的名字,在通过输入输出流的方式将图片上传到服务器上。即由从form中得到的图片路径以流的方式服务器上的一本系统自动并命好的文件上,最后关闭输入流和输入流,并将文件损毁。另附图片自动命名类的部分代码如下//为了得到不重复的图片名称(首先用数字零给本机IP地址的点补位,然后再加上……//定义局部变量沈阳大学课程设计说明书N.14O=i=i<{}}}ip已经在实例化自动命名类对象是赋值,即是本机的ip地址,将ip地址通过“.”字符来分开有字符串数组接收,再将每部分未满三位的进行补零操作,再加上时间戳,最后加上三位随机数,再将StringBuffer转换成String对象最后得到的内容既是系统为另附美食类别处理代码如下:=;=;}{3沈阳大学课程设计说明书N.15O}=;;;{=;}{}}基于美食的类别操作的可添加性,则需要判断是在文本框中填写的美食内容(即:的类别编号直接填入数据库中。而如果是新类别则需要生成新的类别编号,再将类别编号填入到数据库中。⑴查看订单,可按订单号、用户姓名进行查询管理员可以查看到当前餐厅的订单,并可以进行打印订单以确认发货。等待中时为顾客修改菜品的数量及品种,若订单状态为以下单则不能为顾客修改。⑶打印订单,若打印订单表示以确认发货,并自动修改订单状态为已发送。⑷取消订单,若顾客不方便上网打电话要取消订餐的话,管理员查看订单状态若为已下单则不能为顾客取消订单,若订单状态在等待中,则可以为顾客取消订单,如图7沈阳大学课程设计说明书<===>,,a=课程设计说明书N.17O<![CDATA[>(-1)*>由于iBatisSQL分页这一要求,采用由rownum来控制输出的列数,在查询结果上,也用到了oracle自己的函数to-char来对日期类型进行处理。其中,在selectid属性对应在DAO的实现类中对象smctemplate所调用的queryForList方法的第一个参数,借此找到此SQL,来进行查询操作。resultClass与parameterClass分别表示,结果类的类型和参数类的类型,其中还有标签<![CDATA]>是iBatis中使用rownum来进行分页操作所必须应用到的。而如果在页面上点击“查看订单详情”则会弹出一个模态对话框,该对话框由两部分组成,上半部分是美食的信息,有美食名称、美食份数、美食单价、美食总价四个属收货人、地址、联系电话、总价、支付方式、订单时间、备注信息几项组成。沈阳大学课程设计说明书N.18O经过一段时间的设计和开发,网上订餐系统基本开发完毕。其功能基本符合大众需求,能够完成菜肴的更新,菜肴的查询,菜肴的下单,后台的管理等各种功能但是由于课程设计时间较短和本人水平所限,虽然谢老师给予了我很多的指导,但是该系统还有许多不尽如人意的地方,对于Java的框架技术我还需要深入的进行学习。如今信息化的普及,要想使该系统能在海量的网上订餐系统中脱颖而出,以我们的编写能力,及我要完成,下一步的改进一定做到层次更清晰,功能划分更明确,以实现更好的扩展性和重用性。沈阳大学课程设计说明书N.19O5.参考文献[1]严璋鹏.基于B-S的学生学籍管理系统的设计与实现[J].2013.19:33-41[2]李刚.轻量级J2EE企业应用实战—Struts+Spring+Hibernate整合开发[M].北京:电子工业出版社,:46-75[3]贾素玲,王强.JSP应用开发技术[M].:清华大学出版社,:35-76[4]王海涛,贾宗璞.基于Struts和Hibernate的Web应用开发[J].计算机工程,2011,37(9):113.[5]沈应逵.JavaWeb数据库系统应用开发与实例M].北京:人民邮电出版社,2009.9:102-134.[6]胡涛涛.基于MVC模式的课程管理系统的功能设计[J].山西煤炭管理干部学院学报,2013,04:140-142.[7]任广财.基于JSP的高校学生工作管理系统的设计与开发[J].科技经济市场,2013,12:119-120.[8]施阳,张海燕,戴德伟.基于JavaEE的毕业设计管理系统设计与实现[J].软件导刊,2015,02:86-88.[9]赵春生.浅谈JavaEE程序设计课程教学改革[J].科教导刊),2014,08:119-120.[10]刘晓华,张健,周慧贞.JSP应用开发详解第三版)[M]:电子工业出版社,20071沈阳大学课程设计说明书N.20O//保存各页面Id对应的action类的对象privateHashtablehPageHandler=newHashtable();//取得配置文件,并获得其中的dom元素StringfilePath=getInitParameter("configXML");StringfileRealPath=getServletContext().getRealPath(filePath);//尝试建立配置文件的DOMGlobalObjectProvider.init(configContext);}}}//每一种动作第一次执行的时候,初始化对应的类publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{沈阳大学课程设计说明书N.21O//得到用户输入信息StringsPageId=request.getParameter("pageId");StringsActionId=request.getParameter("actionId");if(sPageId==null||sPageId.equals(""){}//如果非法进入页面(登录页面除外)if(!sPageId.equals("S001")&&mySession.getAttribute("loginUser")==null){{//根据配置文件创建一个新对象StringsClassName=(String)configContext.getValue("ch08-config/page[@id='"+sPageId+"']/@className");oActionObject=Class.forName(sClassName).newInstance();hPageHandler.put(sPageId,oActionObject);}"ch08-config/page[@id='"+sPageId+"']/action[@id='"+sActionId+"']/@methodName");//生成对应的参数,并调用对应对象的对应方法//inputData是根据传入的参数做成的HashtableinputData=newHashtable();沈阳大学课程设计说明书N.22OStringsParaName=(String)params.nextElement();inputData.put(sParaName,request.getParameter(sParaName));}//outputData是下一个页面的值域,在此只是被初始化HashtableoutputData=newHashtable();//生成参数列表Class[]paraType={Class.forName("java.util.Hashtable"),Class.forName("java.util.Hashtable"),Class.forName("javax.servlet.http.HttpSession")};Object[]paraObj={inputData,outputData,mySession};//生成Method对象MethodinvokeMethod=oActionObject.getClass().getMethod(sMethodName,invokeMethod.invoke(oActionObject,paraObj);//根据outputData的结果决定下一个页面StringsNextPageId=(String)outputData.get("pageId");StringsRealPagePath=(String)configContext.getValue("ch08-config/page[@id='"+sNextPageId+"']/@path");//设置下一个页面的值域mySession.setAttribute(sNextPageId,outputData);response.sendRedirect(sRealPagePath);return;//页面处理出
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年税务局信息技术服务外包合同版B版
- 个人商铺租赁协议范本2024年版A版
- 2、3、4的乘法口诀说课稿(说课稿)-2024-2025学年二年级上册数学人教版
- 2025年度三人房地产合作开发协议书范本3篇
- 职业学院学生转专业申请表
- 2024年矿石勘探技术服务合同版B版
- 福建省南平市五夫中学2020-2021学年高三地理上学期期末试题含解析
- 福建省南平市渭田中学2021-2022学年高三数学理联考试卷含解析
- 2024年行政报告模板制作与市场反馈服务合同3篇
- 2024年长途汽车运输协议
- 中小学十五五发展规划(2025-2030)
- 2024年江苏客运从业资格证继续教育
- 人教版高中地理选择性必修1第一章地球的运动单元检测含答案
- 电厂员工三级安全培训(完美版)课件
- 2024年中考复习-数学(广州专用)(解析版)
- 精细陶瓷 断裂韧性试验方法 单边V型切口梁法
- 2024年海峡出版发行集团有限责任公司招聘笔试冲刺题(带答案解析)
- 第三十六届全国电力行业风力发电运行检修职业技能竞赛基础理论题库附有答案
- 人教版三年级上册数学期末测试卷a4版可打印
- 2024年纪检监察综合业务知识题库含答案(研优卷)
- 科室医疗质量与安全管理小组工作制度
评论
0/150
提交评论