软件毕业设计手机购物网站.docx
《软件毕业设计手机购物网站.docx》由会员分享,可在线阅读,更多相关《软件毕业设计手机购物网站.docx(39页珍藏版)》请在冰豆网上搜索。
软件毕业设计手机购物网站
毕业设计
论文题目:
手机购物网的简单实现
专业班级:
网络091班
学生姓名:
何欣欣
指导教师:
郑小蓉谢先伟陈戈
设计时间:
2012年5月14日—2012年6月8日
重庆工程职业技术学院
重庆工程职业技术学院毕业论文任务书
任务下达日期:
2012年5月14日至2012年6月8日
设计(论文)题目:
手机购物网的简单实现
设计(论文)主要内容和要求:
随着网络时代的到来和发展。
现在网络已经走进了不止千家万户。
最近统计
我国网民数量已经达到了空前的6亿人。
成为世界第一大网络大国。
网络发展的
背后也深深的影响着人们的生活方式。
人民可以足不出户只要动一动鼠标就可以
把喜欢的东西送到家来,尤为方便。
有需求就有市场,网上购物成为了当代年轻
人的新时尚,由此而引发的一个个购物网站B2B,B2C,C2C...层出不穷,方兴未
艾。
电子商务迅速发展的同时,近年来3G网络也开始如火如荼。
3G网络的兴起
刺激了智能手机的需求。
安卓,苹果,wp7智能的手机销售火爆。
因此基于购物
网站,智能手机这两市场热点。
我做了一个专门销售手机的购物网站。
关键词:
网络时代;购物网站;3G;智能手机
教研室主任签字:
指导教师签字:
年月日年月日
重庆工程职业技术学院毕业设计(论文)指导教师评语
评语:
成绩:
指导教师签名:
年月日
重庆工程职业技术学院毕业设计(论文)答辩记录
学生姓名
何欣欣
系别
信息工程学院
专业班级
网络091班
设计(论文)题目
手机购物网的简单实现
说明书共页,图纸共张
答辩情况
提出问题
回答问题
正确
基本正确
有一般性错误
有原则性错误
回
答
不
清
1
2
3
4
5
6
7
8
答辩委员会评语及建议成绩:
答辩委员会主任:
年月日
引言
1.项目定义
在当今社会,互联网空的发展,给人们的工作和生活带来了极大的便利和高效,信息化,电子化已经成为节约运营成本,提高工作效率的首选。
当前大量企业的员工管理尚处于手工作业阶段,不但效率低下,还常常因为管理的不慎而出现纰漏。
因此部分企业需求,设计企业员工信息管理系统,以帮助企业达到员工管理办公自动化、节约管理成本、提高企业工作效率的目的。
2.编写目的
当今网络发达的今天,网络购物已经成为了新时代的时尚。
人们再也没有必要去大家小巷购物和卖家讨价还价。
为众多上班一族节省了很多时间。
把精力用在自己的工作上。
同时也让商品市场全国性流通成为了课程。
再也进一步刺激了物流业的发展。
网络购物成为了网络经济不可忽视的一环。
但是网络购物大多倾向于物品多元化,并没有专一性很强的购物网站。
众多网站泛滥千篇一律。
俗话说并不在多而在于精。
由此像智能手机销售一样,急需一个专业性的经营网站。
所以手机销售网站营运而出。
3.项目背景
随着网络时代的到来和发展。
现在网络已经走进了不止千家万户。
最近统计
我国网民数量已经达到了空前的6亿人。
成为世界第一大网络大国。
网络发展的
背后也深深的影响着人们的生活方式。
人民可以足不出户只要动一动鼠标就可以
把喜欢的东西送到家来,尤为方便。
有需求就有市场,网上购物成为了当代年轻
人的新时尚,由此而引发的一个个购物网站B2B,B2C,C2C...层出不穷,方兴未
艾。
电子商务迅速发展的同时,近年来3G网络也开始如火如荼。
3G网络的兴起
刺激了智能手机的需求。
安卓,苹果,wp7智能的手机销售火爆。
因此基于购物
网站,智能手机这两市场热点。
做了一个专门销售手机的购物网站。
第一章可行性分析
在当今社会,互联网的发展,给人们的工作和生活带来了极大的便利和高效,信息化,电子化已经成为节约运营成本,提高工作效率的首选。
当前大量企业的员工管理尚处于手工作业阶段,不但效率低下,还常常因为管理的不慎而出现纰漏。
因此部分企业需求,设计企业员工信息管理系统,以帮助企业达到员工管理办公自动化、节约管理成本、提高企业工作效率的目的。
员工信息管理系统主要对企业员工的信息进行集中管理,方便企业建立一个完善的、强大的员工信息数据库,它是以SQL2000数据库作为开发平台。
使用jsp编写程序,完成数据输入、修改、存储、调用查询等功能;并使用SQL2000数据库形成数据,进行数据存储。
1.1技术可行性
1.1.1Java的发展及特点
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由SunMicrosystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE,JavaEE,JavaME)的总称。
Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
JAVA简介
它最初被命名为Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。
由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划。
就在Oak几近失败之时,随着互联网的发展,Sun看到了Oak在计算机网络上的广阔应用前景,于是改造了Oak,以“Java”的名称正式发布。
Java编程语言的风格十分接近C、C++语言。
Java是一个纯的面向对象的程序设计语言,它继承了C++语言面向对象技术的核心,Java舍弃了C++语言中容易引起错误的指针(以引用取代)、运算符重载(operatoroverloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。
在JavaSE1.5版本中,Java又引入了泛型编程(GenericProgramming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
Java不同于一般的编译执行计算机语言和解释执行计算机语言。
它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。
不过,每次的编译执行需要消耗一定的时间,这同时也在一定程度上降低了Java程序的运行效率。
但在J2SE1.4.2发布后,Java的执行速度有了大幅提升。
与传统程序不同,Sun公司在推出Java之际就将其作为一种开放的技术。
全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。
“Java语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。
这与微软公司所倡导的注重精英和封闭式的模式完全不同。
Sun公司对Java编程语言的解释是:
Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。
Java平台是基于Java语言的平台。
这样的平台目前非常流行,因此微软公司推出了与之竞争的.NET平台以及模仿Java的C#语言。
名字起源
Java的名字的来源:
Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名。
Java语言中的许多库类名称,多与咖啡有关,如JavaBeans(咖啡豆)、NetBeans(网络豆)以及ObjectBeans(对象豆)等等。
SUN和JAVA的标识也正是一杯正冒着热气的咖啡。
据JamesGosling(詹姆斯·高斯林)回忆,最初这个为TV机顶盒所设计的语言在Sun内部一直称为Green项目。
我们的新语言需要一个名字。
Gosling(高斯林)注意到自己办公室外一棵茂密的橡树Oak,这是一种在硅谷很常见的树。
所以他将这个新语言命名为Oak。
但Oak是另外一个注册公司的名字。
这个名字不可能再用了。
在命名征集会上,大家提出了很多名字。
最后按大家的评选次序,将十几个名字排列成表,上报给商标律师。
排在第一位的是Silk(丝绸)。
尽管大家都喜欢这个名字,但遭到JamesGosling的坚决反对。
排在第二和第三的都没有通过律师这一关。
只有排在第四位的名字、得到了所有人的认可和律师的通过,这个名字就是Java。
10多年来,Java就像爪哇咖啡一样誉满全球,成为实至名归的企业级应用平台的霸主。
主要特性
1、Java语言是简单的。
Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。
另一方面,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。
特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。
2、Java语言是一个面向对象的。
Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。
Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。
总之,Java语言是一个纯的面向对象程序设计语言。
3、Java语言是分布式的。
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(javanet),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。
Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
4、Java语言是健壮的。
Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。
对指针的丢弃是Java的明智选择。
Java的安全检查机制使得Java更具健壮性。
5、Java语言是安全的。
Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。
除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。
6、Java语言是体系结构中立的。
Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。
这种途径适合于异构的网络环境和软件的分发。
7、Java语言是可移植的。
这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。
Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSIC实现的。
8、Java语言是解释型的。
如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行。
在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。
9、Java是高性能的。
与那些解释型的高级脚本语言相比,Java的确是高性能的。
事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++。
10、Java语言是多线程的。
在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。
通常有两种方法来创建线程:
其一,使用型构为Thread(Runnable)的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。
值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。
线程的活动由一组方法来控制。
Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。
11、Java语言是动态的。
Java语言的设计目标之一是适应于动态变化的环境。
Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。
这也有利于软件的升级。
另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。
Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。
Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。
Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。
特别是Java企业应用编程接口(JavaEnterpriseAPIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。
1.1.2JSP的介绍
Jsp是JavaServerPage的缩写,是由Sun公司倡导、许多公司参与,于1999年推出的一种Web服务设计标准。
Jsp是基于JavaServlet以及整个Java体系的Web开发技术,利用这一技术可以建立安全、跨平台的先进动态网站。
JSP页面由HTML代码和嵌入其中的Java代码所组成。
服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。
JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。
JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
Jsp技术的优势:
(1)一次编写,到处运行。
在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。
基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。
相比ASP/PHP的局限性是显而易见的。
(3)强大的可伸缩性。
从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。
这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。
Jsp技术的弱势:
(1)与ASP一样,Java的一些优势正是它致命的问题所在。
正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。
(2)Java的运行速度是用class常驻内存来完成的,所以它在一些情况下所使用的内存比起用户数量来说确实是“最低性能价格比”了。
从另一方面,它还需要硬盘空间来储存一系列的.java文件和.class文件,以及对应的版本文件。
1.1.3MySQL简介
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。
在2008年1月16号被Sun公司收购。
而2009年,SUN又被Oracle收购。
MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。
这样就增加了速度并提高了灵活性。
MySQL的SQL“结构化查询语言”。
SQL是用于访问数据库的最常用标准化语言。
MySQL软件采用了GPL(GNU通用公共许可证)。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。
在2008年1月16号被Sun公司收购。
而2009年,SUN又被Oracle收购。
MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。
这样就增加了速度并提高了灵活性。
MySQL的SQL“结构化查询语言”。
SQL是用于访问数据库的最常用标准化语言。
MySQL软件采用了GPL(GNU通用公共许可证)。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
系统特性:
1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性
2.支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统
3.为多种编程语言提供了API。
这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。
4.支持多线程,充分利用CPU资源
5.优化的SQL查询算法,有效地提高查询速度
6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名
7.提供TCP/IP、ODBC和JDBC等多种数据库连接途径
8.提供用于管理、检查、优化数据库操作的管理工具
9.可以处理拥有上千万条记录的大型数据库
10.支持多种存储引擎
与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQLCluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。
对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。
LAMP
目前Internet上流行的网站构架方式是LAMP(Linux+Apache+MySQL+PHP/Perl/Python)和LNMP(Linux+Nginx+MySQL+php/perl/Python),即使用Linux作为操作系统,Apache和Nginx作为Web服务器,MySQL作为数据库,PHP/Perl/Python作为服务器端脚本解释器。
由于这四个软件都是免费或开放源码软件(FLOSS),因此使用这种方式不用花一分钱(除开人工成本)就可以建立起一个稳定、免费的网站系统。
1.1.4开发工具MyEclipse
MyEclipse
MyEclipse,是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。
在结构上,MyEclipse的特征可以被分为7类:
1.JavaEE模型
2.WEB开发工具
3.EJB开发工具
4.应用程序服务器的连接器
5.JavaEE项目部署服务
6.数据库服务
7.MyEclipse整合帮助 对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。
MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。
简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。
MyEclipse6.0以后版本安装时不需安装Eclipse。
1.2经济可行性
本系统开发应用之后主要用于员工信息的管理,便捷的操作,系统的管理模式,将为企业提高更多效率,提高企业经济效益。
尽管前期的投入可能高一点,需要开发软件以及与数据库建立连接,但是在过程和使用中会节省下来大量的人力和物力,而且JSP和MySQL是免费的,有开发周期短和高效率等优点。
因此该项目的开发成本很低,从这一点上来说,该系统经济上可行。
1.3操作可行性
由系统分系可以看出本系统的开发在技术上具有可行性。
首先系统对于服务器端和客户端所要求的软、硬件的最低配置现在大多数的用户用机都能达到。
现有的开发工具和技术(JSP、MySQL)完全能够实现。
本系统对管理人员和用户没有任何的特殊要求,实际操作基本上以鼠标操作为主并辅以少量的键盘操作,操作方式很方便。
因此该项目具有良好的易用性。
第二章需求分析
2.1功能需求
随着网络时代的到来和发展。
现在网络已经走进了不止千家万户。
最近统计我国网民数量已经达到了空前的6亿人。
成为世界第一大网络大国。
网络发展的背后也深深的影响着人们的生活方式。
人民可以足不出户只要动一动鼠标就可以把喜欢的东西送到家来,尤为方便。
有需求就有市场,网上购物成为了当代年轻人的新时尚,由此而引发的一个个购物网站B2B,B2C,C2C...层出不穷,方兴未艾。
电子商务迅速发展的同时,近年来3G网络也开始如火如荼。
3G网络的兴起刺激了智能手机的需求。
安卓,苹果,wp7智能的手机销售火爆。
因此基于购物网站,智能手机这两市场热点。
我做了一个专门销售手机的购物网站。
2.1.1系统目标
本系统实现了用户的注册,登录。
商品的展示,分页,购物车的实现,和价格的统计。
具体细节要求如下:
登陆页面要求>>
用户录入:
验证是否有非法字符和是否为空。
密码录入:
验证是否有非法字符和是否为空。
其他:
防止不用登录直接用地址登录(session验证)
禁止用户在同一个时间重复登录并提示倒计时5秒自动返回登录页面。
注册页面要求>>
*用户名:
查看用户名是否已经被使用?
(用ajax和jdbc实现)
:
检测输入的是否为字母和数字不能含有其他非法字符?
(用JavaScript的正则表达式)
:
长度不能小于六位?
(用JavaScript的正则表达式实现)
:
用户名不能为空?
用JavaScript的正则表达式实现)
*密码:
不能小于六位
:
不能为空
*确认密码:
密码是否匹配?
真实姓名:
不能含有非法字符
邮箱:
验证邮箱格式。
手机商品展示页面要求>>
:
显示登录的用户。
:
显示当前的页数。
:
对商品进行分页
:
重复购买提示。
购物车页面要求>>
:
更改购买的商品数量
:
删除购物车的商品
:
清空购物车
:
返回商品列表
:
统计商品总价
2.1.2功能分析
开发软件首先做的是开发过程中最主要的就是系统的需求分析,需求分析同时也是软件生存周期中关键的一步。
根据软件工程学中开发软件的要求,对系统全部功能和相关的技术进行具体的分析,分析时采用结构化的分析方法,自顶向下、逐层分解问题。
结合企业要求以及实际的具体分析,要求本系统具有以下功能:
⏹管理页面要求美观大方、个性化。
⏹实现用户注册,登录,商品列表的显示,购物车的结算。
⏹采用AJAX验证。
页面无刷新。
用户体验好
⏹网站操作流程简单、方便,能够提高工作效率。
2.1.3系统层次模块图
总的系统模块主要包括:
用户的注册;用户的登陆