减振器电子商务网站毕业论文_第1页
减振器电子商务网站毕业论文_第2页
减振器电子商务网站毕业论文_第3页
减振器电子商务网站毕业论文_第4页
减振器电子商务网站毕业论文_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、减振器电子商务网站毕业论文摘要 随着网络技术的迅猛发展, 当代企业纷纷建立自己的网站,借助于互联网扩大自己的影响、推广自己的产品,同时通过互联网快速的信息传递加速自身的发展。 本论文设计实现了一个电子商务网站前台框架搭建和后台数据库管理系统,意在通过设计一个具有强大的数据管理功能的系统来管理前台页面中不断更新的数据,方便网站管理员日后对网站的维护和数据更新。本论文所提出的方案是采用现在比较流行的.net技术和软件microsoft visual studio 10.0并配合网页三剑客(dreamweaver、photoshop、flash)等制作工具来设计和建设一个企业网站前台框架搭建和后台数

2、据库管理系统。 关键词:减振器电子商务网站、asp.net技术、sql server数据库目录第一章 绪论11.1 设计背景11.2 构架系统1第二章 可行性分析42.1技术可行性42.2社会可行性4第三章 动态网站的开发技术及其实现63.1动态网站的关键开发技术63.2动态网站的实现73.2.1网站建设的市场背景73.2.2网站实现的功能83.2.3网站内容风格设计8第四章 动态网站的总体模块设计84.1前台功能模块总体设计84.2后台功能模块总体设计94.3数据库模块总体设计10第五章 三层架构代码实现及页面展示105.1数据层105.2数据层135.2.1数据访问层135.2.2业务逻辑

3、层195.3表示层205.3.1首页展示215.4三层架构的优势展示27第六章 各模块功能实现及代码分析396.1分页功能的实现396.2页面传参实现框架功能426.3搜索功能实现45结论48致谢49参考文献50第一章 绪论1.1 设计背景在internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。internet上发布信息主要是通过网站来实现的,获取信息也是要在internet“海洋”中按照一定的检索方式将所需要的信息从网站上下载下来。因此网站建设在internet应用上的地位显而易见,它已成为政府、企事业单位信息化

4、建设中的重要组成部分,从而倍受人们的重视。网络在现代生活中日益盛行,越来越多的人对此也极为痴迷,随着网络技术的迅猛发展, 当代企业纷纷建立自己的网站,借助于互联网扩大自己的影响、推广自己的产品,同时通过互联网快速的信息传递加速自身的发展。因此我选择将公司网站的设计以及后台的管理作为我的项目减震器网站设计与制作。1.2 构架系统 n层架构每一层都可以在仅仅更改很少量的代码后,就能放到物理上不同的服务器上使用,因此结构灵活而且性能更佳。此外,每层做些什么其它层是完全看不到的,因此更改、更新某层,都不再需要重新编译或者更改全部的层了。这是个很强大的功能。例如,如果把数据访问代码与业务逻辑层分离,当数

5、据库服务器更改后,你只需要更改数据访问的代码,因为业务逻辑层是不变的,因此不需要更改或者重新编译业务逻辑层。一个n层3的应用程序通常有三层:表现层、业务层和数据层。下面让我们看看每层都做些什么。l 表现层(presentation layer)表现层用于用户接口的展示,以及用业务层的类和对象来“驱动”这些接口。在asp.net中,该层包括aspx页面、用户控制、服务器控制以及某些与安全相关的类和对象。l 业务层(business tier)业务层用于访问数据层,从数据层取数据、修改数据以及删除数据,并将结果返回给表现层。在asp.net中,该层包括使用sqlclient或oledb从sql s

6、erver或access数据库取数据、更新数据及删除数据,并把取得的数据放到datareader或dataset中返回给表现层。返回的数据也许只有一个整型数字,比如一个表的行记录数目,但这也要用数据层的数据进行计算。l bll和dal通常该层被划分成两个子层:业务逻辑层(business logic layer,bll)和数据访问层(data access layers,dal)。业务逻辑层在数据访问层之上,也就是说bll调用dal的类和对象。dal访问数据并将其转给bll。在asp.net中,该层可以用sqlclient或oledb从sql server或access数据库取数据,把数据通过

7、dataset 或datareader的形式给bll,bll处理数据给表现层。有的时候,例如直接把dataset 或datareader送给表现层的时候,bll是一个透明层。l 数据层(data tier)数据层是数据库或者数据源。在.net中,通常它是一个sql server或access数据库,但不仅限于此两种形式,它还可能是oracle,mysql,甚至是xml。l 逻辑层vs(分布式)物理层人们容易将这两个概念搞混。我们说逻辑层是把层按类的集合来划分,而这些层都在同一台个服务器上。(分布式)物理层是指类的集合在不同的服务器上,用附加的代码来处理层间的通信,比如remoting和web服

8、务。asp.net的优势:l 增强的性能。asp.net 是在服务器上运行的编译好的公共语言运行库代码。与被解释的前辈不同,asp.net 可利用早期绑定、实时编译、本机优化和盒外缓存服务。这相当于在编写代码行之前便显著提高了性能。l 世界级的工具支持。asp.net 框架补充了 visual studio 集成开发环境中的大量工具箱和设计器。wysiwyg 编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种。l 威力和灵活性。由于 asp.net 基于公共语言运行库,因此 web 应用程序开发人员可以利用整个平台的威力和灵活性。.net 框架类库、消息处理和数据访问解决方

9、案都可从 web 无缝访问。asp.net 也与语言无关,所以可以选择最适合应用程序的语言,或跨多种语言分割应用程序。另外,公共语言运行库的交互性保证在迁移到 asp.net 时保留基于 com 的开发中的现有投资。l 简易性。asp.net 使执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置。例如,asp.net 页框架使您可以生成将应用程序逻辑与表示代码清楚分开的用户界面,和在类似 visual basic 的简单窗体处理模型中处理事件。另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发。l 可管理性。asp.net 采用基于文本的分层配置系统

10、,简化了将设置应用于服务器环境和 web 应用程序。由于配置信息是以纯文本形式存储的,因此可以在没有本地管理工具帮助的情况下应用新设置。此零本地管理哲学也扩展到了 asp.net 框架应用程序的部署。只需将必要的文件复制到服务器,即可将 asp.net 框架应用程序部署到服务器。不需要重新启动服务器,即使是在部署或替换运行的编译代码时。l 可缩放性和可用性。asp.net 在设计时考虑了可缩放性4,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。另外,进程受到 asp.net 运行库的密切监视和管理,以便当进程行为不正常(泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处

11、理请求。l 自定义性和扩展性。asp.net 随附了一个设计周到的结构,它使开发人员可以在适当的级别插入代码。实际上,可以用自己编写的自定义组件扩展或替换 asp.net 运行库的任何子组件。实现自定义身份验证或状态服务一直没有变得更容易。l 安全性。借助内置的 windows 身份验证和基于每个应用程序的配置,可以保证应用程序是安全的。第二章 可行性分析2.1技术可行性硬件、软件要求不高,目前市场上的一般计算机硬件资源均能满足系统开发要求。其中运用的主要软件有dreamweaver,photoshop,sql server等,数据库采用sql server2000。采用asp.net技术,该

12、技术功能强大,扩展性强,macromedia公司提供大量的第三方控件,并结合vbscript,javascript以及sql等脚本语言,以上技术足以完成本系统的开发和设计。 2.2社会可行性在国外,特别是在美国,实施企业战略不只是空谈,它已经被列入了许多大企业的日程表中。与国外的热闹场面相比,国内了解企业概念的企业十分少,而计划建立企业的企业就更加微乎其微。但是应该看到,互联网在国内的发展速度相当迅速,企业网站作为一种新的形象传播途径,同传统媒介相比,对大众更具有亲和力与吸引力,可以帮助企业与消费者建立更亲密、更稳固的联系。企业网站有很多作用: 一、拥有企业自己的域名,建立企业自己的网站,树立

13、企业在科技信息时代的完美形象。作为第四媒体的互联网,其特点就是可以跨越时空,正常情况下, 网站无时无刻 不在工作通过企业的网站,用户可以跨越时空了解企业,利用多媒体技术,企业可以 向用户展示产品、技术、经营理念、企业文化、企业形象,树立现代企业形象,增值 企业无形资产。 二、宣传企业,创造销售机会据调查,有超过30%的人是通过上网查询企业的电话和地址的,这一比例和通过114查询的比例相接近,可见企业网站已成为许多人首次接触企业、了解相关信息的选择。 三、加强客户沟通宣传企业产品企业可以通过网站建立与客户沟通的便捷渠道,全面展示企业的所有产品。网络科技足以令您的产品与品牌形象更加立体地呈现在用户

14、面前,就算企业仅仅把网站当成电子宣传册来使用,也较传统的宣传模式更加的多姿多彩、更加地易于发布与传播、更加的经济与环保。 四、丰富营销手段,扩大产品销售渠道企业网站可以满足一部分客户网上查询与采购的需要,抓住网络商机。企业通过网站可以开展电子营销。首先,电子营销作为传统营销的补充;其次, 电子营销可以拓展新的空间,增加销售渠道,接触更大的消费群体,获得更多的新顾 客,扩大市场;再次,电子营销可以减少环节,减少人员,节约费用,降低成本,有利于提高营销效率。 五、有利于了解顾客的意见,掌握顾客的需求在不干扰顾客正常工作和生活的条件下,企业通过网站上的调查表、留言薄、定 制服务以及e-mail可以倾

15、听顾客的意见,了解顾客的心声,加强企业与顾客间的联系 建立良好的顾客关系。 六、有利于改善服务,提高企业服务质量利用网站,通过电子沟通方式,企业开展的在线服务是传统的沟通方式(如,邮 件、电话、传真等)所无比拟的,在线服务能够更加及时准确地掌握用户的需求,通过网站的交互式服务使得被动提供和主动获得统一起来,从而实现售前、售中、售后的全过程和全方位的服务。 七、 互联网的特点在于突破地域限制,一个网站能同时为您服务于世界各地的拥护;同时,网络无休息,一年365天、一天24小时,您的网站永远忠实地服务于您的所有客户。第三章 动态网站的开发技术及其实现3.1动态网站的关键开发技术asp.net 是建

16、立在公共语言运行库上的编程框架,可用于在服务器上生成功能强大的 web 应用程序。与以前的 web 开发模型相比,asp.net 提供了数个重要的优点4:l 增强的性能3。asp.net 是在服务器上运行的编译好的公共语言运行库代码。与被解释的前辈不同,asp.net 可利用早期绑定、实时编译、本机优化和盒外缓存服务。这相当于在编写代码行之前便显著提高了性能。l 世界级的工具支持。asp.net 框架补充了 visual studio10.0 集成开发环境中的大量工具箱和设计器。wysiwyg 编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种。l 威力和灵活性。由于 as

17、p.net 基于公共语言运行库,因此 web 应用程序开发人员可以利用整个平台的威力和灵活性。.net 框架类库、消息处理和数据访问解决方案都可从 web 无缝访问。asp.net 也与语言无关,所以可以选择最适合应用程序的语言,或跨多种语言分割应用程序。另外,公共语言运行库的交互性保证在迁移到 asp.net 时保留基于 com 的开发中的现有投资。l 简易性。asp.net 使执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置。例如,asp.net 页框架使您可以生成将应用程序逻辑与表示代码清楚分开的用户界面,和在类似 visual basic 的简单窗体处理模型中处理

18、事件。另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发。l 可管理性。asp.net 采用基于文本的分层配置系统,简化了将设置应用于服务器环境和 web 应用程序。由于配置信息是以纯文本形式存储的,因此可以在没有本地管理工具帮助的情况下应用新设置。此“零本地管理”哲学也扩展到了 asp.net 框架应用程序的部署5。只需将必要的文件复制到服务器,即可将 asp.net 框架应用程序部署到服务器。不需要重新启动服务器,即使是在部署或替换运行的编译代码时。l 可缩放性和可用性。asp.net 在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。

19、另外,进程受到 asp.net 运行库的密切监视和管理,以便当进程行为不正常(泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处理请求。l 自定义性和扩展性。asp.net 随附了一个设计周到的结构,它使开发人员可以在适当的级别“插入”代码。实际上,可以用自己编写的自定义组件扩展或替换 asp.net 运行库的任何子组件。实现自定义身份验证或状态服务一直没有变得更容易。l 安全性。借助内置的 windows 身份验证和基于每个应用程序的配置,可以保证应用程序是安全的。3.2动态网站的实现3.2.1网站建设的市场背景互联网的兴起及其在全球范围内的普遍应用,加快了全球信息化的步伐,同

20、时,又使传统企业面临着新的挑战和机遇。传统企业广泛实施电子商务转型策略,是互联网经济时代新型企业的发展方向。何将互联网技术应用于企业日常宣传、运作、管理中,如何在电子商务应用领域开拓市场,如何利用internet给企业带来商机、拓展企业的规模和效益,如何加强内部管理等等则更是企业在互联网经济浪潮中急需考虑的问题。3.2.2网站实现的功能 通过实施一系列的电子化建设计划,该动态网站将实现:l 整合企业的业务应用l 相关信息的动态发布:企业信息、产品信息、招聘信息等l 建立一个强大的对外宣传口径l 方便管理员对整个网站监控和维护 3.2.3网站内容风格设计l 总体印象:立足于企业服务宗旨,延伸至高

21、新行业领域,主题突出,内容精干,形式简洁l 版式布局:栏目集中1,分栏目检索明确,导航标志清晰l 色彩运用:色调总体呈畅快、简洁、专业的特征2:(根据企业实际需要决定)l 图片运用:配合文字及色块,以生动的形象图片表达知名专业公司的实力和创造力l 在功能上:网站内容从各方面尽量满足客户和有需求的业内人士的合理要求第四章 动态网站的总体模块设计由于中小型企业网站的目标重点在于展示企业的信息和商品的在线销售。本章重点介绍前台功能模块总体设计、后台功能模块总体设计和数据库模块的总体设计。4.1前台功能模块总体设计前台功能模块主要包括:首页、公司产品、公司简介、减震选型、工程实例、售后服务、联系我们、

22、人才招聘。总体设计展示如图4.1。访问者首 页公司产品公司简介选 型工程实例售后服务联系我们人才招聘 图4.1 前台功能模块总体设计4.2后台功能模块总体设计 后台功能模块包括:管理员的权限管理、产品管理、产品类型管理、公司信息管理、工程实例管理、招聘信息管理、招聘部门管理、留言信息管理的添加、修改、查看等。总体设计展示如图4.2。添加/修改/查看添加/修改/查看添加/修改/查看添加/修改/查看添加/修改/查看添加/修改/查看添加/修改/查看修改/查看管理员页面产品管理产品类型管理公司信息管理工程实例管理招聘信息管理招聘部门管理留言信息管理管理员首页登录 图4.2后台功能模块总体设计4.3数据

23、库模块总体设计数据库7模块的总体设计展示如图4.2。 图4.3数据库功能模块总体设计第五章 三层架构代码实现及页面展示本网站的后台实现应用了三层架构:数据层、业务层(bll和dal)以及表现层。下面我们分别介绍。5.1数据层 该网站使用的数据库是sql server20007,在数据层将每个数据表封装起来。下面以商品数据表为例,进行代码分析。在visual studio10.0中可以看到数据层的展示,如图5.1。productmodels.cs页面的源代码:/命名空间using system;数据层 图5.1数据层的展示using system.collections.generic;usin

24、g system.linq;using system.text;namespace tanganmodels serializable5 public class productmodels/对应数据库定义私有变量 private int id; private string proname= string.empty; private string projieshao = string.empty; private string proimg = string.empty; private datetime prodate; private int gid; private int lei

25、xing; private string yongliao = string.empty; private string jiegou = string.empty; private string jiegoutxt = string.empty; private string jishu = string.empty; private string cname = string.empty; public productmodels() /定义构造方法/对变量进行封装 public int id get return this.id; set this.id = value; public

26、string proname get return name; set name = value; public string projieshao get return jieshao; set jieshao = value; public string proimg get return img; set img = value; public datetime prodate get return date; set date = value; public

27、int leixing get return this.leixing; set this.leixing = value; public int gid get return this.gid; set this.gid = value; public string yongliao get return this.yongliao; set this.yongliao = value; public string jiegou get return this.jiegou; set this.jiegou = value; public string jiegoutext get retu

28、rn this.jiegoutxt; set this.jiegoutxt = value; public string jishu get return this.jishu; set this.jishu = value; public string cname get return ame; set ame = value; 5.2数据层业务层用于访问数据层,从数据层取数据、修改数据以及删除数据,并将结果返回给表现层。下面以商品数据表为例,进行代码分析。5.2.1数据访问层 数据访问层用于链接数据库和各种方法的书写。在visual studio10.0中可以看到数据访问层和业务逻辑层的展

29、示,如图5.2。数据访问层(dal)业务逻辑层(bll) 图5.2数据访问层和业务逻辑层的展示productdal.cs页面代码/导入命名空间using system.data;system.data.sqlclient;using tanganmodels;namespace tangandal public static partial class productdal/商品添加 public static productmodels addproduct(productmodels pro) string sql =insert product(proname,projieshao,pr

30、oimg,prodate,leixing,gid,yongliao,jiegou,jiegoutext,jishu) +values(proname,projieshao,proimg,prodate,leixing,gid,yongliao,jiegou,jiegoutext,jishu); sql += select identity;7 try sqlparameter para=new sqlparameter new sqlparameter(proname,pro.proname), new sqlparameter(projieshao,pro.projieshao), new

31、sqlparameter(proimg,pro.proimg), new sqlparameter(prodate,pro.prodate), new sqlparameter(leixing,pro.leixing), new sqlparameter(gid,pro.gid), new sqlparameter(yongliao,pro.yongliao), new sqlparameter(jiegou,pro.jiegou), new sqlparameter(jiegoutext,pro.jiegoutext), new sqlparameter(jishu,pro.jishu),

32、; int proid = dbhelper.getscalar(sql, para); return getprobyid(proid); catch (exception e) console.writeline(e.message); throw e; /按id号删除记录 public void delproduct(int id) string sql = delete product where id=id; try sqlparameter para = new sqlparameter new sqlparameter(id, id); dbhelper.executecomma

33、nd(sql, para); catch (exception e) console.writeline(e.message); throw e; /按类型删除记录 public static void delprocid(int leixing) string sql = delete product where leixing=leixing; try sqlparameter para = new sqlparameter new sqlparameter(leixing, leixing) ; dbhelper.executecommand(sql, para); catch (exc

34、eption e) console.writeline(e.message); throw e; /更从商品记录 public static void updatepro(productmodels pro) string sql = update product set + proname=proname, + projieshao=projieshao, + proimg=proimg, + prodate=prodate, + leixing=leixing, + gid=gid, + yongliao=yongliao, + jiegou=jiegou, + jiegoutext=ji

35、egoutext, + jishu=jishu + where id=id; try sqlparameter para=new sqlparameter6 new sqlparameter(proname,pro.proname), new sqlparameter(projieshao,pro.projieshao), new sqlparameter(proimg,pro.proimg), new sqlparameter(prodate,pro.prodate), new sqlparameter(leixing,pro.leixing), new sqlparameter(gid,p

36、ro.gid), new sqlparameter(yongliao,pro.yongliao), new sqlparameter(jiegou,pro.jiegou), new sqlparameter(jiegoutext,pro.jiegoutext), new sqlparameter(jishu,pro.jishu), new sqlparameter(id,pro.id), ; dbhelper.executecommand(sql, para); catch (exception e) console.writeline(e.message); throw e; /根据id号查

37、询商品记录 public static productmodels getprobyid(int id) string sql = select * from product where id=id; try sqldatareader reader = dbhelper.getreader(sql, new sqlparameter(id, id); if(reader.read() productmodels pro=new productmodels(); pro.id = (int) readerid; pro.proname = (string) readerproname; pro

38、.jiegou = (string) readerjiegou; pro.leixing = (int) readerleixing; pro.prodate = (datetime) readerprodate; pro.proimg = (string) readerproimg; pro.projieshao = (string) readerprojieshao; pro.yongliao = (string) readeryongliao; reader.close(); return pro; else reader.close(); return null; catch (exc

39、eption e) console.writeline(e.message); throw e; /查询同一类型的商品并存入datatable6中 public static ilist getallpro(int leixing) string sql = select * from product,proclass where leixing=cid and leixing=+leixing+ order by prodate desc; return getprobysql(sql); public static ilist getprobysql(string safesql) lis

40、t list = new list(); try datatable table = dbhelper.getdataset(safesql); foreach (datarow row in table.rows) productmodels pro = new productmodels(); pro.id = (int) rowid; pro.proname = (string) rowproname; pro.projieshao = (string) rowprojieshao; pro.proimg = (string) rowproimg; pro.prodate = (date

41、time) rowprodate; pro.leixing = (int) rowleixing; pro.gid = (int) rowgid; pro.yongliao = (string) rowyongliao; pro.jiegou = (string) rowjiegou; pro.jiegoutext = (string) rowjiegoutext; pro.jishu = (string) rowjishu; pro.cname = (string) rowcname; list.add(pro); return list; catch (exception e) conso

42、le.writeline(e.message); throw e; 5.2.2业务逻辑层productbll.cs页面using system.collections.generic;using tanganmodels;using tangandal;namespace tanganbll public static partial class productbll public static productmodels addpro(productmodels pro) return productdal.addproduct(pro); public static void delpro(int id) productdal.delproduct(id); public static void de

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论