周一至周五 | 9:00—22:00

期刊论文网 > 信息科技期刊 > 互联网技术 > 互联网技术论文 网上购物系统的设计与开发

互联网技术论文 网上购物系统的设计与开发

互联网技术论文 网上购物系统的设计与开发

2018-11-30 10:07:01来源:期刊投稿网作者:婷婷
期刊杂志栏目设置

  摘 要

  电子商务是互联网快速发展和网络技术应用于商业活动的先进工具。计算机和网络技术的应用促进了信息社会的进程。电子商务创造了一种新的经济活动形式,将带来社会经济的巨大变化。电子商务为中小企业的管理提供了新的机会。作为一种重要的电子商务应用,网络购物在新的贸易和经济体系中占有重要地位,并且越来越受到电子商务未来发展的重视。

  本次设计实现了一个在线购物系统。购物系统分为用户前台功能和管理员后台管理。用户前台功能主要有用户的登录,新用户的注册和已注册用户的账号激活,商品查询,购物车,订单,支付,个人信息管理功能。管理员后台管理的功能主要有商品的查询,增加,修改删除,用户信息的修改和删除,一级分类管理和二级分类管理的查询,增加,修改,删除,订单的发货和订单详情的查看,以及对管理账号密码的修改。通过该系统的设计与开发,体现出更高的研究价值和应用价值。

  关键词:购物系统,电商,互联网

  第1章 引言

  随着信息技术的发展,越来越多的产业会与计算机,会与互联网产生密切的关系。这种联系的发生使得企业可以更加便捷的管理企业资源,更好的利用信息技术来帮助和提高产业的整体水平和效益,形成为了一种主流的趋势。这种趋势也产生了现在许多的网上商城,或是一些网上管理系统。随着社会进入互联网时代,为了网上销售等实体的商品销售企业能够更好地适应环境并继续稳定的发展下去,便顺应时代潮流产生了网上购物。网上购物能够更好地紧密结合买方与卖方的合作与交流,促进了互联网时代的发展。

  通过设计网上购物系统,可以达到企业使用平台对自己的用户,商品产品和其他的一些企业资源资料进行详细的管理和用户更加方便快捷购买商品的目的。这样对于商城的管理者来讲,可以提高工作效率,对商品的上架,商品的价格等商品信息做到快速的设置和操作,同时也可以通过网上购物系统对自己的商品进行有效的宣传,增加商品的卖点,吸引更多顾客,发展更多的回头客。同样,网上购物商城也能服务于更多的用户,用户只需要注册网上购物商城用户名,便可以随时随地的进行商品的浏览与购买,享受便捷的服务,而且网上商城也为用户也提供了一层交流的平台。

  网上购物系统主要分为前台用户的使用和后台管理员对系统数据管理两大部分。用户的前台功能主要包含着新用户的注册与已注册用户的登录,商品的查询,在商品详细界面可将商品添加进当前用户的购物车,对购物车已选中商品结算生成订单,订单的查询,付款,确认收货,删除等功能。后台管理员的模块主要包含管理员的登录,对一级分类,二级分类,商品的查看修改增加和删除功能。对相关信息的统计。整个网上商城后端使用SSH框架,使用了MySql数据库对数据进行了存储。页面使用了JS,HTML,CSS,JQuery等技术进行页面设计与样式的选择。

  第2章 系统需求

  2.1 系统设计目的

  网上购物系统是为满足在线购物需求而设计和开发的。它主要用于方便管理员的后台管理和人们的网上购物。系统主要包括用户前台和后台管理。在用户前台功能中,包括了用户注册,登录,账号激活和,商品的一级分类和二级分类查询,模糊查询,商品详情,购物车模块,订单模块,对订单的支付和用户个人信息的管理功能。商城后台管理的功能主要有管理员的登录,订单的管理,一级分类的管理,二级分类的管理,商品的管理和用户的管理。因此开发与设计一个功能全面的网上购物系统,用以方便消费者,提高购物效率,使企业管理更加自动化,更加便民,提高了企业的工作效率。

  2.2 系统需求

  2.2.1 功能需求

  前台功能

  首页:为系统提供一个访问首页,显示了网站LOGO,登录和注册的按钮,用户的个人中心,以及热门商品,最新商品,个性商品的显示,也包括商品搜索,回到顶部等功能,以及广告推送,图片滚动等功能。

  注册:对于未注册的用户,使用注册功能注册账号成为会员,用户名使用Ajax异步校验,邮箱和密码使用JS前台校验,以及省市区街道选择的四级联动,注册后,需要通过邮箱进行激活方可登录,并且邮箱激活链接的有效期为五分钟。

  登录:在用户已经注册,并且已激活的情况下,才能登录,登录前加入JS前台校验用户名与密码,账号是否已激活,是否已冻结的校验,登录后,保存登录信息。在不关闭浏览器情况下,可用当前账号进行浏览与购物。

  退出:用户退出后,界面重定向到首页,并且返回到为登录状态。

  首页商品:显示热门商品,最新商品与个性商品,方便用户了解第一手的商品信息。

  分类查询商品:用户通过点击某一分类,查询某一分类的商品,分为一级分类与二级分类,用户可通过自身需求查询对应分类的商品。

  模糊查询商品:用户可通过搜索框,查询自己想要找的商品名称,将查询结果显示在界面上。

  商品详情:显示商品详细信息,包括价格,图片,简介以及所属分类

  购物车:用户通过添加购物车功能,向购物车中添加商品,在购物车中可对指定商品的数量进行修改,可进行删除某个商品,或是多选批量删除,对选择的商品,可进行结算。

  订单:用户通过结算提交订单,生成订单,用户通过我的订单的查询,查看相关订单详情、订单状态以及该订单包含的商品,可进行订单的支付,取消,删除,确认收货等操作。

  支付:用户使用支付宝等第三方支付平台或网银进行支付,订单状态改变,等待发货。

  后台功能

  管理员登录:系统后台使用管理员账号进行登录。

  用户管理:后台管理员可对数据库中存在的用户进行管理与维护,主要有查看用户详情,修改用户信息,删除用户等主要功能。

  商品管理:后台管理员对商城的商品进行查询、增加,修改和删除等操作,并可以通过指定的分类查询对应的商品。

  订单管理:后台管理员可对已付款订单执行发货的操作,还可查询订单详情,该订单包含的商品信息等。

  分类管理:后台管理员可对分类进行增加,修改,查询,删除的操作。

  2.2.2 性能需求

  (1)安全性:只有管理员才可以对数据进行操作。

  (2)稳定性:服务器开启时系统要稳定运行,有良好的用户体验。

  (3)兼容性:能够与其它软硬件有良好的兼容性。

  (4)合理性:系统设计应该合理,应该符合实际情况。

  (5)完善性:系统功能应该完善,不能只有部分功能,尽可能多的考虑实际情况,对各种情况都有应对方案。

  2.3 运行环境

  2.3.1 硬件环境

  CPU::Intel i7-4700H

  内存:12G

  硬盘:1T

  显卡:Intel(R) HD Graphics 4600

  NVIDIA GeForce GTX 860M

  2.3.2 软件环境

  操作系统:Windows10专业版。

  开发工具:Eclipse Jee Oxygen

  Web服务器:Tomcat 9.0。

  Java开发环境:JDK1.8。

  浏览器:谷歌浏览器,IE浏览器,火狐。

  数据库:MySQL 5.7。

  系统技术

  3.1 SSH整合

  SSH框架是一种较为普遍,应用较为广泛且稳定的编程技术,它是由Struts2,Spring和Hibernate三种基本框架整合而成的一种强大的编程技术,这三大框架在网站的设计与开发过程中起到关键的作用,各自发挥自己的功能,互相联系,互相配合的去控制系统的每个功能模块的运行。

  Struts2,它是一种非常突出且具备很多优点的MVC框架,它是由WebWork升级而来的一种框架,它可以提高开发的效率,给我们带来很大的便利,例如,它能够支持更多的表现层技术,它使用的Action不用与Servlet API相耦合,支持更好的模块化,还拥有很好的可扩展性与适应性。

  Spring是一种J2EE应用程序框架,它拥有多个层次,并且主要是通过提供一种新型的机制来达到依赖关系的目的及其管理业务对象,就是通常所说的依赖注入,专业名称为Dependency Injection,简称为DI,也称Inversion of Control,简称IoC,就是控制反转的意思。Spring还有一个特征就是面向切面编程,专业描述为Aspect-Oriented Programming,简称AOP,AOP提供了一种在程序中实现横向关注点的非常优秀的方法。

  Hibernate是程序员在Java后端研发中常用到的一种Object Relational Mapping 框架,它使用起来非常方便并且拥有诸多优点,比如说,它使用面向对象的方式能够让开发者对数据库进行访问,从而避免了在使用原始的JDBC进行数据库的访问操作时代码不易维护冗杂且句式冗杂啰嗦的问题。Hibernate不需要继承其他类或是实现其他接口,它很好的避免了开发者在编写数据库代码时所遇到的各种问题。

  核心配置文件:

  "com.mchange.v2.c3p0.ComboPooledDataSource">

  "org.springframework.orm.hibernate3.LocalSessionFactoryBean">

  edu/sdut/shop/user/vo/User.hbm.xml

  "org.springframework.orm.hibernate3.HibernateTransactionManager">

  3.2 MVC设计模式

  MVC的意思是模型,视图,控制器的整合,就是我们所说的Model,View,Controller,它是开发常见的且应用相当的广泛的一种强大的设计模式,这个设计模式将程序分为了模型,视图,控制器三个基本的部分,三个部分以最小的耦合程度协同工作,致使提高了程序的可维护性和可扩展性。这种设计模式,可以让程序的显示与逻辑分离出来,其过程主要是用户在前台页面(View)发出请求,然后控制层(Controller)接收请求并传给业务处理层(Model)进行业务处理的操作,最终再传回前台页面,反馈给用户。常用的MVC框架除了本系统使用的Structs2,还要Spring MVC,Tapestry等。

  3.3 MySQL分析

  MySQL是一种简单,易学,方便快捷的关系型数据库管理系统,并且MySQL可以使用结构化的查询语言,它是一种开源而且免费的数据库,数据库的建立是通过SQL语言来完成的,同时可实现表的建立,表数据的插入,修改,删除,查询等操作。

  3.4 Ajax介绍

  Asynchronous JavaScript And XML,通常我们称作Ajax,它不属于编程语言的范畴,而是一种技术,基于JavaSctip,可以称作为异步JavaSctip,它通过使用JavaSctip在浏览器与服务器之间产生交互,将数据以json的形式传到服务器,服务器返回响应,在jsp页面产生数据变化,从而实现页面无刷新的情况下产生数据交互,是浏览器页面能够快速做出响应,大大增加了开发过程中用户的体验。

  3.5 jQuery介绍

  JQuery是一款非常丰富的JavaScript库,它由于封装了许多的功能代码,可以很方便的进行HTML文档操作和事件的处理,所以极大的简化了JavaScript编程。

  系统设计

  4.1 数据库设计

  用户表:包含账号,密码,邮箱,姓名,地址,电话,激活状态,激活码,注册时间等信息。如图4.1.1

  图4.1-1

  商品表:包含商主键自增id,商品名称,商品图片,商品描述,市场价格,商城价格,添加/修改时间,所属分类,是否热门等信息。如图4.1.2

  图4.1.2

  一级分类表:包含主键自增id,一级分类名称。如图4.1.3

  图4.1.3

  二级分类表:包含主键自增id,二级分类名称。如图4.1.4

  图4.1.4

  购物项表:包含购物项的id,数量,所属用户id,所属商品id,购物项的编码。如图4.1-5

  图4.1-5

  订单表:包含主键自增id,订单编号,生成订单的时间,总金额,订单的状态,用户收货地址,收货人姓名,电话号码,所属的用户,如图4.1.6

  图4.1.6

  订单项表:包含订单项id,订单项数量、订单项小计,所属订单id,所属商品id。如图4.1.7

  图4.1.7

  管理员表:只用管理员的账号密码。如图4.1.8

  图4.1.8

  系统全局E-R图。如图4.1-9所示。

  图4.1-9

  4.2 前台功能

  前台功能E-R图。如图4.2-1所示。

  图4.2-1

  4.2.1 用户模块

  ①.注册:首先对表单提交的数据进行前台JS校验,用户名使用AJAX异步校验,使用验证码功能,程序在将表单提交的过程中向用户的邮箱发送一封时效为5分钟的激活邮件,同时用户注册的信息保存到数据库的用户表中。

  ②.激活:点击链接完成激活,根据系统发送的激活码查找用户,如果用户存在,则判断激活码是否已超出有效时间,若未超出有效时间,则激活账号,同时将数据库中的激活码字段清空,修改该用户的激活状态。

  ③.登录:登录后将登录信息保存到session中,并跳转到首页。

  ④.退出:将保存的登录信息从session中删除,并跳转回首页。

  4.2.2 分类模块

  ①.分类查询:查询所有的一级分类,每个页面都要显示一级分类,所以将返回的一级分类集合数据保存到了session中,显示一级分类的同时显示一级分类下的二级分类,通过hibernate映射直接获取。

  4.2.3 商品模块

  ①.一级分类商品:通过一级分类查询商品,将查询到的商品集合保存到值栈中,在jsp界面中进行分页显示。

  ②.二级分类商品:通过二级分类查询商品,将查询的商品集合保存到值栈中,在jsp页面中分页显示。

  ③.模糊查询:在搜索框中输入要搜索的商品名称,程序从数据库中查询出拥有该关键字的商品。

  ④.查询商品详情:通过商品id查看某个商品具体介绍,显示该商品的价格,名称,图片等信息,用户可对该商品执行加入购物车的操作。

  4.2.4 购物车模块

  ①.添加购物车:通过Ajax实现界面无刷新添加购物车,并将数据保存到数据库中,将它封装给所属用户,若购物车中已存在该商品,则数量变化,若不存在,则添加新的购物项。

  ②.删除/批量删除:将购物车中指定的商品进行删除,也可以在选择多个商品后进行批量删除,同时将数据库中的数据删除。

  ⑤.我的购物车:查询当前用户的购物车,进入购物车界面,显示当前用户购物车中的所有商品。

  ⑥.修改数量:运用Ajax技术实现页面无刷新修改购物车商品的数量,同时更新商品价格小计与购物车商品总价。

  4.2.5 订单模块

  ①.订单生成:选中购物车中的商品进行结算,结算后填写完整的信息提交订单,同时调将订单信息保存到数据库订单表中,订单项表也对应保存了相应的订单项,订单生成后购物车中的商品会被删除。

  ②.订单详情:根据订单id查询该订单的详细信息,显示订单号、订单时间、订单金额、订单状态,订单所包含的商品,以及商品数量、单价、小计。

  ③.删除订单:根据订单id删除订单,订单只有在完成和取消的情况下,用户才能将订单删除。

  ④.我的订单:根据用户id 查询当前用户的所有订单,用户可查看相应状态下的订单数量与订单详情。

  ⑤.付款:使用易宝网上银行进行支付,该易宝账号为内部测试账号,无商业用途,仅仅用于测试。

  4.3 后台功能

  前台功能E-R图。如图4.3-1所示。

  图4.3-1

  4.3.1 管理员登录

  ①.登录:管理员未提供注册功能,只能使用内部唯一管理账号登录,同时增加前台JS管理账号与密码的校验。

  ②.退出:直接销毁整个session,页面跳转回到登录页面。

  4.3.2 用户管理

  用户只能通过前台注册才能添加,后台管理员无法对用户进行添加操作。

  ①.查询用户信息:管理员可查看所有用户,可通过下拉菜单选择激活与未激活的用户,查看用户的注册信息,进行用户管理。

  ②.修改用户信息:管理员可修改用户的注册信息,但是无法修改用户名,同时密码不能为空。

  ③.删除用户信息:管理员对指定用户进行删除操作。若用户账号下存在订单,则无法删除该用户的账号。

  4.3.3 商品管理

  ①.增加商品:管理员可在后台添加商品,商品将在前台显示给用户,包括了上传图片的功能,并将图片传到服务器中,商品的一级分类选择使用Ajax联动二级分类的显示。

  ②.查询商品:管理员可在后台查询所有商品,也可查询相应一级分类与二级分类的商品。

  ③.修改商品:通过商品id进入编辑界面,修改商品,修改图片后会将服务器中原有图片删除,更新现有图片。

  ④.删除商品:管理员对商品进行删除。

  4.3.4 一级分类管理

  ①.增加一级分类:管理员增加一级分类,且存在不为空校验。

  ②.删除一级分类:管理员删除一级分类,若一级分类下存在商品集合或二级分类集合,则无法删除。

  ③.修改一级分类:管理员对一级分类进行修改。

  ④.查询一级分类:管理员可查看所有一级分类,由于一级分类数量有限,不采用分页的方式显示。

  4.3.5 二级分类管理

  ①.增加二级分类:管理员增加二级分类,可以选择所属的一级分类,且存在不为空校验。

  ②.删除二级分类:管理员删除二级分类,如果该二级分类下包含商品,则无法删除该二级分类。

  ③.修改二级分类:对所属的一级分类或者名称进行修改。

  ④.查询二级分类:管理员可查看所有二级分类,并可查看对应一级分类下的二级分类,采用分页的方式。

  4.3.6 订单管理

  由于订单为用户私人数据,管理员无法通过添加与删除操作对用户订单进行添加与删除,只存在对订单进行发货操作和查看订单详情的权限。

  ①.修改订单状态:管理员只能对处于已付款状态的订单发货,将订单状态改变为已发货,其他状态下的订单管理员无权操作。

  ②.订单详情:查看某个订单的详细信息。

  ③.查询订单:管理员可查看所有订单进行管理,也可查看相应订单状态的订单。

  系统运行

  5.1 前台运行界面

  首页:系统访问首页,显示网站LOGO,登录和注册的按钮,在用户登录以后可显示用户的个人中心和退出按钮,首页显示了热门商品,最新商品,个性商品的信息,显示了商品的所有分类,首页提供了购物车与订单的入口,用户必须登录后才可进入,也包括商品的搜索,回到顶部等功能,以及广告推送,图片滚动等功能。系统首页运行结果如图5.1-1所示。

  图5.1-1

  5.1.1 用户模块

  ①.注册:用户可通过注册成为会员。注册运行界面如图5.1-2所示。

  图5.1-2

  ②.登录:用户登录进行系统的使用。登录运行界面如图5.1-3所示。

  图5.1-3

  ③.激活:用户注册后需要激活账号。激活运行界面如图5.1-4所示。

  图5.1-4

  5.1.2 分类模块

  显示所有一级与二级分类,运行界面如图5.1-5所示。

  图5.1-5

  5.1.3 商品模块

  ①.分类商品:根据商品分类查询商品,运行界面如图5.1-6所示。

  图5.1-6

  ②.模糊查询:搜索商品关键字查询商品,运行界面如图5.1-7所示。

  图5.1-7

  ③.商品详情:查看商品详情,运行界面如图5.1-8所示。

  图5.1-8

  5.1.4 购物车模块

  用户在进行账户登录后,如果找到令自己满意的商品,可以在其详情页面上选择加入购物车按钮把它添加到自己的购物车内,添加过后,用户就能切换到购物车界面来查看自己账号中购物车内商品的信息,界面如图5.1-9所示。

  图5.1-9

  5.1.5 订单模块

  ①.生成订单:将商品结算生成订单,运行界面如图5.1-10所示。

  图5.1-10

  ②.付款:为订单付款,运行界面如图5.1-11所示。

  图5.1-11

  ③.查询订单:查询当前用户的所有订单,运行界面如图5.1-12所示。

  图5.1-12

  ④.订单详情:查询指定订单的详情,运行界面如图5.1-13所示。

  图5.1-13

  5.2 后台运行界面

  5.2.1 管理员登录

  后台管理的登录界面,运行界面如图5.2-1所示。

  图5.2-1

  5.2.2 用户管理

  后台用户管理,没有用户增加功能,管理员无权增加用户,只能通过前台注册向数据库中添加用户,运行界面如图5.2-2所示。

  图5.2-2

  5.2.3 商品管理

  管理员能够对数据库内存在的商品进行查询、增加、删除、修改等一系列操作,界面如图5.2-3所示。

  图5.2-3

  5.2.4 一级分类管理

  后台一级分类管理,管理员可在后台对一级分类进行增加修改删除查询,运行界面如图5.2-4所示。

  图5.2-4

  5.2.5 二级分类管理

  后台二级分类管理,管理员对二级分类进行增加、修改、删除、查询,二级分类管理界面如图5.2-5所示。

  图5.2-5

  5.2.6 订单管理

  管理员能够查询数据库内存在的所有的订单,因为订单属于用户的私人拥有,归纳为隐私部分,管理员没有权限对其进行删除和修改,且只能修改发货状态,运行界面如图5.2-6所示。

  图5.2-6

  结 论

  在本次网上购物系统的设计与开发过程中,我学习到了很多在课堂上学习不到的知识,但也发现了自己很多的缺点和不足。一方面,我更加系统地知道了软件的开发流程有什么样的步骤以及按什么样的顺序进行,在对一个系统进行开发之前我们首先要充分了解系统的用途和用户需求,确定其整体框架,这样才能让自己理清思路,然后对数据表有合理的设计,对系统每个模块的功能实现有明确的设计思路,每个模块之间的衔接要明白,在系统的设计与开发过程中,存在bug与错误,通过自己的努力与查阅资料加以解决。另一方面,本系统的使用与用户体验上还存在一定的瑕疵,主要是能力有限,在以后会努力学习新知识。总而言之,在以后的学习与工作过程中我会更加深入的研究与优化以完善系统更多的功能。

栏目分类