主要负责表示层和数据层的逻辑处理业务,数据层主要是负责数据的存储。
它们三者之间相互独立、互不影响,为以后系统功能的扩展和系统的维护提供了便利。
而且,基于此种结构的系统,能够在Apache环境下运行,这就更能体现这种帄台的优越性。
系统构架图如图4-1: 图4-1 4.2系统模块设计 根据需求分析可以知道系统总体设计图4-2所示: 图4-2 4.3数据库设计 一个设计优秀的数据库可以对后续开发起到事半功倍的效果,因此,在开发本手机网上商城系统之前需要认真的设计系统的数据库。
4.3.1数据库分析 此系统由JSPServletJavaBeanTomcatMySql组成,因为对数据库的性能要求不是太高,故采用适用于中小型企业的MySql数据库较为合适。
而且该数据库
免费,可以节约开发成本。
4.3.2项目E-R图 本系统中的实体主要有:商品、商品类别、订单、订单明细、顾客、管理员等,下面就是实体的E-R图。
商品的E-R图,如图4-3所示: 图4-3 订单的E-R图,如图4-4所示: J2EE的手机网上商城系统论文 商品类别的E-R图,如图4-5所示: 订单明细的E-R图,如图4-6所示:图4-6顾客的E-R图,如图4-7所示: 图4-7 管理员的E-R图,如图4-8所示: 图4-8 4.3.3数据表的设计 本系统中的信息表主要有6张表:顾客信息表userinfo、商品表goods、商品类别表type、订单表orders、订单明细表orders_detail、管理员表admininfo。
下面具体介绍这几张表的结构。
1.顾客信息表userifno:用户记录客户的信息,主要由用户编号、用户姓名、用户密码、电子邮件组成,如表4-9所示。
表4-9 表userinfo的结构 字段名称 数据类型 字段大小 是否主键 是否为空 字段描述 Id Integer N/A 是 否 用户编号 UserName Varchar 20 否 否 用户姓名 Pwd Varchar 50 否 否 用户密码 Email Varchar 50 否 否 电子邮件 2.商品表goods:用于记录库存商品的基本信息,其主要字段有商品编号、商品名称、类别编号、商品价格、商品折扣率、商品描述、生产商、库存数量、是否推荐商品、商品图片等,表goods的结构如表4-10所示。
表4-10 表goods的结构 字段名称 数据类型 字段大小 是否主键 是否为空 字段描述 goods_id integer N/A 是 否 商品编号 goods_name varchar 50 否 否 商品名称 typeid integer N/A 否 否 类别编号 goods_price float N/A 否 否 商品价格 goods_discount float N/A 否 否 商品折扣率 goods_desc varchar 200 否 否 商品描述 supplier varchar 50 否 否 生产商 qty integer N/A 否 否 库存数量 ispreffered integer N/A 否 否 是否推荐商品 goods_pic varchar 50 否 否 商品图片 3.商品类别表type:用于基于记录商品的类别信息,主要包括商品类别编号、商品类别名称、商品类别描述等,表type的结构如表4-11所示。
表4-11 表type的结构 字段名称 数据类型 字段大小 是否主键 是否为空 字段描述 typeid integer N/A 是 否 商品类型编号 typename varchar 50 否 否 商品类别名称 typedesc varchar 200 否 否 商品类别描述 4.订单表orders:订单表用来保存客户的订单信息,包括订单编号、用户编号、订单日期、收货地址、收货人、邮政编码、订单总额、订单处理日期、订单状态、备注等,详细情况如表4-12所示。
表4-12 表orders的结构 字段名称 数据类型 字段大小 是否主键 是否为空 字段描述 orderid char 12 是 否 订单编号 userid integer N/A 否 否 用户编号 orderdata varchar 30 否 否 订单日期 address varchar 100 否 否 收货地址 contactman varchar 30 否 否 收货人 postcode char 6 否 否 邮政编码 ordersum float N/A 否 否 订单总额 dealdate varchar 30 否 否 订单处理日期 status varchar 10 否 否 订单状态 note varchar 50 否 否 备注 5.订单明细表orders_detail:订单明细表orders_detail用来保存每个客户购买的商品的信息,主要包括订单号、订单行号、商品编号、商品价格、商品数量等,具体设计如表4-13所示。
字段名称 数据类型 字段大小 是否主键 是否为空 字段描述 orderid char 12 是 否 订单编号 mum integer N/A 否 否 订单行号 goods_id integer N/A 否 否 商品编号 goods_price float N/A 否 否 商品价格 qty integer N/A 否 否 商品数量 第五章 系统详细设计与实现 5.1客户注册模块 5.1.1客户注册模块的设计 用户注册模块提供新用户注册功能。
用户注册模块采用JSPJavaBeanServlet(MVC)设计模式开发。
主要开发的页面如下: 用户注册页面(Register.jsp):完成用户注册信息输入工作。
用户注册成功页面(reg_success.jsp):显示注册成功信息。
用户
注册失败页面(reg_failure.jsp):显示注册失败信息。
以上页面主要实现MVC模式中的视图(View)的功能。
主要开发的JavaBean如下: 用户Bean(User.java):封装了User的所有属性信息。
用户数据库操作Bean(DB_User.java):封装Userinfo表的数据