jsp课程设计 17.docx
- 文档编号:10156186
- 上传时间:2023-05-24
- 格式:DOCX
- 页数:20
- 大小:152.82KB
jsp课程设计 17.docx
《jsp课程设计 17.docx》由会员分享,可在线阅读,更多相关《jsp课程设计 17.docx(20页珍藏版)》请在冰点文库上搜索。
jsp课程设计17
辽宁工业大学
动态网页设计课程设计(论文)
题目:
运动球类销售网站
院(系):
软件学院
专业班级
教师职称:
助教
起止时间:
2012.12.4至2012.12.18
程序设计专题(报告)任务及评语
院(系):
软件学院教研室:
软件教研室
学号
程序设计(报告)题目
运动球类销售网站
程序设计(报告)任务
程序设计专题的任务与要求:
(1)掌握JSP编程、面向对象的基础知识。
(2)较熟练地编写基于JSP技术的动态网页。
(3)了解JSP的内置对象、Bean、Servlet编程等编程技术。
(4)联系已学过的内容,巩固所学的理论,增强独立工作能力。
(5)通过设计主要使学生有一个独立编写程序的过程,对理论学习及动手能力都有一个很大的提高。
(6)通过本次设计,进一步培养学生热爱专业的思想,同时对本专业综合素质的提高起一个积极的推动作用。
课程设计过程中,要严格遵守实践环节的时间安排,听从指导教师的指导。
正确地完成上述内容,记录实习日记,规范完整地撰写出课程设计报告。
指导教师评语及成绩
成绩:
指导教师签字:
2012年12月24日
目录
第1章实训的目的与要求1
1.1实训设计目的1
1.2实训设计的实验环境1
1.3实训设计的预备知识1
1.4实训设计要求1
第2章实训设计内容2
2.1开发背景简述2
2.2系统设计内容2
2.3需求分析4
2.3.1系统逻辑设计4
2.3.2系统功能需求分析5
2.4系统实现6
2.4.1系统的详细设计6
2.4.3程序源代码10
2.5测试分析12
第3章实训总结14
参考资料15
第1章实训的目的与要求
1.1实训设计目的
《动态网页设计》是计算机相关专业的必修专业基础课程,其实践性、应用性很强。
实践教学环节是必不可少的一个重要环节。
本课程的程序设计专题实际是计算机相关专业学生学习完《JAVA程序设计》及《动态网页设计》等课程后,进行的一次全面的综合训练,JSP动态网页设计的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及其在网络开发中的广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。
1.2实训设计的实验环境
硬件要求能运行Windows2000操作系统的微机系统。
JSP动态网页设计语言及相应的集成开发环境:
J2SDK和ECLIPSE开发工具及Tomcat服务器。
1.3实训设计的预备知识
熟悉JAVA语言及ECLIPSE开发工具、Tomcat服务器。
1.4实训设计要求
按JSP动态网页设计的设计指导书提供的课题,要求学生在自行完成各个操作环节,并能实现且达到举一反三的目的,完成一个项目解决一类问题。
要求学生能够全面、深入理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题;对此能够较好地理解和掌握,能够进行简单分析和判断;能编写出具有良好风格的程序;掌握JSP动态网页设计的基本技能和面向对象的概念和方法编程技术。
同时培养学生进行分析问题、解决问题的能力;培养学生进行设计分析、设计方法、设计操作与测试、设计过程的观察、理解和归纳能力的提高。
第2章实训设计内容
2.1开发背景简述
随着网络技术与信息技术的发展,因特网与企业经营活动的结合创造了新的网络经济,使企业的经营活动由传统经营模式转向产品发布、网络营销、交易管理等的电子化,迎来了崭新的电子商务时代。
本文是一种基于JSP+SQLServer技术研究的运动球类销售网站,通过介绍JSP网站的三层结构模式,充分体现了JSP技术的优势,并通过对开发过程的详细介绍,给出了使用JSP技术构建中小企业的电子商务网站的具体实现方法。
本文研究的在线运动球类销售系统实现了用户端在线浏览运动球类信息、开通网上购物车、在线提交订单等功能。
管理员通过本系统可以添加运动球类及运动球类分类、管理用户、管理订单、统计销售量等。
与传统销售行为相比,在线运动球类销售系统为用户和商家都提供了最高的效率和最便捷的手段。
在线运动球类销售系统是一个典型的电子商务网站。
而看似神秘的电子商务并不是一个新的概念,也不是近年才兴起的新型经济活动。
确切的说,早在70年代,企业就已经开始了不同类型的电子交易活动,如银行间的资金转账等。
在一定意义上说,数据交换(EDI)是电子商务的雏形和前身,随着互联网技术的发展,使电子商务的环境有了极大的改善并使电子商务的概念不断扩大。
美国电子商务工作委员会对电子商务作了一个简单明了的定义:
以电子形式买卖商品和服务的系统叫电子商务。
在中国我们普遍认为电子商务是在技术、经济高度发达的现代社会里,掌握信息技术和商务规则的人,系统化地运用电子工具,高效率、低成本、安全、可靠、方便地从事以商品交换为中心的种种经济事务活动的总称。
而在线运动球类销售系统也正是利用了电子信息技术,以互联网为媒介进行商务活动。
2.2系统设计内容
这是一个网上购物的系统,根据需求,用户除了可以查询商品的所有基本信息(如商品名价格及有关商品信息描述)外,还能了解商品的最新动态,商品的销售排行,最新商品和特价商品的查询。
用户可以进行购物,查看购物车及查看订单的操作。
用户需要登录和注册个人账户,同时可以修改个人信息。
要求数据的安全性,完整性。
要有安全保密、上下级数据一致性功能,要采用严格的用户权限管理。
各单位只能拥有自己相应的操作权限,不可越权操作。
各单位只可操作本单位的数据,不可修改甚至浏览其他单位的数据。
对于在线运动球类销售系统的用户,最终和最重要的功能无疑是在线购物行为的完成,针对在线购物行为,用户对系统的功能需求可以细分为以下几个方面:
运动球类产品查询
(1)运动球类查找
在本功能中,用户需要能够按照多种方法迅速找到需要的运动球类产品,对应的,系统需要提供多种查询方法,如按运动球类名称查询、按球类查询、按户外室内运动查询、按销售排行查询和分类查询等。
同时,系统应该能够准确反馈查询结果,这个结果可以只是一个简单的列表,运动球类详细信息的查询可以作为链接以节省系统开销,提高重用性。
如果库存中没有用户所查询的运动球类产品,系统应该及时返回没有该运动球类的查询消息。
(2)运动球类详细信息查看
在用户决定购买之前需要详细了结运动球类产品信息,包括运动球类名称、分类名称、价格和运动球类封面等。
购买行为参考及实施
(1)运动球类销售排行查询
运动球类销售排行榜对于用户购买运动球类产品的行为有指导作用,排行榜的前几位通常在相当的一段时间里会有不错的销售成绩。
(2)购物车
用户需要类似实体店购物车功能的一个模块来存放一部分不能马上做出购买决定,还需要综合权衡的运动球类产品。
(3)填写提交及支付
对于决定购买的产品用户需要填写订单进行购买,系统必须提供一个填写和提交订单的平台,同是要提供足够安全的信道传送用户支付信息。
(4)查看订单状态
用户对于已经完成的订单有查询其状态的需要,系统应该能够在接到用户查询请求时,将订单的实时状态准确及时地告知用户。
用户个人信息设置及更新
用户在网站注册后,需要随时可以查询自己的个人信息,同时应该具有随时更新设置的权利。
用户数据需求
经过调查,在线运动球类销售系统的用户需要运用的数据主要包括如下几种。
用户需要获得的数据
运动球类产品信息及相关销售信息、用户积分等数据。
用户需要存储的数据
(1)用户的个人信息
(2)用户的购物车信息
(3)用户订单信息
2.3需求分析
2.3.1系统逻辑设计
1.总体E-R图
对比传统实体店,并结合在线购物的特点,综合系统功能分析,本系统的需求信息主要有:
用户分一般用户和管理员用户。
订单分单张详细订单和总订单。
每一张运动球类都从属于一种类型。
一个用户可以购买多张运动球类。
一个用户对应一张订单列表信息。
一个列表对应多张订单信息。
经过系统数据库的功能分析和需求总结,将数据项和数据结构做如下设计:
(1)管理员信息,包括数据项:
用户名、密码
(2)普通用户,包括数据项:
用户ID、用户名、密码
(3)运动球类,包括数据项:
运动球类编号、运动球类名称、分类编号等
(4)运动球类分类,包括数据项:
分类编号、分类名
(5)订单列表,包括数据项:
订单编号、运动球类编号、购买数量
(6)订单,包括数据项:
订单编号、用户编号、下单时间等
实体之间关系的E-R图如图2.1所示。
图2.1总体E-R图
2.表关系
数据库概念结构设计完毕后,可以将数据库概念结构转化为SQLServer数据库系统所支持的实际数据模型,就构成了数据库的逻辑结构。
在线运动球类销售系统数据库中主要表的设计结果如表2.1和表2.2所示。
评价表(Appraise):
用来存储用户对商品的评价以及个人对物品的观点。
方便其他用户对物品进一步了解。
如表2.1
表2.1用户评价表
列名
中文名
类型
宽度
是否允许为空
pkid(主键)
评价编号
bigint
8
NOTNULL
fk_BuyUserId
购买者编号
bigint
8
NOTNULL
AppMark
评分
int
4
NOTNULL
AppContent
评价内容
nvarchar
250
NULL
表2.2用户信息表shop_user
Field
Type
Null
Key
Default
Extra
Comment
Id
int
PRI
(NULL)
IDENTITY(1,1)
主键,递增
UserName
varchar(20)
用户名
PassWord
varchar(50)
密码
Names
varchar(20)
YES
(NULL)
真实姓名
Sex
char
(2)
YES
(NULL)
性别
Address
varchar(450)
YES
(NULL)
地址
Phone
varchar(25)
YES
(NULL)
联系电话
Post
varchar(8)
YES
(NULL)
邮编
varchar(50)
YES
(NULL)
E-mail地址
RegTime
datetime
YES
(NULL)
注册时间
RegIPAdress
varchar(20)
YES
(NULL)
注册IP
2.3.2系统功能需求分析
1.系统功能模块图
客户界面功能模块图如图2.2所示。
图2.2客户界面功能模块图
2.系统简单的流程图
登陆功能流程图如图2.3所示。
图2.3登陆功能流程图
购买功能流程图如图2.4所示。
图2.4购买功能流程图
2.4系统实现
2.4.1系统的详细设计
为了提高代码的重用性,在线运动球类销售系统的界面采用框架形式,即页面头尾部分只需要设计一次。
之后的jsp文件,其中只需写上以下两句代码,就可以看见页面头尾效果。
<%@includefile=”inc/head.inc”>
<%@includefile=”inc/tail.inc”>
用户图形界面的设计
(1)用户登陆模块设计
为了验证用户是否合法,系统需要用户提供用户名和密码来进行验证,这一功能由用户登陆模块完成。
本模块需要运用login.java这个bean,来设计一个表单让用户输入用户名和密码。
在本模块中,对于用户输入的用户名和密码,系统在发现错误时,应及时做出错误报告。
(2)在线购买功能模块设计
针对用户界面,由于“运动球类列表”和用户导航条等部分是只有用户界面可以看到的,所以将这两部分设计成一个新的框架形式,提高复用性。
在本模块中用户可以浏览现有运动球类、用不同的方法查找运动球类(分类查询、关键字查询)、查看运动球类详细资料、把运动球类放入购物车、转到其他模块等。
图2.5公告信息模块的预览效果
图2.6留言板功能模块运行截图
(3)我的购物车功能模块设计
在本模块中,用户可以修改购买数量、删除已经选购的运动球类、提交购物车(在提交时可以简单附言说明)、清空购物车、继续购买或查询运动球类、转到其他模块等。
本模块中用户可以看见自己已经提交的所有订单,可以查看订单的详细情况。
确认订单时,系统采用弹出窗口的形式显示相信信息,在弹出窗口中可以进行付款。
(4)销量统计功能模块设计
这个模块可以显示销量排名在前100的运动球类名称和数量。
销量统计模块首先生成销量统计管理类op_sale_statistics的实例对象,然后调用该对象的getSaleNumOrder()方法,从数据库取出销量前100名的运动球类的名称和销售数量并显示在页面上。
销量统计功能模块的运行效果图如图2.9所示。
管理员图形界面的设计
(1)管理员登陆功能模块设计
为了验证管理员的身份,系统需要进行用户名和密码的验证,与用户图形界面的设计类似,本模块也需要运用login.java这个bean,设计一个表单让管理员输入用户名和密码。
(2)现有运动球类管理功能模块设计
在这个模块里,管理员拥有对现有运动球类的详细资料进行查看、修改运动球类名称、删除运动球类
等权限。
图2.9物流功能模块的运行效果图
(3)添加新运动球类功能模块设计
在这个模块中,要添加一段JavaScript代码,对表单数据的合法性进行验证。
functioncheckform(){
if(document.form1.运动球类name.value==""){
document.form1.运动球类name.focus();
alert("运动球类名为空!
");
returnfalse;
}
if(document.form1.Singer.value==""){
alert("为空!
");
document.form1.Singer.focus();
returnfalse;
}
returntrue;
}
(4)添加新运动球类分类功能模块设计
这个模块列出了商店现有运动球类分类,管理员可以删除现有分类,也可以添加新的分类。
但在删除操作之前,通过在连接的onclick事件里调用confirm方法,提醒用户是否真的要删除选中的信息,减少误操作。
(5)订单管理功能模块设计
管理员可以查看下订单用户的详细资料、查看订单的详细情况并且可以删除订单。
订单管理模块中首先生成op_buy类的对象,然后调用该对象的ger()Order方法,取得当前商店的所有订单,分页显示在页面上,下单用户名提供链接,当管理员在用户名列单击某个用户名时,能够弹出新的页面显示该用户的详细资料。
然后为每个订单提供查看订单详细情况和删除订单的链接,当管理员单击“详细情况”链接时能够弹出新的窗口显示订单信息。
当管理员单击“删除”链接时弹出提示,提示管理员是否确认删除当前订单,如果管理员选择“是”,则从数据库删除该订单,如果选择“否”,则退回详细订单情况页面。
(6)用户管理功能模块
管理员通过这个模块对用户进行管理,其中包括:
查看用户资料、修改用户资料、删除已存在用户等。
2.4.3程序源代码
登陆系统代码如下:
<%@pagecontentType="text/html;charset=gb2312"%>
电子运动球类店登录
<%
Stringwarning=request.getParameter("warning");
if(warning!
=null)
out.println("
"+warning+",请重新登录!
");
%>
。
主页面代码如下:
<%@pagecontentType="text/html;charset=gb2312"import="java.sql.*"%>
<%@includefile="check.jsp"%>
<%@includefile="top.jsp"%>
useBeanid="conn"class="dbBean.DBBean"scope="session"/> setPropertyname="conn"property="connStr"value="jdbc: odbc: bookstore"/>
序号
运动球类名
作者
出版社
价格
<%
ResultSetrs=null;
Stringsql="select*frombookorderbysalenumdesc";
rs=conn.executeQuery(sql);
intnum=1;
while(rs.next()&&num<=10){
Stringbookid=rs.getString("bookid");
out.println("
out.println("
out.println("
detailid="+bookid+"'>"+rs.getString("bookname")+"
out.println("
out.println("
out.println("
num++;}
%>