毕业设计论文电子商务系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
毕业论文声明
本人郑重声明:
1.此毕业论文是本人在指导教师指导下独立进行研究取得的成果。
除了特别加以标注地方外,本文不包含他人或其它机构已经发表或撰写过的研究成果。
对本文研究做出重要贡献的个人与集体均已在文中作了明确标明。
本人完全意识到本声明的法律结果由本人承担。
2.本人完全了解学校、学院有关保留、使用学位论文的规定,同意学校与学院保留并向国家有关部门或机构送交此论文的复印件和电子版,允许此文被查阅和借阅。
本人授权大学学院可以将此文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本文。
3.若在大学学院毕业论文审查小组复审中,发现本文有抄袭,一切后果均由本人承担,与毕业论文指导老师无关。
4.本人所呈交的毕业论文,是在指导老师的指导下独立进行研究所取得的成果。
论文中凡引用他人已经发布或未发表的成果、数据、观点等,均已明确注明出处。
论文中已经注明引用的内容外,不包含任何其他个人或集体已经发表或撰写过的研究成
果。
对本文的研究成果做出重要贡献的个人和集体,均已在论文中已明确的方式标明。
学位论文作者(签名):
年月
关于毕业论文使用授权的声明本人在指导老师的指导下所完成的论文及相关的资料(包括图纸、实验记录、原始数据、实物照片、图片、录音带、设计手稿等),知识产权归属华北电力大学。
本人完全了解大学有关保存,使用毕业论文的规定。
同意学校保存或向国家有关部门或机构送交论文的纸质版或电子版,允许论文被查阅或借阅。
本人授权大学可以将本毕业论文的全部或部分内容编入有关数据库进行检索,可以采用任何复制手段保存或编汇本毕业论文。
如果发表相关成果,一定征得指导教师同意,且第一署名单位为大学。
本人毕业后使用毕业论文或与该论文直接相关的学术论文或成果时,第一署名单位仍然为大学。
本人完全了解大学关于收集、保存、使用学位论文的规定,同意如下各项内容:
按照学校要求提交学位论文的印刷本和电子版本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、扫描、数字化或其它手段保存或汇编本学位论文;学校有权提供目录检索以及提供本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有关部门或者机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权大学可以将本学位论文的全部或部分内容编入学校有关数据库和收录到《中国学位论文全文数据库》进行信息服务。
在不以赢利为目的的前提下,学校可以适当复制论文的部分或全部内容用于学术活动。
论文作者签名:日期:
指导教师签名:日期:
摘要
电子商务网站能够为企业和用户提供综合信息服务,满足人们在生活、工作和学习方面的需求,同时对企业实现跨地区、跨行业、跨国经营发挥了重要的作用。
课题的主要工作是通过应用Struts 2.0+SQL Server 2000开发一个流行的电子商务网站——都市供求信息网,实现为用户提供信息服务,并尽可能多地提供各类信息,例如求职、招聘、培训、招商、房屋、车辆、出售、求购等信息。
课题主要设计并实现了信息显示、信息查询、信息发布、信息删除、信息审核以及付费设置等模块,课题发布后,可以为用户生活、工作和学习提供便利,同时提高企业知名度,为企业产品宣传节约大量成本。
论文首先分析了用户需求,对完整系统功能进行规划。
其次,采用SQL Server 2000数据库实现信息实体、信息类别实体以及管理员实体的存取。
利用Struts2.0框架和Tomcat服务器完成了各个模块的设计。
论文所实现的系统功能满足了对城市供求信息网对信息显示、查询、发布以及后台进行信息审核、信息删除的相关功能的需求,软件界面美观,操作方便,具有易维护性和易操作性。
关键词:商务网站;供求信息;Struts2.0;Tomcat服务器;信息发布
Abstract
Electronic Commerce website can supply the information service to the customer and enterprise, at the same time, it can provide the life, work, learning to people, at the same time, it influence the stride over area to, cross-frontier, enterprise realization.
The main problem part works is that 2000 develops a popular Electronic Commerce website-city supply and demand information net by applying Struts 2.0 + SQL Server, come true for the consumer provides information service, information such as, building, vehicle providing information of all kinds, for example job wanted, recruiting, traininging, invite doing business, selling, the demand buying as far as possible many together field, information having designed and realizing Visualization inquire about, information announces, information deletes, information examines and verifies as well as paying a problem mainly interpose wait for the module, the problem to announce the queen, can be that the consumer lives, the job and study about provide to improve enterprise notability for the convenience of, at the same time, be that the enterprise product propagates economy large amount of cost.
First of all, the thesis has analyzed the usefull of made use of the consumer requirement, has carried out a plan on entire system function. Secondly, adopt the SQL Server 2000 data bases realization information entity, information category entity and administrative person entity access. Make use of the Struts2.0 frame and the Tomcat server to have accomplished each modules design.
System function realized by thesis has been satisfied with city supply and demand information net to Visualization, has inquired about, announced as well as the information being in progress examines and verifies, the functional need of relevance, software interface that information deletes beautiful, handle on the backstage to defend nature convenient, easy to have gentle operatability.
Keywords: Business website; upply information; Struts2.0; Tomcat server; Information Release
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:日期:
指导教师签名:日期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:日期:
学位论文原创性声明
本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:日期:年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:日期:年月日
导师签名:日期:年月日
目录
摘要 (I)
Abstract (III)
第 1 章引言 (1)
1.1 课题的研究目的和意义 (1)
1.2 国内外发展状况 (1)
1.3 研究内容及目标 (2)
第 2 章开发方法及关键技术简介 (3)
2.1 开发工具与运行环境 (3)
2.2 关键技术简介 (3)
2.2.1 Struts技术 (4)
2.2.2 数据库技术 (4)
2.3 主要问题及解决手段 (4)
第 3 章总体设计 (6)
3.1 总体设计 (6)
3.2 功能设计 (7)
3.3 数据库设计 (8)
第 4 章详细设计 (10)
4.1 公共类设计 (10)
4.1.1 数据库连接及操作类 (10)
4.1.2 业务处理类 (11)
4.1.3 分页类 (12)
4.2 前台页面设计 (13)
4.2.1 前台页面概述 (14)
4.2.2 前台页面的实现过程 (14)
4.3 前台信息显示设计 (15)
4.3.1 首页信息的列表显示 (15)
4.3.2 某类别中所有信息的列表显示 (16)
4.3.3 某信息详细内容的显示 (17)
4.3.4 信息列表显示中的分页技术 (18)
4.4 信息发布模块设计 (19)
4.4.1 信息发布模块概述 (19)
4.4.2 信息发布模块的表单验证 (20)
4.4.3 信息发布模块的实现过程 (21)
4.5 后台登陆模块设计 (22)
4.5.1 后台登陆模块功能概述 (22)
4.5.2 后台登陆模块程序实现 (23)
4.6 后台页面设计 (25)
4.6.1 后台页面概述 (25)
4.6.2 后台信息管理功能概述 (26)
4.6.3 信息显示模块 (28)
4.6.4 信息审核模块 (29)
4.6.5 信息删除模块 (29)
4.6.6 信息付费设置模块 (30)
第 5 章结论 (31)
参考文献 (32)
致谢 (34)
第 1 章引言
1.1课题的研究目的和意义
电子商务网站能够为企业和用户提供综合信息服务,满足人们在生活、工作和学习方面的需求,同时对企业实现跨地区、跨行业、跨国经营发挥了重要的作用。
本课题的实现需要对电子商务网站概念、作用、功能和特点进行了较详细的了解,并且对B2C及C2C两种商务网站建设的交易模式进行较全面的研究。
目前,面临全球经济衰退,全球化的经济危机令很多企业遭遇困境,大量的国内外企业倒闭或裁员,因此如何获得信息成为人们和企业都急需解决的一大问题。
面临困境的企业和失业的人们都纷纷涌至网上寻求契机,企业需要人才,人们需要工作,对于开发一个能够为企业和用户提供综合信息服务的电子商务网站无疑是一个发展良机。
面对目前的经济形式,为了满足现代城市企业和城市居民的生活,工作以及学习的需求,有必要开发一个都市供求信息网络平台,一方面都市供求信息网能够为企业节省大量人力资源,企业不再需要大量的业务人员去跑市场,从而间接为企业节约了成本;另一方面,都市供求信息网能够收集大量供求信息,将会有大量用户访问网站,有助于提高企业知名度,同时缓解城市就业压力,因此具有十分重要的意义。
1.2国内外发展状况
(1) 国内方面
我国在计算机拥有量、互联网用户、网站数等方面飞速增长,同时推动了信息网站的发展。
信息网站的交易模式也呈现出多样化。
现在我国的B2B、B2C和C2C都已比较成熟,而且都有几个比较突出的代表。
B2B主要是进行企业间的产品批发业务。
代表网站有阿里巴巴。
B2C主要是电子商务零售业,顾客直接与商家接触。
代表网站:当当网和卓越网。
C2C主要是用户对用户的商业模式,通过为买卖双方提供一个在线交易平台,使卖方可以主动提供商品上网拍卖,而买方可以自行选择商品进行竞价。
代表网站有易趣网和淘宝网。
(2) 国外方面
供求信息网站是以不受国界限制的全球性网络Internet为运行平台的,这一快捷的贸易方式可以安全的为全社会服务。
目前,从世界范围的角度来看,信息化电子商务网络的成功应用大多是在发达国家,尤其是美国和欧洲。
世界各国都在大力发展信息基础设施的建设,更新全国通讯网络,建立和完善网上商店的供货共享系统,加强信息网站技术的研究,推动信息网站的标准化。
美国是信息网站开展较早的国家,在许多领域处于全球领先水平,成为其他国家开展信息网络的示范,目前占全球电子商务市场的79.1%。
目前国际贸易形势发生了很大变化,信息网络的发展势头强劲,更促进了国际贸易经济的发展。
1.3研究内容及目标
(1) 主要任务及要求
①应用Struts 框架开发一个流行的电子商务网站——都市供求信息网。
②网站要求为用户有偿或无偿提供尽可能全面的信息,涵盖生活、工作与学习各方面,如求职、招聘、家教、招商、房屋、车辆、出售、求购等信息。
③一方面为用户的生活、工作提供方便,另一方面提高企业知名度,为企业产品宣传节约大量成本。
④根据用户的需求,网站中发布的信息要准确、有效、全面,对一些非法、不健康的信息要及时删除。
还应加强网站的安全性,避免在遭受到有意或无意的破坏时,导致系统瘫痪,造成严重损失。
(2) 预期目标
①界面设计友好、美观。
②在首页中提供预览信息的功能,并且信息分类明确。
③用户能够方便地查看某类别中的所有信息和信息的详细内容。
④能够实现站内信息搜索,如定位查询、模糊查询。
⑤对用户输入的数据,能够进行严格的数据检验,并给予信息提示。
⑥具有操作方便、功能强大的后台信息审核功能。
⑦具有操作方便的后台付费设置功能。
⑧具有易维护性和易操作性。
第 2 章开发方法及关键技术简介
2.1开发工具与运行环境
(1)开发工具
根据整个课题的开发计划,采用的开发工具是MyEclipse6.0,并采用Tomcat 6.0作为Web服务器,采用SQL Server 2000数据库,应用Struts 2.0开发框架。
MyEclipse开发工具是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。
本课题利用MyEclipse 开发工具进行Java Web开发,MyEclipse中支持Tomcat插件,可以方便的控制Tomcat应用服务器的状态[1]。
Tomcat 是一个小型的轻量级应用服务器,Tomcat服务器除了能够运行Servlet 和JSP,还提供了作为Web服务器了一些特有的功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。
Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能。
本课题利用Tomcat服务器响应对HTML页面的访问请求,Tomcat作为Servlet容器负责处理客户请求,把请求传送给Servlet并把结果返回给客户。
(2)运行环境
①软件环境
操作系统:Windows XP。
Web服务器:Tomcat 6.0。
Web开发框架:Struts 2.0。
Java开发包:JDK 1.5。
数据库:SQL Server 2000。
浏览器:IE 6.0。
②硬件环境
对硬件环境无具体要求。
2.2关键技术简介
2.2.1Struts技术
本课题采用Struts框架结构设计并实现了一个基于Struts的都市供求信息网站。
它提供了一套框架用来方便地构建Web应用[2]。
Struts是建立在当前动态网站设计领域中JSP、Servlet、XML等相关开发技术基础之上的一种主流开发架构,具有组件模块化、灵活性和重用性的优点,同时极大地简化了Web应用程序的开发。
它合理地将用户表示逻辑、业务逻辑和控制逻辑分离,使得开发过程变得简洁清晰,并提高了软件的可维护性和可重用性。
2.2.2数据库技术
数据库的设计在本课题中起着至关重要的作用,它决定了在后面的开发中如何进行程序编码。
一个合理、有效的数据库设计可降低程序的复杂性,使程序开发的过程更为容易。
本课题是一个中型的供求信息网站,考虑到开发成本、用户信息量及客户需求等问题,采用Microsoft SQL Server 2000作为项目中的数据库[3]。
Microsoft SQL Server是一种客户/服务器模式的关系型数据库,它具有很强的数据完整性、可伸缩性、可管理性、可编程性;具有均衡与完备的功能;具有较高的性价比。
SQL Server数据库提供了复制服务、数据转换服务、报表服务,并支持XML语言。
使用SQL Server数据库可以大容量地存储数据,并对数据进行合理的逻辑布局,应用数据库对象可以对数据进行复杂的操作。
SQL Server 2000也提供了JDBC编程接口,这样可以非常方便地应用Java来操作数据库[4]。
2.3主要问题及解决手段
(1)对于已登录的用户要跳过登录页面,直接进入后台主页
课题中实现该功能的主要技术就是:在当前用户登录成功后,向session中注册一个属性,并为该属性赋值,当用户再次单击“进入后台”超链接时,在程序中先获取存储在session中该属性的值,然后通过判断其值来得知当前用户是否已经登录,从而决定将请求转发到登录页面还是后台首页。
(2) Struts 2.0中的中文乱码问题
在Struts 2.0中解决中文乱码的问题,可在struts.properties文件中进行如下配置。
struts.i18n.encoding=gb2312
struts.i18n.encoding用来设置Web应用默认的编码,gb2312则指定了默认的编码。
该方法可以解决提交表单后出现的中文乱码问题。
此时,表单的method属性值必须为post,若使用Struts 2.0中的form标签实现的表单,可省略method属性,默认值为post;若是通过原始的HTML语言的form标识实现的表单,则需要设置method属性,并赋值为post。
如果某个超链接传递的参数的值是中文字符,则在Action业务控制器中获取该参数值后,必须进行如下转码操作,否则获取的值为乱码。
String sqlvalue=request.getParameter("sqlvalue"); //获取超链接传递的参数
sqlvalue=new String(sqlvalue.getBytes("ISO-8859-1"),"gb2312"); //进行转码操作
第 3 章总体设计
3.1总体设计
都市供求信息网分为前、后台两部分设计。
用户可以通过前台进行信息浏览,信息搜索,信息发布。
管理员可以通过前台的“登录”超链接进入后台。
(1) 都市供求信息网前台总体设计
前台主要实现信息的显示、搜索与发布功能。
其中信息的显示包括列表显示与详细内容显示,搜索功能主要包括定位搜索和模糊搜索。
都市供求信息网前台总体功能结构如图3-1所示。
图3-1都市供求信息网前台总体功能结构图
(2) 都市供求信息网后台总体设计
后台主要实现的功能为信息显示、信息审核、信息删除、付费设置与退出登录,其中的信息显示功能也分为列表显示与详细内容显示。
都市供求信息网后台总体功能结构如图3-2所示。
图3-2都市供求信息网后台总体功能结构图
3.2功能设计
都市供求信息网前台主要实现信息的显示、搜索与发布功能。
后台主要实现的功能为信息显示、信息审核、信息删除、付费设置与退出登录。
(1) 信息显示,主要将列表显示给用户已付费信息和分类显示免费信息。
通过单击导航栏中的信息类别超链接,将显示该类别下的所有详细信息。
(2) 信息搜索,用户可以通过该模块对网站内信息进行定位搜索和模糊搜索。
(3) 信息发布,用户可通过此页面发布信息,在页面中用户需要选择要发布信息的类别,然后填写信息内容和联系方式等;在后台信息显示页面中,管理员可删除信息,并通过单击“审核”或信息标题超链接进入信息审核页面审核信息。
(4) 进入后台,管理员可以通过登陆模块进入后台管理供求信息。
(5) 为了防止任意用户进入后台,进行非法操作,所以设置登录功能。
管理员可登陆后台进行删除信息,并通过单击“审核”或信息标题超链接进入信息审核页面审核信息,并对信息进行付费设置以及退出登陆。
①后台登录功能,用户通过单击前台页面顶部的“进入后台”超链接,进入后台登录页面。
当用户没有输入用户名和密码,或输入了错误的用户名和密码进行登录时,会返回登录页面显示相应的提示信息。
②信息删除功能,信息删除用来删除一些发布的无效信息,在每条信息在操作栏中都提供了一个“删除”超链接。
③信息审核功能,用户发布信息后,不能直接显示在页面中,需要管理员来审核该信息是否可以发布。
④付费设置功能,付费管理可以将信息设置为“已付费”状态。
对于已付费的信息在前台页面显示时,始终显示在页面的顶部位置,以便第一时间被浏览。
3.3数据库设计
本课题是一个中型的供求信息网站,可以采用Microsoft SQL Server 2000作为系统中的数据库。
首先,规划出本课题所使用的数据库实体,它们分别为供求信息实体、信息类别实体和管理员实体。
供求信息实体包括信息编号、所属类型、信息标题、信息内容、联系人、联系电话、E-mail、发布时间、审核状态和付费状态属性。
其中审核状态与付费状态属性分别用来标识信息是否审核与付费,1表示“是”,0表示“否”。
信息类别实体包括类别编号、类别标识、类别名称和类别介绍属性。
管理员实体包括编号、用户名和密码属性。
创建与实体对应的数据表,它们为数据表tb_info、tb_type和tb_user,分别对应着供求信息实体、信息类别实体和管理员实体。
其中数据表tb_info与tb_type之间相互关联。
供求信息表用来保存发布的所有类别的信息,该表的结构如表3-1所示。
表3-1 tb_info表的结构
字段名数据类型是否为空是否主键默认值描述id smallint(2) No Yes ID(自动编号)info_type smallint(2) Yes NULL 信息类别info_title varchar(80) Yes NULL 信息标题info_content varchar(500) Yes NULL 信息内容info_linkman varchar(50) Yes NULL 联系人
续表3-1 tb_info表的结构
字段名数据类型是否为空是否主键默认值描述
info_phone varchar(50) Yes NULL 联系电话info_email varchar(100) Yes NULL E-mail地址info_date datetime(8) Yes NULL 发布时间info_state varchar(1) Yes 0 审核状态info_payfor varchar(1) Yes 0 付费状态
其中info_type字段表示信息所属类别,它与info_type表中的type_sign字段相关联。
info_state字段和info_payfor字段分别用来表示信息的审核状态与付费状态,取值为1表示“已通过审核”或“已付费”状态,取值为0表示“未通过审核”或“未付费”状态。
信息类别表用来保存信息所属的类别,如招聘信息、求职信息等,该表的结构如表3-2所示。
表3-2 tb_type表的结构
字段名数据类型是否为空是否主键默认值描述
id smallint(2) No ID(自动编号)type_sign smallint(2) Yes Yes NULL 类别标识type_name varchar(20) Yes NULL 类别名称type_intro varchar(20) Yes NULL 类别介绍管理员表用来保存管理员信息,该表的结构如表3-3所示。
表3-3 tb_user表的结构
字段名数据类型是否为空是否主键默认值描述
id smallint(2) No Yes ID user_name varchar(20) Yes NULL 管理员名称user_password varchar(10) Yes NULL 密码
第 4 章详细设计
4.1公共类设计
在本课题中,经常需要在不同的方法中进行相同处理,例如数据库连接和字符串处理等,为了避免重复编码,所以将这些处理封装到单独的公共类中。
在本课题中,用到的公共类有数据库连接及操作类、分页类和字符串处理类3个公共类。
4.1.1数据库连接及操作类
(1) 功能描述
DB类主要是对数据库的操作,如连接、关闭数据库及执行SQL语句操作数据库。
每一种操作对应一个方法,如getCon()方法用来获取数据库连接,closed()方法用来关闭数据库连接,而对数据库的增、删、改、查等操作都在doPstm()方法中实现的[5]。
(2) 程序实现
首先,导入所需的类包并声明类的属性然后赋值。
主要代码如下:
private Connection con; //表示连接到数据库的连接
private PreparedStatement pstm; //用来执行SQL语句
private String user="sa"; //登录数据库的默认用户名
private String password="sa"; //登录数据库的密码
private String className="com.microsoft.jdbc.sqlserver.SQLServerDriver";
private String url="jdbc:microsoft:sqlserver://localhost:1433;
DatabaseName=db_CityInfo"; //数据库URL
然后,在覆盖默认构造方法中使用Class.forName(className)语句实现数据库驱动的加载。
通过new操作符实例化一个DB类的同时,就会加载数据库驱动。
完成数据库驱动的加载后,创建获取数据库连接的方法getCon(),在方法中使用DriverManager类的getConnection()方法获取一个Connection类实例,建立连接到URL指定的数据库,并制定数据库的用户名和密码,代码如下。
con=DriverManager.getConnection(url,user,password);
最后,创建对数据库进行增、删、改、查等操作的doPstm()方法,方法中首先调用getCon()方法获取数据库连接,然后使用PreparedStatement类对象的execute 方法来执行SQL语句。
若执行查询的SQL语句,则调用getResultSet()方法返回。