基于web开发的图书销售系统的设计与实现_第1页
基于web开发的图书销售系统的设计与实现_第2页
基于web开发的图书销售系统的设计与实现_第3页
基于web开发的图书销售系统的设计与实现_第4页
基于web开发的图书销售系统的设计与实现_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

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

文档简介

1、.:.; CHANGSHA UNIVERSITY OF SCIENCE & TECHNOLOGY 毕业设计论文标题:基于web开发的图书销售系统的设计与实现 学生姓名: 学 号: 班 级: 专 业: 指点教师: 年 月基于web开发的图书销售系统的设计与实现 学生姓名: 学 号: 班 级: 所在院(系): 计算机与通讯工程学院指点教师: 完成日期: 年月基于web开发的图书销售系统的设计与实现摘要社会在不断的开展壮大,特别是互联网技术不断地深化到社会的各个层面,网上图书销售系统等各个网上销售系统也不断的应运而生【】。鉴于目前的图书销售系统的功能不全,操作繁杂,系统要求硬件等级高等问题,要想设计

2、一个有个性化的图书销售系统。从而在书店对新书的进货,对书籍出卖的管理才干,对会员信息和图书信息的管理才干,对书店管理人员软件操作的顺应时间和操作觉得这些方面都将大大的提高。本系统正是基于这一现状而开发出来。关键词:web开发 图书销售 数据库 系统分析 软件工程DESIGN AND IMPLEMENTATION OF WEB DEVELOPMENT SYSTEM BASED ON BOOK SALESABSTRACTSociety in constant development and expansion, particularly Internet technology continues

3、deep into all levels of society, and various other online book sales system of online sales system also continuously emerged【】.Currently the general book sales system failure, complex operation, system requirements and high level of hardware problems, but imagine having a personalized book sales man

4、agement system. Thus the purchase of new books in the bookstore; the ability to manage the sale of books; books for members and staff management; time to adapt to the bookstore manager software operation and operating feel will greatly improve these aspects. The system is based on the status quo and

5、 developed.Key words: web development;book sales database design;system analysis;software engineering 目 录TOC o - h u HYPERLINK l _Toc 绪论 页 共 页 绪论. 课题的研讨背景和意义传统的购物方式局限于实体店等购物方式,而本系统将传统方式向网上销售的转变将大大提高人们的购买水准,也为了可以促进网上图书销售行业的开展,它不仅实现人们足不出户就可以方便快捷地买到本人喜欢的各种书籍,而且想可以向消费者展现一种新颖的购书方式。网上购书的方式必将被人们所接受。【】近年来,随

6、着人类社会进入信息化时代步伐的加快,Internet从过去主要用于科研和简单信息的发布向商业化大踏步迈进,电子商务这种新的运营方式也随着这一时代的趋势应运而生。因此,开发功能强大,性能完善的网上图书销售系统具有非常重要的意义和价值。本系统正是基于这一现状而开发。鉴于电子商务的特点,各类市场上销售的大部分商品都可以在互联网上销售,图书销售也因此遭到广泛的关注,人们可以经过登录网站阅读书籍目录等选购本人中意的书籍。因此本系统设计具有广泛的运用价值运用价值。. 国内外开展现状及开展趋势就目前国内情况来说,网上图书系统主要有京东,当当,亚马逊等网上图书销售网上搞图书在线销售,但总体上的开展比较缓慢而且

7、功能方面也不够完善。其中基于数据库的存储技术还有待加强改善。在如今这种大数据时代。信息量曾经不是以前所能想象的。而国内的数据库技术还远不及国外一些兴隆国家的程度。因此在设计诸如在线销售的系统的时候思索数据库方面的设计就是目前急需处理的问题。而国外一些兴隆国家不仅在数据库方面处于领先程度,在整体系统规划方面也比国内相关网站先进得多。因此总的来说国外的开展技术比国内的还是要先进些。但是我置信经过我国这几年经济的迅猛开展,此类技术一定会得到较大的改善。类似网站今后的开展趋势我以为应该会向云端存储数据开展,毕竟在这个信息大爆炸的社会无时无刻不充斥这信息的交互和分享。因此光靠诸如sql,oracle等技

8、术的支持一定是得不到较大的改善的。在今后的开展中,这类网站会向集成信息,大数据存储方面开展。也会使数据存储得到更大的提高。. 本论文的主要内容与构造本文是基于web开发的图书销售系统的设计与实现,经过系统的功能模块的实现来更好地使消费者实现网上图书购物。开发环境为MyEclipse,数据库运用Oracle Database g,在Windows系统下调试运转。本文主要组织构造如下:第一章引见开发背景、研讨意义与国内外开展现状;第二章主要引见本系统所要运用到的相关技术和开发环境;第三章为本系统的需求分析;第四章为本系统的总体设计与数据库设计的实现;第五章本系统的详细实现;第六章为系统的详细设计与

9、实现、系统的各个模块的调试与实现;最后一章是总结与致谢终了语等。 相关技术简介与开发环境. MyEclipse开发平台MyEclipse是在eclipse根底上加上一些插件而开发的集成开发环境。其主要用于web,挪动设备的开发。Eclipse是一个开放源码,基于Java的开发平台,自带一个插件集:JDK。虽然许多用户都喜欢将Eclipse用作Java的集成开发环境,但Eclipse不仅仅是一个开发环境而已,由于其本身自带的许多插件集,它允许程序员构建与Eclipse无缝集成的工具。而且Eclipse也不是只支持JAVA言语的平台,现实上C/C+和PHP等言语的插件曾经开发运用了。【】基于此系统

10、是基于web开发的图书销售系统,因此主要用到的是MyEclipse的web开发工具,tomcat效力器和web开发插件。还用到JDBC数据库链接工具等多项技术。. Oracle数据库Oracle是orcale公司的关系数据库管理系统,系统可移植性好,方便,功能强,适用于各类开发环境。高效率,可靠性好的顺应高吞吐量的数据库为用户提供处理方案。【】本系统的数据一致插入到Oracle Database g中,以关键字为查询字段,创建多个表存放图书信息和用户信息。创建触发器呼应事件的点击。. 搜索引擎技术该系统最为中心的技术是搜索引擎技术的运用,搜索引擎是根据用户的查询恳求,按照一定算法从索引数据中查

11、找信息前往给用户。为了保证用户查找信息的准确度,搜索引擎需求建立索引表并维护一个庞大的索引数据库。该系统首页的数据查询采用模糊查询,查询可分为按图书称号查询,按图书作者查询以及按图书信息查询等查询。查询后再匹配数据库的数据给予查询结果前往给用户。并显示信息查询结果能否查询出来。查询出来显示在界面上,未查询出来会提示用户查询未果。. 经过JDBC对数据库进展访问JDBC 从物理构造上说就是Java 言语访问数据库的一套接口集合。从本质上来说就是调用者程序员和实行者数据库厂商之间的协议。JDBC 的实现由数据库厂商以驱动程序的方式提供。JDBC API 为Java 开发者运用数据库提供了一致的编程

12、接口,它由一组Java类和接口组成,使得开发人员可以运用纯Java 的方式来衔接数据库,并进展操作。【】. Java多线程技术线程是经过程序的一条执行道路。多线程是一个程序同时运转多个义务的才干。它是在一个程序的内部进展分工协作。优化程序的通常方法是确定瓶颈并改良它。瓶颈是一个程序中最慢的部分,他限制了其他义务的运转。据个例子阐明:一个Spider程序需求下载十个页面,要完成这一义务,程序必需向效力器发出恳求然后接受这些网页。当程序等待呼应的时候其他义务不能执行,这就影响了程序的效率。假设用多线程技术可以让这些网页的等待时间合在一同,不用相互影响,这就可以极大的改良程序性能。【】. Java言

13、语Java是James Gosling在Sun公司指点的小组开发的,Java最初被称为Oak,是年为消费电子产品的嵌入式芯片而设计的。年改名为Java,并重新设计用于开发Internet运用程序。Java拥有的高效性、多平台移植性、通用性与高平安性,使之成为拥有显著优势以及宽广运用前景的一种言语。如今在挪动互联网和云计算的大行其道之下,JAVA表达出了极强的优越性。因此本系统也鉴于其优点运用其作为开发言语。 需求分析. 设计目的随着大数据时代的到来,特别是时至今日,信息化社会日益在他们的生活中凸现出来,因此有必要对各种信息进展分类整理然后反响给消费者本人所需的信息。而本系统正是基于消费者对图书

14、购买的背景需求下开发而来。图书销售已由传统的书店图书销售到现今的书店和网上销售并存。并且网上销售在今后的社会上将会越来越多的影响到人们的购物方式,即由传统的书店购书到网上购书,前景不可估量。而本系统就是要基于这一现状开发出来。目的就是可以方便消费者可以借助搜索引擎来查询本人钟意的图书并进展购买。设计目的:本次研讨选择的开发言语为Java,该系统基于B/S架构,用户可以经过阅读器对效力器运用访问。首先需求实现网上购书的根本功能,显示图书列表、添加图书到购物车、确认订单,我所研讨的重点是对网上购物车的设计与实现模块。 系统可实现功能如下:.可以进展游客或已注册用户对网上图书列表的阅读,以及对各图书

15、的详细信息的查看;.可以完成已登陆客户对图书的选购并一致添加图书到个人购物车,并且对已添加到购物车的图书进展数量的添加、减少、修正和删除等操作;.可以经过查看购物车对所选图书进展确定、挑选,确认或修正购物者的联络方式。. 可行性分析可行性分析主要讲述系统在经济,技术和社会等方面能否具有可行性从而确立整个系统能否具有可行性。. 经济可行性本系统意在让消费者方便在网上进展图书购买等便利购物。因此开展潜力宏大。用户量稳定。经济上可以视为一款可行性极高的开发系统。. 技术可行性本系统基于MyEclipse环境开发,数据一致存放在Oracle Database g中,在Windows下运转,利用JDBC

16、技术进展数据访问,因此在技术上,本系统是可行的。. 操作可行性本系统的面向对象为各类用户群体,操作简单,在人性化方面也较好。采用模糊搜索运用户可以快速的查询本人想要购买的图书。在操作上简单快捷。. 其他可行性本系统是属于毕业设计范围的开发系统,在法律和各方面并未进犯其他专利。内容是日常的图书用品信息。并无其他国家制止的不良信息。所以在其他方面均有可行性。. 性能需求本课题所研讨的图书销售系统有如下的性能要求查询呼应快。本系统将数据一概插入到Oracle Database g中,在采用模糊查询的条件下可以快速的搜索出用户所查询的图书信息,在时间上小于用户的等待时间,因此可以进展快速的查询并前往用

17、户所需的信息。平安性较强。本系统的用户信息与订单信息均需用户登陆后方可修正查看,采用MD加密技术进展加密,可以大大提升用户信息的平安性。因此在信息维护方面可以算是比较完善的。可扩展与可维护性。在本系统的设计过程中。每个模块的功能都单独存放,这可以方便未来在添加一些额外功能时可以在不破坏原有系统的功能前提下添加额外的功能模块,这就使系统的扩展性大大提升。从而也大大的减少了系统维护的任务量,某一模块出问题时只需在相应的模块内进展修正即可。从而使整个系统维护性也大大提升。. 功能需求本课题研讨的图书销售系统具有以下几个功能:用户注册,用户登录,购物车,用户订单,图书商品列表等。. 用户注册用户注册的

18、功能主要是进展非会员用户在进展图书购书时要先进展用户注册以保管用户的图书信息和用户信息,也是为了保证用户的个人信息的平安性。此模块是添加新的用户,填写用户个人根本信息,包括姓名,密码,确认密码,个人喜好,联络方式等。. 用户登陆假设游客要运用注册用户提供的功能,那么在运用之前必需登陆或注册后登陆。否那么将无法进展图书选购。用户只需输入注册用户名和密码进展登录。假设用户输入的以上两项与数据库中保管的数据相符,那么用户登录胜利,可以向用户开放全部前台子系统;假设不符,那么登录失败。. 购物车用户可以将阅读到的钟意的图书加到购物车中,假设觉得有买的必要,就可以下订单购买图书了,假设觉得不需求可以再调

19、整图书购物车,购物车主要存放的是图书的相关信息。. 用户订单订单管理的功能是对选择好用户的订单进展处置,包括图书简介,图书数量,图书的添加,删除等操作。. 图书商品列表图书商品列表主要是显示了用户检索出来的图书的根本信息,包括图书的称号,图书的作者,图书的简介,图书的类型等等。方便用户了解选购图书。. 需求分析总结根据用户对图书购买的需求分析得出,用户的根本需求如表-所示: 表- 需求列表需求用户根据本人喜好进展图书查询与搜索,系统根据用户查询反响相关图书信息给用户用户图书消费者用户所做的任务图书消费者用户注册用户登陆检索查询图书填写、修正、删除图书订单用户需求图书信息图书订单信息用户信息最优

20、处理方案用Oracle数据库实现,开发言语运用Java最优方案缘由Oracle数据库的数据保管可靠,本钱小;Java言语灵敏性强、顺应性强、基于web开发的图书销售系统主要义务是根据图书消费者的喜好和查询来反响图书信息给消费者。消费者根据检索出的图书信息进展购买和参考。假设满足消费者需求那么进一步进展图书购买,填写用户相关信息,填写购买图书数量等信息进展图书购买。并且可以在购物车上进展图书信息的存储,以便日后在购买时可以快速的进展图书买卖。 总体设计在本章中,他们将描画图书销售系统详细的功能模块设计以及数据库的设计。系统概要分析在第一部分表达,数据库设计实如今第二部部分详细给出。总体设计的目的

21、是为系统的详细设计与实现做预备。. 概要设计. 系统功能模块图根据上一章功能需求分析,他们曾经明确了企业采购系统的总体模块:用户注册,用户登录,购物车,用户订单,图书商品列表模块。整个系统的总体设计模块图如图.所示:图书销售系统管理端客户端图书的增删改查管理员个人信息订单的删除购物车图书搜索购买用户订单用户登录用户注册 图. 系统功能构造图从图中他们可以看出,用户管理模块和购物车模块是整个系统的重点所在。两个模块占据了系统中的主要功能,而系统的重难点也在于这两个模块的实现。在下一个部分,他们来引见各个模块的主要功能以及流程。. 系统流程图用户注册流程图此模块是添加新的用户,填写用户个人根本信息

22、,包括用户名、密码、确认密码、,个人喜好,等。这一部分功能的流程图如图.所示:录入用户信息录入用户信息Yes信息为空?No提示信息不能为空Yes用户已存在?提示用户已存在注册胜利图. 用户注册流程图用户登陆流程图假设游客要运用注册用户提供的功能,那么在运用之前必需用户登录方可进展相关功能的查询。用户只需输入用户名、密码就可以登陆进展图书购物了。假设用户输入的以上两项与数据库中保管的用户数据相符,那么阐明用户登录胜利,可以开放全部前台子系统;假设不符,那么登录失败。用户登陆的流程图如图.所示: 登录信息录入接受登录信息用户名,密码为空?Yes提示用户名或密码不能为空No按照用户名查询No用户已存

23、在?已登录NoNo提示用户不存在提示密码错误Yes口令正确吗?Yes图. 用户登录流程图购物车流程图用户可以将阅读到的称心的图书加到图书购物车中,假设觉得有买的必要,就可以下订单购买图书了,假设觉得不需求可以再调整图书购物车流程设计如图.所示;购物车查看商品下订单调整尚品No能否已购买Yes图. 购物车流程图订单流程主要包括订单的添加与删除,执行。如图.所示;订单删除订单发货订单处置用户订单图. 订单流程图. 数据库设计与实现. 系统的E-R图设计根据本系统的系统设计需求,得出如下的系统E-R图。.实体名:用户属性:用户名 密码 性别 生日用户E-R图如图.所示: 图.用户E-R图.实体名:图

24、书 属性:图书名 价钱 图书分类 详细信息 图书大小 用户E-R图如图.所示:图.图书E-R图.实体名:购物车属性:图书图片 价钱 折扣 数量 购物车E-R图如图.所示:图.购物车E-R图.实体名:订单属性:收货地址 收货人 号码 订单E-R图如图.所示:图.订单E-R图. 数据库表格构造根据上述的数据ER图的设计,将E-R图转换为关系模型。那么图书销售系统数据库包含以下几个表:用户表consumer,图书表books,订单表orders,如表.,.,.所示用户信息表表.用户信息表列名数据类型长度备注用户名varchar主键密码varcharvarchar性别varchar生日date喜好va

25、rchar地址varchar备注varchar图书信息表表.图书信息表列名数据类型长度备注图书号number主键图书称号varchar图书作者varchar图书厚度varchar图书价钱number图书折扣varchar图书类型varchar图书图片varchar订单信息表表.订单信息表列名数据类型长度备注订单号number主键订单名varchar联络varcharvarchar收件人varchar 图书销售系统的详细实现. 公共模块的实现. 数据库衔接方法概述鉴于本系统采用Oracle Database g存储数据,MyEclipse开发平台,因此采用JDBC数据库衔接技术进展数据衔接访问。

26、jdbc由各种类和接口组成,也可以构建更高级的工具和接口。鉴于本系统的数据衔接。JDBC衔接分为以下几个步骤:加载jdbc的驱动程序提供jdbc衔接的URL数据库的链接创建PreparedStatementStatement执行sql语句进展结果处置封锁jdbc的对象. JDBCClass类的详细实现加载驱动程序driver = pro.getProperty(className);name = pro.getProperty(name);password = pro.getProperty(password);url = pro.getProperty(url);driver = new S

27、tring(driver.getBytes(iso-),gbk);name = new String(name.getBytes(iso-),gbk);url = new String(url.getBytes(iso-),gbk);password = new String(password.getBytes(iso-),gbk);Class.forName(driver);提供jdbc衔接的URLurl jdbc:oracle:thin:localhost:XE数据库的衔接conn = DriverManager.getConnection(url,name,password);创建Pre

28、paredStatementStatementpublic Object query(String sql, Object args, Class clazz) /sql是查询语句,args是存放参数,根据clazz可用反射自动封装成voObject obj = null;Connection conn = dbManager.getConnection();/得到一个ConnectionPreparedStatement pstmt = null;ResultSet rs = null;try pstmt = conn.prepareStatement(sql);/获得preparedSta

29、tementif(args != null) setParameters(pstmt, args);/设置参数rs = pstmt.executeQuery();/执行命令,前往结果集obj = mapRow(rs, clazz);/封装结果集 catch (SQLException e) e.printStackTrace(); finally DBManager.free(conn,pstmt,rs);/释放资源return obj;执行sql语句rs = pstmt.executeQuery();/执行命令,前往结果集进展结果处置public interface RowMapper pu

30、blic Object mapRow(ResultSet rs);封锁jdbc的对象DBManager.free(conn,pstmt,rs);/释放资源. 模糊查询的语句实现用户在查询本人想要的书籍时,会用模糊查询来查询书籍,于是本系统中他们用sql语句来实现此功能。public GoodsVO selectGoodsbyName(String name) Object obj = null;GoodsVO gvo = null;String sql = select * from goods where gdname like ? or gdauthor like ?;/obj = jdb

31、c.query(sql, new Objectname, GoodsVO.class);obj = jdbc.query(sql, new Objectname,name, new SetParameters()Overridepublic void setParameters(PreparedStatement pstmt, Object obj) try for (int i = ; i obj.length; i+) if (obji.getClass().getName().equals(java.lang.String) System.out.println(%+obji.toStr

32、ing()+%);pstmt.setString(i + , %+obji.toString()+%); else if (obji.getClass().getName().equals(java.lang.Integer) pstmt.setInt(i + , Integer.valueOf(obji.toString(); else if (obji.getClass().getName().equals(java.lang.Float)pstmt.setFloat(i+, Float.valueOf(obji.toString(); else if (obji.getClass().g

33、etName().equals(java.util.Date) pstmt.setDate(i+,new Date(java.util.Date)obji).getTime(); catch (SQLException e) e.printStackTrace();, GoodsVO.class);if(obj!=null) gvo = new GoodsVOobj.length;for(int i=;iobj.length;i+) gvoi = (GoodsVO)obji;System.out.println(GoodsVO)obji).toString();return gvo; 详细设计

34、与系统实现. 界面设计图书销售系统的界面分为用户注册界面、用户登录界面、购物车界面以及订单界面。. 用户界面用户注册界面是将非会员用户进展身份注册,以便今后在进展图书购买时可以存储用户信息。也作为用户在登陆本系统时的凭证,也可以维护用户的信息平安。当用户注册终了时,将用户输入的信息存储到数据库中以便日后登录时匹配数据库的相关信息作为登陆凭证。界面设计如图.所示图. 用户注册界面用户注册界面代码如下:用户注册 Welcome to BookShopping本网站提供在线购书效力,让您足不出户就可以购买您喜欢的图书,方便快捷,欢迎运用本购物系统。用户名*:密码*:确认密码:. 登陆界面登陆界面是用

35、户作为登陆本系统的凭证,用户填写用户名和密码之后先和数据库里面的用户信息进展匹配,假设匹配胜利那么登陆胜利,反之那么提示登录失败。界面设计如图.所示:图. 用户登录界面详细设计代码如下:用户名:输入名字密码:输入密码忘记密码? 还没有账户? 注册. 购物车界面购物车界面主要是保管用户选购的图书的信息。如图书图片,图书名,单价,折扣,数量,总价以及操作等等。购物车界面如图.所示:图. 购物车信息管理界面详细设计代码如下:购物车商品总数:$goodslist.size()商品图片商品名单价折扣数量总价操作商品名:$item.gdvo.gdname $item.gdvo.gdprice元$item.

36、gdvo.gddiscount折$item.number$(item.gdvo.gddiscount * item.gdvo.gdprice * item.number)/.元总计:$sum 元. 订单界面订单界面主要是来用户填写其收货人,收货地址,联络等收件人相关信息的。订单界面如图.所示:图.订单界面详细设计代码如下:查看购物车=确认订单信息=付款到货填写收货地址:填写收货人:填写:请输入有效的购物车商品总数:$goodslist.size()商品图片商品名单价折扣数量总价商品名:$item.gdvo.gdname $item.gdvo.gdprice元$item.gdvo.gddisco

37、unt折$item.number$(item.gdvo.gddiscount * item.gdvo.gdprice * item.number)/.元总计:$sum 元. 系统实现系统的实现义务是实现DAO层、实现Service层和实现系统Servlet层,这是基于Web的图书销售系统设计实现的重点。. DAO层的实现DAO方式在Java中经常运用,它是数据访问对象第一个面向对象的接口【】。DAO组件可以对数据库进展封装操作。这种方式在运用之后,能充分表达Services层组件封装DAO层组件的方式。同时也表达了分别业务逻辑层和DAO组件层的功能。DAO层需求做的是处置数据库数据及和数据库数

38、据异常等。 本系统运用的DAO层主要有用户信息层,图书信息层和订单信息层的信息接口。用户信息层的DAO实现如下:package com.zyj.dao;import java.util.List;import com.zyj.vo.ConsumerVO;public interface ConsumerDao ConsumerVO getConsumerInfoByName(ConsumerVO vo);boolean consumerRegister(ConsumerVO vo);图书信息层的DAO实现如下:package com.zyj.dao;import com.zyj.vo.Good

39、sVO;public interface GoodsDao GoodsVO selectGoodsbyKind(String kind);GoodsVO selectGoodsbyName(String name);GoodsVO selectGoodsbyId(Long goodid);订单信息层的DAO实现如下:package com.zyj.dao;import com.zyj.vo.OrdersVO;public interface OrderDao boolean insertOrder(OrdersVO vo);OrdersVO selectOrderBycname(String

40、cname);DAO接口不参与任何技术的实现,这是其最大的特点。它只是知识定义了增删改查方法的,不论是传统Java数据库衔接方式还是其他技术方式,DAO组件都能实现。DAO生成和管理都是由Spring容器担任的。. Service层的实现Service层也叫业务逻辑层,主要用来处置业务逻辑层的控制层的调用。然后调用DAO层,最后前往结果到控制层。本系统运用的Service层主要有图书Service层,用户Service层和订单Service层。图书Service层的实现如下:package com.zyj.service;import com.zyj.dao.GoodsDao;import c

41、om.zyj.daoImpl.GoodsDaoImpl;import com.zyj.vo.GoodsVO;public class GoodsService GoodsDao dao = new GoodsDaoImpl();public GoodsVO getGoodsbykind(String kind) return dao.selectGoodsbyKind(kind);public GoodsVO getGoodsbyName(String name) return dao.selectGoodsbyName(name);public GoodsVO getGoodsbyId(Lo

42、ng goodid) return dao.selectGoodsbyId(goodid);用户Service层的实现如下:package com.zyj.service;import com.zyj.dao.ConsumerDao;import com.zyj.daoImpl.ConsumerDaoImpl;import com.zyj.vo.ConsumerVO;public class Consumer ConsumerDao dao = new ConsumerDaoImpl();public ConsumerVO checkLogin(ConsumerVO vo) return da

43、o.getConsumerInfoByName(vo);public boolean register(ConsumerVO vo) return dao.consumerRegister(vo);订单Service层的实现如下:package com.zyj.service;import com.zyj.dao.OrderDao;import com.zyj.daoImpl.OrderDaoImpl;import com.zyj.vo.OrdersVO;public class OrderService OrderDao dao = new OrderDaoImpl();public boo

44、lean tiJiaoDingDan(OrdersVO vos) for(int i=;ivos.length;i+) System.out.println(vos= +vosi);if(!dao.insertOrder(vosi) return false;return true;public OrdersVO chaxunBycname(String cname) return dao.selectOrderBycname(cname);. Servlet层的实现Servlet普通在客户端上运转,前往用户想要获取是数据,用户输入范文数据库的信息后在java效力器上运转时,效力器将恳求信息发

45、送到Servelet层中,然后Servlet将数据库里的呼应信息发送到效力器中,效力器再将信息前往到用户手中。本系统的Servlet层主要有用户层的Servlet,图书信息的Servlet和购物车的Servlet。用户层的Servlet的实现如下部分代码:public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException String command = request.getParameter(action);System.out.pri

46、ntln(Command: + command);command = new String(command.getBytes(iso-),utf-);System.out.println(Command: + command);if(Let me in.equals(command) doCheckLogin(request, response);if(register.equals(command) doRegister(request,response);if(showgerenzhongxin.equals(command) doShowConsumer(request,response

47、);图书信息的Servlet的实现如下部分代码:public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException String command = request.getParameter(command);System.out.println(command);if (classify.equals(command) doClassify(request, response);if (souso.equals(command) doSo

48、uso(request, response);if (showgoodsdetails.equals(command) doShowGoods(request,response);public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException doGet(request, response);购物车的Servlet的实现如下部分代码:public void doGet(HttpServletRequest request, HttpS

49、ervletResponse response)throws ServletException, IOException String command = request.getParameter(command);System.out.println(command);if(shifoudenglu.equals(command) /登录购物车doCheckDengLu(request,response);if(showGoods.equals(command) /商品参与购物车或者立刻购买doShowGoods(request, response);if(shanchugoods.equa

50、ls(command) /删除购物车里的商品doDeleteGoods(request,response);if(jiezhang.equals(command) /用来购物车中的商品进展结账doJieZhang(request,response);if(tijiaodingdan.equals(command) doTiJiaoDingDan(request,response);参考文献 夏俊博,宋晓宇 著.“电脑知识与技术,J,年月 百度百科,年 百度百科,年 百度百科,年 刘晓华,张健,周惠贞 编著.JSP运用技术开发详解第三版M. 北京:电子工业,年 林上杰等 编著.JSP.技术手册M

51、. 北京:电子工业,年 Y.Daniel Liang编著 Java言语程序设计M北京:电子工业,年 李贤华 著,基于JSP技术的大型网上购物系统的设计与实现J.计算机与现代化,年Amon-C-Shinder-T.,Carasik-Henmi,“The Best Damn Firewall Book Period SyngressM, Asibonler . User Interface Design-Bridging the Gap from User Requirements to Design Windows.USA.IntelCorporation. 张刚 著.信息系统开发实际教程M.

52、成都:电子科技大学,年总结本次毕业设计是基于Web网上销售图书系统的设计与实现,采用MyEclipse工具作为开发环境,Oracle g作为数据库管理工具,Tomcat作为效力器。利用JDBC完成数据库访问。在整个开发工程中,采用软件工程开发流程进展开发,上线进展需求分析,然后进展整体设计和数据库设计,表格的设计等到最后的系统实现。综合各个模块之间的关系进展开发设计,本系统经过几个月的开发终于完成了各个模块的功能。在实现过程中难免有缺乏之处。望各位教师批判指正。致谢经过数月的任务,基于Web网上销售图书系统终于可以初步的实现。毕业设计与论文的制造加强了我对软件工程专业的深化了解,四年的学习在这

53、次毕业设计中得到了充分的运用。赞赏彭纪良教师一路上的协助 ,当我遇到技术和实际难题时,教师总是为我指点迷津,让我走出困惑。这是我毕业设计可以胜利的重要要素。还有身边支持我的家人朋友,他们是我努力学习的动力,再次对他们表示赞赏。在长沙理工大学学习的四年转眼即逝,我曾经预备好踏上社会出力,大学生活令人难忘,毕业设计的这几个月更是倾注了我许多心血。虽然今后我不一定会继续从事软件开发有关的任务,但是软件工程依然是一个非常具有活力的专业。软件工程的世界,深奥却有趣,我衷心希望有更多的年轻人投入到软件开发及任务中去。我的本专业学得不好,这是我大学四年独一遗憾的地方,但我学会了许多其他的知识,学会了与人相处

54、的才干,学会了学习本身的才干。再次赞赏大学里协助 过我的同窗、教师、学长学姐们,没有他们就没有如今的我。最后再次赞赏彭纪良教师对我毕业设计的协助 。附录:部分源代码package com.zyj.util.jdbc;import java.io.BufferedInputStream;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import j

55、ava.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.util.Properties;public class DBManager String driver = null;String name = null;String password = null;String url = null;public Connection getConnection() Properties pro = new Properties

56、();Connection conn = null;InputStream is = null;String path = DBManager.class.getClassLoader().getResource(perties).getPath();/经过URI方式try is = new BufferedInputStream(new FileInputStream(path);pro.load(is);System.out.println(Driver: + pro.getProperty(className);driver = pro.getProperty(className);na

57、me = pro.getProperty(name);password = pro.getProperty(password);url = pro.getProperty(url);driver = new String(driver.getBytes(iso-),gbk);name = new String(name.getBytes(iso-),gbk);url = new String(url.getBytes(iso-),gbk);password = new String(password.getBytes(iso-),gbk);Class.forName(driver);conn

58、= DriverManager.getConnection(url,name,password); catch (IOException e) e.printStackTrace(); catch (ClassNotFoundException e) e.printStackTrace();System.out.println(衔接错误!); catch (SQLException e) System.out.println(衔接错误!); e.printStackTrace();return conn;public static void free(Connection conn, Stat

59、ement st, ResultSet rs) free(st, rs); free(conn); public static void free(Statement st, ResultSet rs) free(rs); free(st); public static void free(Connection conn, Statement st) free(st); free(conn); public static void free(ResultSet rs) if (rs != null) try rs.close(); catch (SQLException e) e.printS

60、tackTrace(); public static void free(Statement st) if (st != null) try st.close(); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace(); public static void free(Connection conn) try if (conn != null & !conn.isClosed() conn.close(); catch (SQLException e) / TODO Auto-generated

温馨提示

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

评论

0/150

提交评论