在线手机商城的设计与实现.docx

上传人:b****5 文档编号:8105859 上传时间:2023-01-28 格式:DOCX 页数:18 大小:367.05KB
下载 相关 举报
在线手机商城的设计与实现.docx_第1页
第1页 / 共18页
在线手机商城的设计与实现.docx_第2页
第2页 / 共18页
在线手机商城的设计与实现.docx_第3页
第3页 / 共18页
在线手机商城的设计与实现.docx_第4页
第4页 / 共18页
在线手机商城的设计与实现.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

在线手机商城的设计与实现.docx

《在线手机商城的设计与实现.docx》由会员分享,可在线阅读,更多相关《在线手机商城的设计与实现.docx(18页珍藏版)》请在冰豆网上搜索。

在线手机商城的设计与实现.docx

在线手机商城的设计与实现

学号

 

课程设计报告

 

课程名称Web技术(JSP)课程设计

题目

在线手机商城的设计与实现

学部

专业

班级

姓名

指导教师

 

2013

12

26

WEB技术(JSP)课程设计任务书

题目:

在线手机商城的设计与实现

1.课程设计教学条件要求

课程设计开发平台与工具:

eclipse/Dreamweaver+JSP+SQLSERVER2005

2.课程设计任务

该系统主要完成在线手机类产品买卖交易平台的设计与实现,主要用于将手机产品直观地展现给客户,宣传每个手机产品的优劣及为客户提供手机商品在线预订和购买服务。

3.课程设计任务(功能)说明及功能模块图

该系统主要的功能包括:

手机分类检索、客户在线预订、最新手机推荐、热门手机浏览、手机详细资料显示、手机销售排行统计、手机商品分类管理等功能。

(1)用户注册登陆模块

用户注册登陆模块主要用于注册网上商城的会员,储存详细的客户档案,便于管理员管理现有会员,同时也有利于会员了解公司的最新产品资讯。

该模块的子功能有用户在线注册、用户登录管理和用户资料。

图2.1用户注册登陆模块图

(2)手机检索查询模块

图2.2手机检索查询模块图

(3)购物车管理模块

图2.3购物车管理结构图

 

(4)后台手机商品管理

图2.4后台商品信息管理结构图

(5)后台用户管理

图2.5后台用户管理

3.数据库设计

本系统主要设计一下几张表单:

(1)商品基本信息表:

存放网上商城销售商品的基本信息

(2)商品分类信息表:

存放网上商城商品分类的基本信息

(3)用户基本信息表:

存放网上商城注册用户的基本信息

(4)订单信息表:

存放与用户相关的订单基本信息

(5)订单条目信息表:

存放与订单有关的具体条目信息(订单中的商品价格以及数量)

(6)管理员信息表:

存放管理的用户名和密码等信息。

4.各模块的功能说明

整个系统主要包含以下功能模块:

(1)会员注册登录模块:

用来实现用户的注册及登陆功能、修改用户资料功能。

(2)商品检索查询模块:

产品的分类显示、热销商品排行显示。

(3)会员购物车管理模块:

会员购物车的显示和管理、订单生成和管理、选择付款方式等。

(4)后台商品信息管理模块:

用来对商品的增加、删除和修改功能。

(5)后台订单管理模块:

用来对用户的订单进行处理。

(6)后台用户管理模块:

管理员对注册用户信息进行维护。

目 录

1主要技术阐述

SQLServer2005是一个全面的数据库平台,使用集成的商业智能(BI)工具提供了企业级的数据管理。

MicrosoftSQLServer2005数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。

SQLServer2005数据引擎是该企业数据管理解决方案的核心。

此外MicrosoftSQLServer2005结合了分析、报表、集成和通知功能。

这使您的企业可以构建和部署经济有效的BI解决方案,帮助您的团队通过记分卡、Dashboard、Webservices和移动设备将数据应用推向业务的各个领域。

MVC是一个框架模式,它强制性的使的、和分开。

使用MVC应用程序被分成三个核心部件:

、、。

它们各自处理自己的任务。

最典型的MVC就是++的模式。

2总体规划与设计

2.1需求分析

近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并逐渐进入传统的流通领域。

于是网上商城开始流行起来,越来越多的商家在网上建起在线商城,向消费者展现出一种新颖的购物理念。

网上商城是一种具有交互功能的商业信息系统。

它向用户提供静态和动态两类信息资源。

所谓静态信息是指那些比经常变动或更新的资源,如公司简介、管理规范和公司制度等等;动态信息是指随时变化的学校,如公司报价,商城新闻和商城专题信息等。

网上商城系统具有强大的交互功能,可使商家和用户方便的传递学校,完成电子贸易或EDI交易。

这种全新的交易方式实现了公司文档与资金的无纸化交换。

2.2系统功能划分

优秀的网站需要各种类型的模块。

各种功能模块在网站中扮演着不同的角色,它是使网站和用户之间沟通的基本桥梁。

本网站分为前台模块和后台模块,网站前台是面向网站访问用户的,通俗的说也就是给访问网站的人看的内容和页面,如浏览手机等操作。

网站的后台通常需要帐号及密码等信息的登陆验证,登陆信息正确则验证而后进入网站后台的管理界面进行相关的一系列操作。

如管理员登陆登陆、修改注册信息等操作。

通过网站管理后台,可以有效的管理网站供浏览者查阅的信息。

当然,前台和后台都是程序人员做的开发的网站页面,通常开发带网站管理后台功能的网站空间必须支持程序语言和数据开发功能。

2.3数据库设计

表2-1商品基本信息photo表

字段名称

标识名称

数据类型

是否允许为空

完整性

Id

id

tinyint

主键

url

商品图片路径

varchar(255)

name

商品名

text

time

商品生产日期

datetime

xiaoliang

商品销量

bigint

price

商品价格

bigint

number

商品类别

tinyint

该表设计的作用是存放网上商城销售商品的基本信息。

表2-2商品分类信息photo1表

字段名称

标识名称

数据类型

是否允许为空

完整性

number

商品类别

Tinyint(4)

主键

name

商品名

tinytext

该表设计的作用是存放网上商城商品分类的基本信息。

表2-3用户基本信息user表

字段名称

标识名称

数据类型

是否允许为空

完整性

logname

登录名

varchar(20)

主键

password

密码

text

phone

联系电话

text

email

电子邮件

text

address

联系地址

text

realname

真实姓名

text

该表设计的作用是存放网上商城注册用户的基本信息。

表2-4订单信息xinxi表

字段名称

标识名称

数据类型

是否允许为空

完整性

id

id

tinyint

主键

name

商品名

text

price

商品价格

bigint

kucun

商品库存

bigint

number

商品数量

tinyint

url

商品路径

varchar

该表设计的作用是存放与用户相关的订单基本信息。

表2-5订单条目信息dingdanxinxi表

字段名称

标识名称

数据类型

是否允许为空

完整性

logname

登录名

varchar(20)

主键

address

联系地址

text

phone

联系电话

varchar(255)

fukuan

付款

text

该表设计的作用是存放与订单有关的具体条目信息(订单中的商品价格以及数量)。

表2-6管理员基本信息message表

字段名称

标识名称

数据类型

是否允许为空

完整性

logname

登录名

varchar(255)

主键

address

联系地址

text

该表设计的作用是存放管理的用户名和密码等信息。

3页面设计与编码

3.1界面设计

3.1.1首页界面

首页界面是该在线手机商城的主页,包括网页的导航和一些页面的链接,如图3.1

图3.1首页界面

3.1.2注册界面

该界面是该在线手机商城用户注册的基本信息,如图3.2

图3.2注册界面

3.1.3登陆界面

该界面为用户登陆功能,如图:

3.3

图3.3登陆界面

3.1.4浏览手机界面

该界面为用户浏览手机界面,带有导航条,可以实现功能的切换,有品牌分类和热销排行两类如图:

3.4

图3.4浏览手机页面

3.1.5注册信息修改界面

该界面为用户修改注册信息界面,带有导航条,可以实现功能的切换,界面显示用户曾经注册过的信息,用户可以在上面进行修改。

如图:

3.5

图3.5修改注册信息界面

3.1.6管理员功能界面

该界面实现管理员对商品与用户的管理,带有导航条,可以实现功能的切换,如图:

3.6

图3.6管理员登陆成功界面

手机商品管理分为三部分:

商品添加、商品查看、商品修改。

商品修改界面同商品添加界面一样。

如图所示

图3.7商品添加界面

图3.8商品查看界面

用户管理分为两部分:

添加用户、删除用户。

添加用户界面同用户注册界面一样。

如图所示

图3.9删除用户界面

3.1.7退出登陆界面

该界面实现用户退出,带有导航条,可以实现功能的切换,用户没登陆时提醒用户登陆,登陆界面同管理员登陆界面一样,用户已登陆时用户退出界面如图3.10

图3.10用户退出界面

3.2系统核心代码

3.2.1商品添加servlet代码

publicclassspAddextendsHttpServlet{

privatestaticfinallongserialVersionUID=1L;

privateConnectioncon;

privatePreparedStatementps;

privateResultSetrs;

privateStringresult;

protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{}

protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{

HttpSessionsession=request.getSession(true);

JavaBean.spAddr=newJavaBean.spAdd();

r.setId(request.getParameter("id"));

r.setUrl(request.getParameter("url"));

r.setName(request.getParameter("name"));

r.setTime(request.getParameter("time"));

r.setXiaoliang(request.getParameter("xiaoliang"));

r.setPrice(request.getParameter("price"));

r.setNumber(request.getParameter("number"));

Stringid=request.getParameter("id");

Stringurl=request.getParameter("url");

Stringname=request.getParameter("name");

Stringtime=request.getParameter("time");

Stringxiaoliang=request.getParameter("xiaoliang");

Stringprice=request.getParameter("price");

Stringnumber=request.getParameter("number");

try{

Class.forName("com.mysql.jdbc.Driver");

con=DriverManager.getConnection("jdbc:

mysql:

///mobile","root","123");

ps=con.prepareStatement("insertintophotovalues(?

?

?

?

?

?

?

)");

ps.setString(1,id);

ps.setString(2,url);

ps.setString(3,name);

ps.setString(4,time);

ps.setString(5,xiaoliang);

ps.setString(6,price);

ps.setString(7,number);

ps.executeUpdate();

if(id.contains(",")||id.contains(",")){

result="注册失败(用户名中不能有逗号),请重新注册,3秒后页面自动跳转……";

response.setHeader("refresh","3;URL=/mobile/spAdd.jsp");

}

else{

result="商品添加成功!

";

session.setAttribute("JavaBean.spAdd",r);

}

}

catch(Exceptione){

e.printStackTrace();

result="注册失败(用户名不能重复),请重新注册,3秒后页面自动跳转……";

response.setHeader("refresh","3;URL=/mobile/spAdd.jsp");

}

finally

{

try{

ps.close();

con.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

request.setAttribute("result",result);

request.getRequestDispatcher("/mobileMessage.jsp").forward(request,response);

}

}

3.2.2订单servlet代码

publicclassdingdanextendsHttpServlet{

privatestaticfinallongserialVersionUID=1L;

privateConnectioncon;

privatePreparedStatementps;

privateResultSetrs;

Stringresult=null;

protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{}

protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{

Stringlogname=request.getParameter("logname");

Stringaddress=request.getParameter("address");

Stringphone=request.getParameter("phone");

Stringfukuan=request.getParameter("fukuan");

try{

Class.forName("com.mysql.jdbc.Driver");

con=DriverManager.getConnection("jdbc:

mysql:

///mobile","root","123");

ps=con.prepareStatement("insertintodingdanxinxivalues(?

?

?

?

)");

ps.setString(1,logname);

ps.setString(2,phone);

ps.setString(3,address);

ps.setString(4,fukuan);

ps.executeUpdate();

}

catch(Exceptione){

e.printStackTrace();

}

finally

{

try{

ps.close();

con.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

request.setAttribute("result","您已购买成功,请在购物车中查看您所购买的宝贝");

request.getRequestDispatcher("/show.jsp").forward(request,response);

}

}

3.2.3购物车jsp代码

我的购物车

<%

Stringresult=(String)session.getAttribute("result");

if(result!

=null)

out.print("

"+result+"

");

%>

<%

Stringnumber=(String)session.getAttribute("number");

%>

>

数量:

4总结

在这次课程设计过程中,在这与代码为伴的三个星期里,我真的收获了很多。

这次JSP课程设计,既巩固了这学期学的jsp知识,又复习了关于数据库和java的知识,更是学会了如何将所学知识运用到实际,真正的应用到网站开发中来。

这次课程设计还有一个额外收获,就是初步学会了用JSP开发网页。

虽然做出来的网页不是特别美观,有些地方还存在一些瑕疵,但是从对网页编程一窍不通到能做出一个功能基本完善的简单的毕业设计选题系统,一步步走来,其中收获的不仅仅是全新的知识,对于自学能力、动手能力、合作能力甚至接受挑战的勇气方面的影响,也都是巨大的。

对于我来说,以前只接触过简单的连接数据库,所以一开始听说要编网页的时候,实在是缺乏信心,在编程过程中遇到一些棘手的问题的时候,甚至一度想要逃避,可最终还是坚持下来了。

虽然这点小程序对于熟练掌握网页编程语言的人来说不算什么,但对于我来说,没有接触过的东西,就是一个新挑战,任何语言的学习,在入门的时候都是最困难的。

现在对于网页编程已经有了一个初步的了解,对于有些概念的理解还不是很准确,不过会努力在以后的学习过程中慢慢理解,在以后的编程过程中慢慢熟悉这些概念。

除了学习新语言的收获外,在编程过程中对于功能的实现、一些异常的处理还有界面的设计,也有着很深的感触。

JSP让我接触到了全新的网页编程,也让我知道,学无止境,想要全面深入的掌握一门语言,还是要付出很大的努力的。

但是也有不足之处,就是我所写的系统中购物车写的不完善,这个问题是出现在对需求分析的时候没有考虑好,希望在以后的学习中能做的更好。

参考文献

[1]张思民.Java语言程序设计(第2版)[M].北京:

清华大学出版社,2012.1

[2]耿祥义.JSP实用教程(第2版)[M].北京:

清华大学出版社,2007.10

[3]蒋卫祥.J2EE案例开发教程[M].北京:

化学工业出版社,2011.5

[4]刘中兵.开发者突击:

JavaWeb主流框架整合开发(J2EE+Struts+Hibernate+Spring)(第2版)[M].北京:

电子工业出版社,2011.3

[5]赵俊峰.JavaWeb应用开发案例教程——基于MVC模式的JSP+Servlet+JDBC和AJAX[M].北京:

清华大学出版社,2012.1

[6]王林玮.精通JSP开发应用[M],北京:

清华大学出版社,2012.11

[7]唐友国.JSP网站开发详解[M],北京:

电子工业出版社,2008

[8]ScottHogg,EricVyncke.Object-OrientedandClassicalSoftwareEngineering[M].北京:

机械工业出版社,2011

[9]CayS.HorstmannGaryCornell.CoreJava,VolumeI--Fundamentals(8thEdition)[M].北京:

机械工业出版社,2008.6

[10]徐婉珍.JSP动态网站开发项目教程[M].北京:

电子工业出版社,2010.10

[11]何玉洁.数据库原理与应用教程.北京:

北京机械工业出版社,2010

[12]耿祥义、张跃平.JSP大学实用教程(第2版).北京:

北京电子工业出版社,2012

[13]Metsker,S.J.DesignPatternsinJava(TM)(SoftwarePatternsSeries)[M].Addison-WesleyProfessional;2edition.2012.9

课程设计评分表

评分标准:

1.学生是否严格遵守课程设计纪律,按照规定时间完成设计任务(占30%)

2.程序设计的质量与规范:

(占40%)

(1)是否采用了良好的设计方法,独立完成程序设计

(2)程序界面设计是否合理、美观

(3)数据库设计

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

当前位置:首页 > 工作范文 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1