收藏 分享(赏)

网上图书销售系统设计的实现.doc

上传人:春华秋实 文档编号:2788943 上传时间:2018-09-27 格式:DOC 页数:51 大小:2.34MB
下载 相关 举报
网上图书销售系统设计的实现.doc_第1页
第1页 / 共51页
网上图书销售系统设计的实现.doc_第2页
第2页 / 共51页
网上图书销售系统设计的实现.doc_第3页
第3页 / 共51页
亲,该文档总共51页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、.1 引言 随着 Internet 国际互联网的发展,越来越多的企业开始建造自己的网站。基于 Internet 的信息服务,商务服务已经成为现代企业一项不可缺少的内容。很多企业都已不满足于建立一个简单的仅仅能够发布信息的静态网站。现代企业需要的是一个功能强大的,能提供完善的电子商务服务的动态商务网站。同时人们的生活方式也在随着发生改变,传统的购物方式已不能满足人们的需求。 JSP 是 Sun 公司推出的一种网站开发技术,Sun 公司借助自己在 Java 上的不凡造诣,又把人们引进 JSP 时代,JSP 即 Java Server Page,它可以在 Servlet 和 JavaBean 的支持

2、下,完成功能强大的 Web 应用程序。所以,在我的毕业设计中,我采用了 JSP 作为开发工具,构建了一个能实现基本的电子商务的小型动态商务网站网上图书销售系统。该系统能实现用户的注册、登录功能;能够实现商品的查询,订购等功能。该系统基本上具备一个网上商品销售系统应该具备的常用功能,该设计项目基本上体现了构建一个动态商务网站所需要的技术,可以说,目前的大型商务网站也就是我们这个小型网站在内容上的扩充和完善。2 概述 随着时代的发展,信息技术、Internet/Intranet 技术、数据库技术的不断发展完善,网络进程的加快,传统的购物方式也越来越不能满足人们快节奏的生活需求,使得企业的 IT 部

3、门已经认识到 Internet 的优势,电子商务就是在这样一个背景下产生发展起来的。伴随着电子商务技术的不断成熟,电子商务的功能也越来越强大,注册用户可以在网上搜索购买到自己想要的各种商品,初步让人们体会到了足不出户,便可随意购物的快感。我的毕业设计也就正是一个电子商务系统的开发-网上图书销售系统。3 系统分析3.1 可行性分析商业企业在运营过程中,经常会受到以下一些条件的限制: 产品的宣传受到限制,采购商或顾客只能通过上门咨询、电话沟通等方式进行各种信息的获取,受一定的时间与物理空间的局限并且成本较高。 庞大的商业经济周转。 复杂的产品周转渠道。从看样品、谈价格到支付货款等一系列的产品周转渠

4、道过于复杂,企业与顾客之间缺乏全面的沟通与快捷运营的平台。 商业企业中根据季节的变化,热销商品在销售高峰到来时货源紧张,企业需要实时了解商品的销售情况,保证热销商品的要货满足率。因此,企业需要重新认识市场、消费者以及自身市场定位,正确认识电子商务技术在企业中的重要地位,以少量的时间和资金建立企业信息门户网站并架设一定范围的商务网络,以此来制定长远发展战略,使企业与顾客间的经济活动变得更灵活、更主动。本系统是一个中小型的电子商务系统-网上书店,可以为各类用户提供方便的在线买书环境,符合目前国内流行的电子商务模式。用户可以在系统中实现注册、浏览商品、搜索查询商品、下定单、处理定单等功能;管理员可以

5、通过用户管理、定单管理、商品管理、评论管理等管理功能来对系统进行维护更新。在技术上,目前市场上开发电子商务平台的技术很多,如 ASP,PHP,PB,.NET 等。我采用 SUN 公司的 JSP 技术,它是目前市场上最流行的技术之一,JSP 具有一次编译,处处运行的优点 4。由分析可得,不论是商业还是技术上,网上图书销售系统的开发都是可行的。3.2 需求分析通过对电子商务网站及网上书店的考察、分析以及实际的市场调查,要求本系统具有以下功能: 统一友好的操作界面,能保证系统的易用性。 规范、完善的基础信息设置。第 2 页 共 43 页 图书分类详尽,可按不同类别查看商品信息。 按图书大类及图书名称

6、进行模糊查询。 实现网上购书。 新书及特价图书展示。4 概要设计4.1 系统设计目标对于典型的数据库管理系统,尤其是对像电子商务这样的数据流量特别大的网络管理系统,必须要满足使用方便、操作灵活等设计要求。本系统在设计时应该满足以下几个目标: 采用人机对话的操作方式,界面设计美观友好、信息查询灵活、方便、快捷、准确、数据存储安全可靠。 全面展示书店内所有的图书,并可展示最新图书及特价图书。 为顾客提供一个方便、快捷的图书信息查询功能。采用模糊查询查询数据。 实现网上购物。 商品销售排行,以方便顾客了解本商城内的热销商品及帮助企业领导者做出相应的决策。 查看商城内的公告信息。 用户随时都可以查看自

7、己的订单。 对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。 系统最大限度地实现了易维护性和易操作性。 系统运行稳定、安全可靠。4.2 系统设计思想本系统采用三层架构设计 4,它的工作原理如图 4.1 所示。图 4.1 三层结构原理图采用三层构架以后,用户界面层通过统一的接口向业务层发送请求,业务层按自己的逻辑规则将请求处理之后进行数据库操作,然后将数据库返回的数据封装成类的形式返回给用户界面层。这样用户界面层甚至可以不知道数据库的结构,它只要维护与业务层之间的接口即可。4.3 系统功能模块划分根据需求分析及三层架构设计的思想,设计出客户系统功能如图 4.2第 3 页 共 43

8、 页图 4.2 客户端系统后台管理的系统功能图如图 4.3用户登录在线购书查看购物车在线购书 察看订单信息 察看图书详细购买图书查询察看图书详细资料购买查看订单详细继续购书清空购物车提交购物车删除已经选购的图书修改购买数量 购买用户注册登陆第 4 页 共 43 页管理员登陆用户管理现有图书管理 添加新图书 添加图书分类 订单管理 用户管理查看图书资料 修改图书资料 删除图书 添加新图书 添加图书分类 删除图书分类 查看订单详细资料 删除订单 查看用户资料 删除用户查看用户详细资料 修改用户资料图 4.3 后台管理系统功能图4.4 系统结构设计根据面向对象和三层结构设计的思想,可得出如图 4.4

9、 所示的系统结构设计图。第 5 页 共 43 页在线书店客户端界面 管理端界面 JavaBean 数据库在购书界面 图书管理模块 订单管理图书管理 用户管理购物车界面 定单信息管理 登陆/注册 添加图书模块 添加图书分类模块 订单信息模块 客户管理模块 登陆模块图书分类类 图书类图书分类管理类 图书管理类 订单类 订单管理类 购物车类 购物车管理类 用户类 用户管理类 用户登录类图 4.4 系统结构图4.5 系统功能简介4.5.1 系统基本功能1)图书信息查询该模块实现图书信息的分类显示,提供最新商品的推荐显示以及销售显示,便于引导购物取向。此外,还提供依据图书名称或是编号等包含关键字实现快速

10、搜索的功能并显示图书的有关详细信息。2)购物车管理用于对每一个进入系统的用户所对应的购物车进行管理。将用户所选购的图书信息,包括价格、数量等信息记录到对应的购物车上,便于到收银台进行结帐处理。同时在此模块中,用户还可以方便的实现修改购物图书、清空购物车等操作。3)会员信息管理实现系统相关用户信息的注册及身份验证,同时也提供对应的用户资料的更新。该系统可以收集用户相关的联系方式、通讯地址等信息,可以更好的拓展销售规模。4)订单处理根据购物车中的信息,以及用户所选择的送货方式和付款方式,和用户对应的个人信息生成订单,便于后续工作的处理。在该模块中,用户可以随时查阅自己的订单,并对其进行取消等处理操

11、作。第 6 页 共 43 页4.6 数据库设计数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率,以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致 10。4.6.1 数据库需求分析针对网上图书销售系统的需求分析,得出如下需求信息。订单分为单张详细订单和总订单。 一个用户可以购买多本图书。 一个用户对应一张订单。 一个列表对应多张订单。针对本系统功能分析,总结出如下的需求信息。 用户,包括数据项:用户 ID、用户名、密码。 图书,包括数据项:图书编号、图书名、价格、图书介绍。 订单列表,包括数据项:订单编号、图书编号、

12、购书数量。 订单,包括数据项:订单编号、用户编号、下单时间。4.6.2 数据库概念结构设计从本系统中规划出的实体有:用户信息实体、管理员信息实体、图书实体、图书分类实体、订单实体、订单列表实体。实体之间关系的 E-R 图如图 4.5 所示。管理员用户 购书 订单列表 订单图书图书分类1 1NN11图 4.5 实体之间的 E-R 图管理员实体的 E-R 图,如图 4.6 所示。图书分类实体的 E-R 图,如图 4.7 所示。用户信息实体的 E-R 图,如图 4.8 所示。图书实体的 E-R 图,如图 4.9 所示。订单实体的 E-R 图,如图 4.10 所示。订单列表实体的 E-R 图,如图 4

13、.11 所示。M N第 7 页 共 43 页管理员用户名 密码图书分类分类名称分类编号图 4.6 管理员实体的 E-R 图 图 4.7 图书分类实体 E-R 图 用 户用户名 密码 地址真名性别电话邮编Email注册时间注册 IP图 4.8 用户实体 E-R 图图 书 图书编号图书名称 分类编号封面作者出版社内容介绍总数量剩余数量价格图 4.9 图书实体 E-R 图 订单订单编号用户编号购买时间总价格内容IP 地址是否发货是否付款第 8 页 共 43 页图 4.10 订单实体 E-R 图订单列表购书数量图书编号用户号订单号图 4.11 订单列表实体的 E-R 图4.7 数据库逻辑结构设计本系统

14、数据库采用 SQL Server 2000 数据库,系统数据库名称为 bookshop,下面分别给出数据表概要说明、数据表关系概要说明及主要数据表的结构。1、 数据表概要说明数据表树型结构图如图 4.12 所示,该数据表树型结构图包含系统所有的数据表图 4.12 数据表树型结构图 2、各个表的的结构如下表表 4.1 为图书信息列表,记录书店现有的图书信息。表 4.1 Book 表列名 数据类型 长度 允许空 注释ID Int 4 图书编号BookName varchar 40 否 图书名称BookClass Int 4 否 图书分类Author Varchar 25 是 作者Publish V

15、archar 150 是 出版社BookNo Varchar 30 是 书号 Content text 300 是 内容Price float 8 是 价格Amount int 4 是 总数量Leav_number int 4 是 剩余数量RegTime datatime 8 是 注册时间Picture varchar 60 是 封面表 4.2 为书店管理员信息表,记录管理员的帐号和密码。表 4.2 BookAdmin 表第 9 页 共 43 页列名 数据类型 长度 允许空 注释Adminuser Varchar 20 否 管理员AdminPass Varchar 20 否 管理员密码表 4.

16、3 为用户信息表,记录用户的基本信息。表 4.3 用户表列名 数据类型 长度 允许空 注释ID Int 2 否 用户编号UserName Varchar 50 否 用户名passWord Varchar 50 否 密码Names Varchar 50 否 真名Sex Varchar 50 是 性别Address Varchar 50 是 地址Phone Varchar 50 是 电话Post Varchar 50 是 邮编Email Varchar 50 是 电子邮件RegTime Datatime 50 是 注册时间RegIPAddressvarchar 50 是 注册 IP 地址表 4.4

17、 为订单总表,记录某个用户的订单总信息。表 4.4 订单总表列名 数据类型 长度 允许空 注释ID Int 4 否 总订单编号OrderID Int 4 否 订单号BookNo Int 4 否 书号 Amount int 4 是 数量表 4.5 为订单表,记录但张订单的具体信息。表 4.5 订单表列名 数据类型 长度 允许空 注释ID Int 4 否 订单 IDOrderID Varchar 50 否 总订单UserId Varchar 50 否 用户 IDSubmitTime Datatime 8 是 提交时间ConsignmentTimeDatatime 8 是 购买时间TotalPric

18、e Float 16 是 总价格content Text 300 是 描述Ipaddress Varchar 50 是 Ip 地址Ispayoff Varchar 50 是 是否付款IsAddress varchar 20 是 是否发货表 4.6 为图书分类表,记录书店现有图书的分类。表 4.6 Bookclass 表列名 数据类型 长度 允许空 注释ID Varchar 30 否 分类编号ClassName varchar 30 否 分类名第 10 页 共 43 页5 详细设计5.1 开发技术简介5.1.1 JSP 简介JSP(Java Server Pages)是由 Sun Microsy

19、stems 公司倡导、许多公司参与一起建立的一种动态网页技术标准,JSP 技术在 Servlet 技术基础上发展起来的,它正在飞速发展中,现已成为Java 服务器编程的重要组成部分。它虽然还未成型,但是它必将和 J2EE(Java 2 Enterprise Edition)一起发展 6。JSP 是结合 markup(HTML 和 XML)和 Java 代码来处理一种动态页面。每一页第一次被调用时,通过JSP 引擎自动被编译成 Servlet,然后被执行,以后每次调用时,执行编译过的 Servlet。JSP 提供了多种方式访问 Java class、Servlet、Applets 和 Web S

20、erver,因此,Web 应用的功能可以分成多个明确定义公用接口的组件,通过 JSP 将它们结合在一起 9。5.1.2 JSP 的运行原理在 JSP 第一次获得来自于客户端浏览器的请求时,JSP 文件将被 JSP 引擎(JSP engine)转换成一个 Servlet,即将”.jsp”文件编译成 Java Class 文件。当 Servlet 引擎接收到请求后,如果设置了使用最新的 JSP,它就会去找 JSP 文件,检查该文件在上次编译后是否改动过。如果改动过,就会重新编译生成新的 Servlet,最终将请求转交给编译好的 Servlet 引擎执行 1。如图 5.1Client客户端请求(Re

21、quest )Web Server响应(Response)Serverextension服务器扩展ServletengineJSPengineServlet 引擎 JSP 引擎ClassloaderJavacomplierJSPparser类载入器 Java 编译器 JSP 语法分析器第 11 页 共 43 页图 5.1 JSP 运行原理图在编译时如果发现 JSP 文件有任何语法错误,转换过程将中断,并向客户端发出出错信息;如果编译成功,则所转换产生的 Servlet 代码被编译,然后该 Servlet 被 JSP 引擎加载到内存中。此时JSP 引擎还请求了 jspInit()方法的执行,并对

22、此 Servlet 初始化。JspInit()方法在 Servlet 的生命周期中只被请求一次,然后将被调用来处理客户端的请求和回复操作。对于所有随后对该 JSP 文件的请求,服务器将检查该 JSP 文件自最后一次被存取后是否经过修改。如果没有修改,则将请求交还给还在内存中的 Servlet 的 jspService()方法,执行回复操作。由于 Servlet 始终驻于内存,所以响应是非常快的。Jsp 页面在第一次访问时由于要转化和编译,运行速度较慢,但是当第二次访问该页时,由于文件已经被编译成字节码文件了,所以速度非常得快。5.1.3 JSP 页面的组成JSP 页面看上去像标准的 HTML

23、和 XML 页面,并附带有 JSP 引擎能够处理和解析执行的代码与组件。通常,JSP 代码和组件用于创建在最终页面上显示的文本。通常来说,JSP 页面包括模板元素,指令元素,动作元素,Scritptlets,声明,表达式和 JSP 内建对象。1)模板元素:模板元素是指 JSP 的静态 HTML 或者 XML4 。2)指令元素:使用指令元素来设置全局变量,声明类、要实现的方法和输出内容的内型,它们并不向客户端产生任何输出,所有指令在文件范围内有效,JSP 指令的一般语法形式为:。3)动作元素(标识):动作元素用于执行某些动作。在 JSP 规范中有 2 种类型的动作指令的标识。第一种是标准动作,它

24、定义的是无论在什么版本的 JSP 引擎或 Web 服务器下总是可用的动作。第二种是自定义动作,它通过使用 taglib 指令来实现。例如JSP:useBean;JSP:setProperty;JSP:getProperty 就是标准动作。4)声明:用于声明合法的变量和方法。与任何语言相同,JSP 语言使用变量来保存数据。这些变量用 declaration 元素声明,声明的语法为。当页面被初始化的时候,JSP 页面中的所有声明都被初始化。除了简单的变量,方法也能被声明。声明不对当前的输出流产生任何影响。5)表达式:通过计算表达式所得到的结果来表示某个值。表达式的形式为:。表达式求值的结果被强制转

25、换为一个字符串,并插入到当前的输出流中。6)程序段:JSP 可以在页面中包含的一段程序,称之为程序段。程序段是一个代码片断,在请求的处理过程中被执行。程序段可以和页面中的静态元件组合起来创建动态生成的页面。程序段在“”中定义,在这对标识中的所有东西都会被当成 JSP 程序执行。5.1.4 JavaBean 技术介绍JavaBean 技术是一种基于 Java 的组件技术,JavaBean 组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据的提取,以及封装事务逻辑等,可以很好的实现业务逻辑和前台程序的分离使得系统具有更好的健壮性和灵活性,同时也是解决代码重用问题的一种策略。以前的组件无法

26、实现真正的代码重用,其主要原因就是它们对于处理平台的依赖和对开发语言的依赖过重。由于 Java 语言在这些方面所具有的特点和优势,使得基于它的软件 JavaBean 组件技术倍受人们的关注。它的任务就是:一次编写,可以在任何地方执行,可以在任何地方重用。JavaBean 组件可以在任何地方冲用包括了可以在应用程序、其他组件、文档、Web 站点和应用程序构造器工具等多种方案中再利用。为了创建和使用 Java 软件组件,JavaBean 被实现为一种独立于平台和结构的应用程序接口,它的实现可以忽略内部的结构及细节问题,只需要定义其外部的特征及对外功能就行。其中,属性、方法和事件三种接口可以独立对外

27、进行开发。JavaBean 的实质就是一个.class 文件,也可以成为类文件。JavaBean 以 binary 格式保存,可以保护 Java 源代码不容易被他人抄袭 7。5.1.5 JSP 的运行环境要运行 Jsp(注意,不是浏览 Jsp 页面) ,需要有支持 Jsp 的服务器。这里分 2 种情况:一种第 12 页 共 43 页是自身就支持 Jsp 的服务器,如 Jrun,Weblogic,JSWDK 等;而另一种则是在不支持 Jsp 的服务器上安装 Jsp 引擎的插件,如在 IIS,Apache 等服务器上安装 WebSphere,tomcat,Resin 等插件。其中主流服务器是 We

28、blogic 和 tomcat.Weblogic 是一款功能强大的服务器软件,配置比较简单,而且 Jsp 的扩展功能较多,附带了数据库的 JDBC 驱动程序。 ,支持 JHTML(一种与 Jsp 十分相似的技术),是目前市场占有率最高的服务器。不过,Weblogic 的运行情况不太稳定,使用它调试 Jsp 文件,出现语法错误或者数据库连接错误时,Weblogic 就有可能崩溃。Tomcat 服务器是 Apache Group Jakarta 小组开发的一个免费服务器软件,适合于嵌入 Apache 中使用,而且,它的源代码可以免费获得,你可以自由地对它进行扩充。访问的地址 http:/jakar

29、ta. apache.org/tomacat/index.html, Tomcat 服务器的兼容性很好,如 WebLogic服务器采用其为 Web 服务器引擎,Jbuilder 将其作为标准的测试服务器,Sun 公司也将其作为 JSP技术应用的示例服务器。不足之处是它的配置比较麻烦,对系统硬件要求较高,而且有一些安全性的问题没有解决。但是 Tomcat 服务器有众多大软件公司的支持,而且服务器的性能稳定,其发展前景很好 9。5.2 系统主要文件该购书系统主要有 2 类文件,一类是 Bean 文件,我把它们统一放在了 bookshop 文件夹里,保存在 jakarta-tomcat-5.0.27

30、commonclassesbookshop 下, (这是 tomcat 要求的默认存放 Bean的路径),在 bookshop 文件夹下又有 3 个包:book,run,util,对 Bean 文件的一个分类;另一类是jsp 文件,保存在 jakarta-tomcat-5.0.27webappsROOT。 (这是 tomcat 的默认工作环境)Book 包中的 Bean 文件:Allorder.java,Book.java,Bookclass.java,Order.java,Shopcar.java,User.javaUtil 包中的 Bean 文件:ChStr.java,DataBase.j

31、ava,DataFormat.javaRun 包中的 Bean 文件 Login.java,Op_book.java,Op_bookclass.java,Op_buy.java,Op_user.javaJsp 文件分为前台文件和后台文件,因文件太多,在此就不列举。5.3 详细设计及说明5.3.1 数据库连接 Bean 的编写 2数据库操作的 JavaBean 是一个公共类,放在 bookshop 下的 util 包中,通常包括连接数据库的方法 getConnection、执行查询语句的方法 executeQuery、执行更新操作的方法 executeUpdate、关闭数据库连接的方法 clos

32、e。 其实现代码如下:package bookshop.util; /将该类保存到 package bookshop.util 包中/* 数据库连接专用包 * Copyright: wxy Copyright (c) 2007* Company:Ling Du book shop online */import java.sql.*; /导入提供基本的数据库编程服务的包public class DataBase public Connection conn; /定义一个 Connection 对象public Statement stmt; /定义一个 Statement 对象public R

33、esultSet rs=null; /定义一个 ResultSet 对象public String sqlStr=“; /定义一个字符串,用来保存 SQL 语句public DataBase() this.connect();public boolean connect()第 13 页 共 43 页/download by http:/ tryClass.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver“).newInstance();/加载 SQL Server 2000 数据库驱动String url =“jdbc:microsof

34、t:sqlserver:/localhost:1433;DatabaseName=bookshop“;/保存连接数据库的 URL 地址的变量conn=DriverManager.getConnection(url,”sa”,”);/建立数据库连接Statement stmt= conn.createStatement ();catch(Exception ee)System.out.println(“connect db error:“+ee.getMessage();/检测数据库连接是否成功return false;return true;public static void main(St

35、ring args) tryDataBase db = new DataBase();db.connect();catch(Exception e)e.printStackTrace();5.3.2 字符处理 Bean 的编写在 JSP 开发中经常会涉及有关字符串的处理,例如:把字符串转换成适合于网页显示的文本、八字符串转换成适合 SQL 语句的字符串等等,所以把这些字符串处理方法集中到一个类中。这也是一个公共类 3。关键代码如下:package bookshop.util;/* 负责字符串的处理 */import java.lang.*;import java.util.*;public c

36、lass dataFormat public dataFormat() /* 把字符串转换成适合于网页显示的文本* param s* return*/public static String toHtml(String s) if (s=null) return s;s=strReplace(s,“);s=strReplace(s,“,“);s=strReplace(s,“,“);s=parseReturn(s,“n“);return s;/* 把字符串sBody中的sFrom用sTo替换* param sBody* param sFrom* param sTo* return*/public

37、 static String strReplace(String sBody, String sFrom, String sTo) int i,j,k,l;if (sBody=null | sBody.equals(“) return “;i = 0;j = sFrom.length();k = sTo.length();StringBuffer sss = new StringBuffer(sBody.length();boolean bFirst=true;l = i;while (sBody.indexOf(sFrom,i)!=-1) i = sBody.indexOf(sFrom,i)

38、;sss.append(sBody.substring(l,i);sss.append(sTo);i += j;l = i;sss.append(sBody.substring(l);return sss.toString();/* 把字符串中的“rn“转换成“n“* param String sBody : 要进行替换操作的字符串* param String sEndwith : 要替换成为的字符串*/public static String parseReturn(String sBody, String sEndwith) StringTokenizer t = new StringTo

39、kenizer(sBody, “rn“);StringBuffer sss = new StringBuffer(sBody.length();boolean bFirst=true;if (sEndwith.trim().equals(“) sEndwith=“n“;while (t.hasMoreTokens() String s=t.nextToken();s=s.trim();while (s.startsWith(“ “) s=s.substring(2);if (!s.equals(“) 第 15 页 共 43 页if (bFirst) bFirst=false; else sss

40、.append(sEndwith);sss.append(s);return sss.toString();/* 将字符串格式化成 HTML 代码输出* 只转换特殊字符,适合于 HTML 中的表单区域* param str 要格式化的字符串* return 格式化后的字符串*/public static String toHtmlInput(String str) if (str = null) return null;String html = new String(str);html = strReplace(html, “);html = strReplace(html, “, “);r

41、eturn html;/* 将普通字符串格式化成数据库认可的字符串格式* param str 要格式化的字符串* return 合法的数据库字符串*/public static String toSql(String str) String sql = new String(str);return strReplace(sql, “, “);5.3.3 实现用户实体的 Bean1)用户实体 Bean,这个类是对用户实体的抽象,它包含了用户实体的所有属性及用户对象初始化构造方法。它们都是和数据库里的 shop_user 表相对应的,在这个 Bean 里封装的方法也主要是对这个表进行操作.这些属性

42、都被定义为类的私有成员,外界不可访问 8private Long id;private String userName;private String userPassword;private String Names;private String Sex;private String Address;private String Phone;第 16 页 共 43 页private String Post;private String Email;private String RegTime;private String RegIpAddress;2)构造函数里对以上私有成员进行初始化:Pub

43、lic user() Id=0;UserName=”;Password=”;Names=”;Sex=”;Address=”;Phone=”;Post=”;Email=”;RegTime=”;RegIpAddress=”;其中的 seter 和 geter 方法用来设置和获取以上各属性的值。在 jsp 页面中通过 引入。5.3.4 实现图书实体的 Bean应用面向对象的思想把具有共性的实体抽象成一个类。这个图书 Bean 就是对图书实体的抽象,他包含了图书实体的所有属性及图书对象的初始化构造方法,里面的属性和表 Book 表对应 8。部分代码如下:package bookshop.book;/*

44、 图书类 */public class book private long Id; /ID序列号private String BookName; /书名private int BookClass; /图书类别private String classname ; /图书类别名private String Author; /作者private String Publish; /出版社private String BookNo ; /书号private String Content ; /内容介绍private float Prince ; /书价private int Amount ; /总数量p

45、rivate int Leav_number ; /剩余数量private String RegTime ; /登记时间private String picture ; /图书样图文件的名称/* 图书的初始化第 17 页 共 43 页*/public book() Id = 0;BookName = “;BookClass = 0;classname = “;Author = “;Publish = “;BookNo = “;Content = “;Prince = 0;Amount = 0;Leav_number = 0;RegTime = “;public void setId(long

46、newId)this.Id = newId;public long getId()其中的 seter 和 geter 方法用来设置和获取以上各属性的值。在 jsp 页面中通过 引入。5.3.5 实现图书分类实体 Bean这个类是对图书分类实体的抽象,他包含了图书分类实体的所有属性及图书分类对象的初始化构造方法,它的属性和表Bookclass对应,部分代码如下:package bookshop.book;/* 图书分类类*/public class bookclass private int Id; /ID序列号private String ClassName; /图书类别public book

47、class() Id = 0;ClassName = “;public bookclass(int newId, String newname) Id = newId;ClassName = newname;5.3.6 实现订单实体 Bean这个类是对订单实体的抽象,它包含了订单实体的所有属性及订单对象的初始化构造方法。客户每次购买一种商品都会产生一次订购单,它包括订单号,所购买的书号,所购买这种书的数量等,这第 18 页 共 43 页些构成了这个类的私有属性,这些属性和表Order对应。核心代码如下:package bookshop.book;/* 订单类 */public class or

48、der private long Id; /ID序列号private String orderId; /订单编号private long UserId; /用户序列号private String SubmitTime; /提交订单时间private String ConsignmentTime; /交货时间private float TotalPrice; /总金额private String content; /用户备注private String IPAddress; /下单时IPprivate boolean IsPayoff; /用户是否已付款private boolean IsSales; /是否已发货public order() /在构造方法里初始化变量Id = 0;orderId = “;UserId = 0;SubmitTime = “;ConsignmentTime = “;TotalPrice = 0;content = “;IPAddress = “;IsPayoff = false;IsSales = false;public long getId() return Id;其中的 seter 和 geter 方法用来设置和获取以上各属性的值。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 学术论文 > 毕业论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报