安防产品生产型中小企业基于开源软件的电子商务实现_第1页
安防产品生产型中小企业基于开源软件的电子商务实现_第2页
安防产品生产型中小企业基于开源软件的电子商务实现_第3页
安防产品生产型中小企业基于开源软件的电子商务实现_第4页
安防产品生产型中小企业基于开源软件的电子商务实现_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

1、i安防产品生产型中小企业安防产品生产型中小企业基于开源软件的电子商务实现基于开源软件的电子商务实现摘要摘要目前,开源软件经过几年的起伏已基本站稳了脚跟,在个人和商业领域中得到了广泛的应用。开源软件具有代码公开、安全性、低成本等特点,能更好地进行资源整合和开发利用,对推进我国中小型企业信息化具有重要意义。本文主要介绍了安防产品生产企业如何整合和利用开源软件进行电子商务网站的建设,为企业提供 b2b 或 b2c 电子商务应用实现。主要的功能模块有企业信息展示、新闻发布、产品展示、会员(客户)注册、购物车、订单处理、产品质量反馈(投票与评论) 、邮件列表订阅、交流论坛等模块。利用 javabean

2、组件,servlet,jdbc 与数据库等技术。运用到的开源软件有应用服务器:apache tomcat 5.5, jboss 4.0;集成开发环境 ide(integrated development environment):eclipse 3.2;数据库:mysql 5.0 + mysql administrator 以及 sun java 开发工具包 jdk 1.5.0 和开源软件工具包。本文从电子商务的概况说起,就开源软件如何帮助中小企业进行信息化建设及开展电子商务进行分析,对当前最热门的动态网站开发工具 jsp、asp、php 从技术应用上进行了分析和比较,阐述 java 在构建电

3、子商务平台中的优势,对 jsp 的基本工作原理以及一些主要技术作了说明。接着主要介绍了该电子商务网站具体设计及实现。最后对本次毕业设计做出了总结。关键词关键词:电子商务;开源软件;中小企业;j2ee;jsp;mvciithe implement of e- commerce in the medium and small security & protection products manufacture based on free/open source softwareabstractat present, open source software has kept its steps d

4、uring the past swelling years, and has been widely used in personal and commercial fields. featuring open code, high security and low cost, open source software made it more convenient for integration and exploitation of the resources, and more significant in promoting informationalization of small

5、medium enterprises (sme).the thesis mainly introduces how the enterprises, which manufacture secured and protected products, integrate and use open source software to construct e-commerce websites and provide b2b or b2c e-commerce application. the chief functional modules include enterprise informat

6、ion show, news conference, commodity show, member (customer) registration, shopping cart, order disposal, feedback about product quality( vote and comment), subscription of mails in list, communication forum and other modules. javabean groupware, servlet, jdbc and database shall be used. the open so

7、urce software involves application server apache tomcat5.5, jboss 4.0, integrated development environment eclipse 3.2, database mysql5.0+mysql administrator and sun java development kit (jdk) and open source software kit.from the beginning about the general situation of e-commerce, the thesis will a

8、nalyze how to help the small and medium enterprises to realize information construction and develop e-commerce, ant then do some analysis and comparison among jsp, asp php, the hottest dynamic website exploiting tools. it also narrates the advantages of java in constructing e-commerce platform and t

9、he basic work principles of jsp, followed by the introduction of detailed design of this e-commerce website and its implementation with a summary for the 安防产品生产型中小企业基于开源软件的电子商务实现iiidiploma project in the end.key words:ec; foss; medium and small enterprise; j2ee;jsp ;mvciv毕业论文(设计)原创性声明毕业论文(设计)原创性声明本人

10、所呈交的毕业论文(设计)是我在导师的指导下进行的研究工本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果。据我所知,除文中已经注明引用的内容外,本论文作及取得的研究成果。据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。对本论文(设计)(设计)不包含其他个人已经发表或撰写过的研究成果。对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。 作者签名:作者签名: 日期:日期: 毕业论文(设计)授权使用说明毕业论文(设计)授权使用说明本

11、论文(设计)作者完全了解本论文(设计)作者完全了解*学院有关保留、使用毕业论文(设计)学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。有权将论文(设计)用于非赢利目的的少量复制并允许论子版和纸质版。有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。学校可以公布论文(设计)的全部或文(设计)进入学校图书馆被查阅。学校可以公布论文(设计)的全部或部分内容。保密的论文(设计)在解密后适用本规定。部分内容。保密的论文(设计)在解密后适用本规定。

12、 作者签名:作者签名: 指导教师签名:指导教师签名: 日期:日期: 日期:日期: 安防产品生产型中小企业基于开源软件的电子商务实现v注 意 事 项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300 字左右) 、关键词4)外文摘要、关键词 5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论) 、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于 1 万字(不包括图纸、程序清单等) ,文科类论文正文字数不少于 1.2 万字。3.附件包括:任务书、开题报告、外文译文、译文原文(复印

13、件) 。4.文字、图表要求:1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画3)毕业论文须用 a4 单面打印,论文 50 页以上的双面打印4)图表应绘制于无格子的页面上5)软件工程类课题应有程序清单,并提供电子文档5.装订顺序1)设计(论文)2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订3)其它vi目录目录摘要.iiabstract .iii目录.v1 绪论.11.1 文献综述.1

14、1.1.1 我国安防中小企业电子商务发展现状.11.1.2 电子商务网站开发技术现状.21.1.3 开源概述 .31.2 问题的提出.52 基本理论与基础知识 .62.1 电子商务理论 .62.1.1 什么是电子商务(electromic commerce).62.1.2 电子商务的特征.72.1.3 电子商务的模式.82.2 j2ee.92.2.1 jdbc .92.2.2 jsp .112.2.3 java servlet .112.2.4 xml .122.2.5 javamail .132.3 mvc 概述及特点 .142.4 数据库连接池 .153 开发环境搭建与基础组件设计.173

15、.1 开发环境搭建 .173.1.1 基础环境安装与配置.173.1.2 其他相关组件安装与配置.223.2 基础组件设计与开发.253.2.1 数据库连接工具.253.2.2 邮件工具 .263.2.3 文件工具 .263.2.4 图像工具 .263.2.5 加密工具 .27安防产品生产型中小企业基于开源软件的电子商务实现vii3.2.6 分页工具 .274 安防产品生产型中小企业电子商务网站设计与实现.284.1 网站总体框架 .284.1.1 网站前台界面 .284.1.2 网站后台界面 .294.2 产品展示模块设计 .304.2.1 需求分析 .304.2.2 功能建模 .304.2

16、.3 数据库设计 .344.2.4 采用 jsp + servlet + javabean 实现 mvc 模式.354.2.5 mvc 组件设计开发.355 总结.39参考文献.40致谢.41安防产品生产型中小企业基于开源软件的电子商务实现11 1 绪论绪论1.11.1 文献综述文献综述.1 我国安防中小企业电子商务发展现状我国安防中小企业电子商务发展现状2005 年 3 月,国家发改委中小企业司委托每周电脑报、中国中小企业杂志、中国中小企业信息网联合开展了对中国中小企业信息化状况的调查。通过地方中小企业管理部门组织填写、在中小企业网网上填写、企业自愿以电子邮件形式提交、会议和

17、活动现场填写等多种方式进行填表调查,并于 2006 年 6 月 12 日发布了中国中小企业信息化调查报告1。调查结果显示,60.8%的中小企业设有专门的信息化部门,说明信息化建设的重要性在企业中已经提到了一定高度,但还有 39.2的企业没有设置专门的部门。其中有31%的企业由首席信息官或副总经理主管信息化工作,39%的中小企业专门设置了主管信息化的部门经理,负责管理企业信息化建设和运行工作。由此可见,中小企业已经认识到信息化对一个企业发展具有十分重要的作用。但是,报靠中也显示 80.9%的中小企业只配有 5 名以下 it 技术人员,技术力量较为薄弱。另外,中小企业中可以熟练使用计算机的员工只占

18、总数的 38.1%,一半员工停留在一般应用计算机的水平。中小企业要想提高信息化应用水平还需要进一步加强对员工的计算机应用培训。技术力量缺乏、员工计算机应用能力不高成为了制约中小企业实施信息化的瓶颈。在企业相关it 制度的建立和企业信息化设备配备情况方面,企业已将企业信息化列入了企业发展的计划中,并很好的配备了企业信息化设备,已为企业信息化做好了准备。在电子商务应用方面,四成中小企业已经开展电子商务应用,近一半中小企业尚未开展电子商务应用。电子商务所带来的革命性影响,不仅造成生产与商业方式的改变,甚至影响人类的工作形态与生活方式。电子商务在给中小企业带来商机的同时,也为中小企业带来不小的冲击。电

19、子商务的发展对大企业和中小企业之间相对竞争力的变化影响,要从 b to c 和 b to b 两个层面来分析。需要注意的是,中小企业不能以大企业的系统架构来建设其电子商务系统,应有自己的一套建设原则,否则容易遭遇人才不足、系统不相容、导入经费过高、组织不适应等问题。2由于该报告具有中小企业中的行业一般性,我们可以得出安防产品生产中小企业的信息化建设与电子商务开展的情况。结论:安防产品生产中小企业与普遍中小企业一样对信息化建设与电子商务开展具有强烈愿望,并已作好硬件设施准备,在软件方面,专业技术人员缺乏与员工计算机应用能力水平是需要企业急需解决的问题。技术人才缺乏、资金匮乏、内部业务流程不规范是

20、中小企业信息化建设的三大阻力。调查结果显示,财务管理系统、信息安全将是中小企业信息化建设的两个热点,财务管理系统的新建、完善、与其他系统的互连互通成为 44.6%企业的重点考虑,信息安全也是近四成企业的建设重点,而电子商务系统占比 27.1%,居于第五位。目前中小企业电子商务主要是通过第三方平台进行开展,国内著名有阿里巴巴(http:/ 电子商务平台;安防行业 b2b 电子商务交易平台:安防网_hc360 慧聪网(http:/ ;安防交易网(http:/ 。b2c 电子商务交易基本上为 0,笔者随机对慧聪网上注册企业进行访问,发现注册企业有一半以上有建设自己的门户网站,超过四成并没有建立自己的

21、门户网站,只是利用慧聪网为注册企业提供的通用网站模版生成的网站,这类网站真正意义上并不能称为企业门户。因为网页上只提供了企业简单的介绍信息。而在已建设门户的企业中,超过六成的企业,只是将门户作为产品的展示平台,并未充分利用网络资源。企业建设具备或初步具备 b2b/b2c 电子商务功能平台是企业独立开展电子商务的前提之一。.2 电子商务网站开发技术现状电子商务网站开发技术现状交互式 web 应用开发技术经过近几年发展,淘汰了过时的技术,新技术也大量涌现。现在开发交互式 web 应用主要技术有 asp/asp.net;j2ee,以及 php,及较新的 ruby on rails。a

22、sp/asp.net 属于 microsoft 公司的产品,属于商业性质,不符开放源代码精神,这里不做讨论。j2ee (java 2 enterprise edition)2是建立在 java 2 平台上的企业级应用的解决方案。j2ee 技术的基础便是 java 2 平台,不但有 j2se 平台的所有功能,同时还提供了对 ejb,servlet,jsp,xml 等技术的全面支持,其最终目标是成为一个支持企业级应用开发的体系结构,简化企业解决方案的开发,部署和管理等复杂问题。事实上,安防产品生产型中小企业基于开源软件的电子商务实现3j2ee 已经成为企业级开发的工业标准和首选平台。j2ee 并非

23、一个产品,而是一系列的标准。所以只是符合这个标准的实现(如 bea weblogic,ibm websphere 以及开源的jboss) ,j2ee 应用就可以运行于这些实现上。企业可以选择符合自己需要的 j2ee 实现。目前最新版本为 j2ee 1.5。php 3是一种嵌入在 html 并由服务器解释的脚本语言。它可以用于管理动态内容、支持数据库、处理会话跟踪,甚至构建整个电子商务站点。它支持许多流行的数据库,包括 mysql、postgresql、oracle、sybase、informix 和 microsoft sql server。php 适用于 linux 和各种 unix 及 w

24、indows 平台。目前最新版本为 php 5.2.5。ruby on rails4是一种结合 ruby 语言与 rails 平台的一种网页编程语言,ruby 语言以自然、简洁、快速著称,全面支援面向对象,而 rails 则是 ruby 广泛应用方式之一,在 rails 平台上设计出一套独特的 mvc 开发架构,采取模型(model)、视图(view)、控制器(controller)分离的开发方式,不但减少了开发中的问题,更简化了许多繁复的动作。目前最新版本为 ruby on rails 2.0。j2ee 作为目前开发电子商务网站最成熟的技术之一,并具有丰富的学习资源及软件支持。其核心 jav

25、a 语言作为一种工业语言使得团队开发更加容易,软件质量也得到保证;另外一方面,在开发电子商务应用最常见的问题便是性能问题,电子商务网站的性能瓶劲并不是单靠加强服务器 cpu 数据处理能力,加大服务器内存容量就能够解决的,电子商务网站性能解决之道便是分布应用,这便涉及到了分布式对象技术5。目前分布式对象技术主要有 microsoft 公司的 com+(component object model plus)、由对象技术标准化团体 omg(object management group)制订的,针对分布式对象使用的接口规范:corba(common object request broker ar

26、chitecture)与 java 分布式对象。java 从设计之初就是一种针对面向对象的语言,基于利用网络的思路来进行开发的,java 分布式对技术包括 rmi(remote method invocation)、与 corba 连接的rmi/iiop(rmi over iiop)和 horb。java 语言这两方面特点,决定了它是目前进行电子商务网站开发的首选技术。.3 开源概述开源概述1 1、fossfossfoss 是 free/open source software6的缩写,意指自由/开源软件。开放源代码软4件就是在开放源代码许可证下发布的软件,以保证软件用户自由使

27、用及接触源代码的权利,这同时也保障了用户自行修改、复制、以及再分发的权利。1989 年 stallman 起草了 gnu gpl(gnu general public license,gnu 通用公共协议证书),对现有版权体系(copyright)进行了批判和升华,创造性地提出了“copyleft”概念。copyleft 是所有的 gnu 程序必须遵循一种原则即可以修改、出售,但源代码所有的改进和修改须向每个用户公开,以保证自由软件传播的延续性。目前,几百种成熟的开源产品被广泛使用,其中比较著名的有 solaris、bsd unix、linux、perl语言、gcc、x-window 系统等。

28、在企业级的核心应用上,扮演着重要角色,甚至出现了 lamp 和 lamjj(linux+apache+mysql+jboss+java)这样的基于服务器的开源软件架构。2 2、主要开源软件项目介绍、主要开源软件项目介绍开源软件通常来自个、组织或公司所开发的软件项目。开源软件社区为开源软件项目提供了需要的基础设施,如项目人员的交流、软件存储与发布等。目前比较有名的开源软件社区有:(1) apache 社区()apache 社区是由 apache web server 软件项目发展来的,目前包括 web server 在内的一系列开源软件项目。 apache

29、 web server 项目:高性能的 web 服务器。 apache ant 项目:ant 是一个基于 java 的构建(build)工具,类似于 make,但是没有 make 的缺点。 jakarta 项目:由一些子项目组成,tomcat 是该项目中一个子项目。tomcat既是一个轻量级的 web 应用服务器也是一个 jsp 容器。 xml 项目 web service 项目(2)objectweb 社区()objectweb 社区主要致力于开发开源的中间件产品,比较著名的软件有: jonas开源的 ejb 容器。安防产品生产型中小企业基于开源

30、软件的电子商务实现5 joram实现了 java 消息服务(jms)。(3) sourcef(http:/)sourcef 是目前最大的开源软件社区,为开源软件项目提供免费的服务。目前容纳了超过 5 万个开源软件项目。该社区是由 va software 公司创立的。1.21.2 问题的提出问题的提出根据前面阐述,要解决安防生产中小企业信息化与电子商务网站平台建设中的三大主要问题技术人员缺乏;员工计算机应用能力水平不高;资金缺乏。较好的解决方法就是使用开源软件,这将大大的减少企业信息化建设的成本,从操作系统到应用软件,开源软件已有很长的产品线供中小企进行选择,如国产红旗操作系统(red flag

31、 linux),不仅保持着开源软件的精神免费使用,还为国人进行了使用习惯上的优化;open office 完全能够代替 microsoft 的 microsoft office 办公套件,还有crm,erp 等软件。这对于中小企业来说将减少了昂贵的软件使用许可费用,对使用盗版软件的中小企业来说,使用开源软件代替盗版软件,在越来越注重知识版权的今天,无疑为企业长远发展扫清了障碍。在够建电子商务平台网站方面,基于 j2ee 技术体系的开源软件产品更是多不胜数,从 web 服务器、数据库服务器,源代码编译工具,测试工具,开发工具等所需要用到的软件,都能找到对应的产品。使用开源软件的好处是显而易见的,

32、然而企业使用开源软件是需要一个过渡时期的,这不是一个短期就能够做到的事情,技术人员需要引进,员工需要陪训,好在使用开源软件所省下的资金,可以用在这一方面支出。经过这一过渡时期以后,使用开源软件的好处才见证。如何利用开源软件促进中小企业信息化建设是一个值得探讨的问题,本文主要是研究如何整合利用开源软件资源,完成安防产品生产中小企业电子商务平台网站的构建。项目中主要使用到的开源软件有: tomcat 高性能的 web 应用服务器6 mysql 高性能,功能完善的开源数据库系统 eclipse 开源的集成开发环境,通过插件的方式很容易地扩展功能 myeclipse 企业级工作平台,是对 eclips

33、e ide 的扩展,利用它可以在数据库和j2ee 的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。安防产品生产型中小企业基于开源软件的电子商务实现72 2 基本理论与基础知识基本理论与基础知识2.12.1 电子商务理论电子商务理论.1 什么是电子商务什么是电子商务(electromic(electromic commerce)commerce)通俗地说,电子商务7就是在网上开展商务活动当企业将它的主要业务通过企业内部网(intranet)、外部网(extranet)以及因特网(internet)与企业的职员、客户、供应商以及合作伙伴直接相连时,其中发生的各种活动就

34、是电子商务。事实上,今天还没有一个软为全面、具有权威性的、能够为大多数人接受的电子商务的定义。各组织、政府、公司、学术团体根据自己的理解和需要给出不同的定义,其中较为系统和全面的:联合国国际贸易程序简化工作组的定义是:采用电子形式开展的商务活动,它包括在供应商、客户、政府及其参与方之间通过各种电子工具,如 edi、web 技术、电子邮件等共享非结构化或结构化商务信息,并管理和完成在商务活动、管理活动的消费活动中的各种交易。联合国经济合作和发展组织(oecd)有关电子商务的报告中对 ec 定义:电子商务是发生在开放网络上的包含会业之间(business to business)、企业和消费者之间

35、(business to consumer)的商业交易加拿大电子商务协会给出其不意电子商务的较为严格的定义:电子商务是指通过数字通信进行商品和服务的买卖以及资金的转帐,它包括公司间和公司内利用 e-mail、edi、文件传输、传真、电视会议、远程计算机联网所能实现的全部功能(例如:市场营销、金融结算、销售以及商务谈判) 。虽然电子商务没有成文的定义,但对我们来说,更重要的是分析这些定义,理解电子商务的 3 个基本要素:以因特网为主要业务平台,各种现代信息技术为支撑以电子信息的传输来实现各种商务信息(包括数字化商品和服务)的传递。包括各种行业、部门和组织以及各种形式商务活动的管理和运作。最后,我

36、们必须特别注意的是:电子商务是一个不断发展和变革的概念。.2 电子商务的特征电子商务的特征电子商务与传统商务活动相比,主要表现在以下几个特征:1 1、交易方式、交易方式电子商务主要由电子方式完成各种形式的商务活动,如电子目录、电子合同、电子商品编码、信用卡、智能卡等。电子信息的传递取代了传统商务活动中的纸介质的单证、文档和人工方式的传递。2 2、交易过程、交易过程电子商务几乎改变了传统交易过程的所有环节,如可以在网上实现网上广告、订货、电子支付、货物递交、服务、市场调查分析、财务核算、生产安排等。这不仅提高了交易的效率,并引起了交易的组织和管理发生变化。3 3、交易工具、交易

37、工具电子商务产生了许多在传统商务活动中没有的电子化的交易工具,而且这些工具还在随着信息技术的发展而不断创新和完善,例如电子数据交换、电子邮件、电子商务网站、网络社区等。4 4、信息技术的应用、信息技术的应用信息技术是电子商务的基础,网络技术、数据库和数据交换、数据获取、数据统计处理技术等,几乎信息技术的所有成果都可以在电子商务中得到应用。这使得电子商务中技术的含量远远超过传统商务过程。5 5、交易平台、交易平台电子商务是在因特网上运作的交易方式,包括与用户、上下游企业间以及其他和交易有关的实体之间的商务活动都主要是通过因特网完成。覆盖全球的因特网是电子商务运行的基本平台。即使一个小企业,只要开

38、展电子商务就具有国际化的特征。6 6、交易时空观、交易时空观因特网和电子信息的传输使得交易过程的时间和空间的概念产生变化。首先从时间上说,网上的企业或商店可以一周 7 天,每天 24 小时营业;从空间上讲,在某一个网上商店购物时,不需要关心在它在什么地方,地球变成了“地球村” 。电子商务使得人们足不出户,轻点鼠标就可以在任意时间访问世界上任何一个网站。安防产品生产型中小企业基于开源软件的电子商务实现97 7、交易环境和策略、交易环境和策略由于有以上一些特点,电子商务运行环境发生了巨大的变化,所以对传统的企业管理理念、市场营销策略以及对政策、法律等都产生了冲击,提出了新的要求。这样,人们就需要研

39、究网络营销的新策略和电子商务的相关法律。很明显,这些特点不仅仅是工具和形式的变化,而且使得商务活动的运行机制和管理理念发生了变革。.3 电子商务的模式电子商务的模式电子商务经过这么多年来的发展、演变,渐渐形成了自己的模式,主要有以下四种:企业内部间的电子商务主要是通过企业内部网(intranet)的方式处理与交换商贸信息。企业内部网(intranet)是一种有效的商务工具,通过防火墙,企业将自己的内部网与 internet隔离,它可以用来自动处理商务操作及工作流,增强对重要系统和关键数据的存取,共享经验,共同解决客户问题,并保持组织间的联系。通过企业内部的电子商务,可以给企业带

40、来如下好处:增加商务活动处理的敏捷性,对市场状况能更快的作出反应,能更好地为客户提供服务。 企业与企业间的电子商务(b-b 模式)主要是通过 internet 或专用网方式进行电子商务活动。企业间的电子商务是电子商务三种模式中最值得关注和探讨的,因为它最具有发展的潜力。 企业与消费者之间的电子商务(b-c 模式)主要是企业通过 internet 为消费者提供一个新型的购物环境-网上商店,消费者通过网络在网上购物、在网上支付。由于这种模式节省了客户和企业双方的时间和空间,大大提高了交易效率,节省了不必要的开支。企业与政府间的电子商务(b-g 模式)这种商务活动覆盖企业与政府组织间的各项事物,主要

41、包括政府采购、网上报关、报税等。10图 2-1 使用 jdbc api 与数据库交互2.22.2 j2eej2eej2ee 是一种利用 java 2 平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构8。由一整套服务(services) 、应用程序接口(apis)和协议构成,它对开发基于 web 的多层应用提供了功能支持,以下为 j2ee 中的 13 种技术规范:1、jdbc(java database connectivity)2、jndi(java name and directory interface)3、ejb(enterprise javabean)4、rmi(rem

42、ote method invoke)5、java idl/corba 6、jsp(java server pages) 7、java servlet8、xml(extensible markup language) 9、jms(java message service)10、jta(java transaction architecture) 11、jts(java transaction service) 12、javamail 13、jta(javabeans activation framework)下面根据设计中所涉及到的技术进行介绍。.1 jdbcjdbc1 1、jd

43、bcjdbc 简介简介jdbc(java data base connectivity, java 数据库连接)9是一种用于执行 sql 语句的 java api,可以为多种关系数据库提安防产品生产型中小企业基于开源软件的电子商务实现11供统一访问,它由一组用 java 语言编写的类和接口组成。jdbc 为工具/数据库开发人员提供了一个标准的 api,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 java api 编写数据库应用程序。图 2-1 展示了应用组件如何使用 jdbc api 与数据库进行交互servlet 使用数据模型(data model)和查询文件通过 ejb 和

44、jdbc 行集(rowset)调用来访问 jdbc 资源。2 2、jdbcjdbc 应用模型应用模型两层应用模型在两层应用模型中,一个 java applet 或者 java 应用直接与数据库对话。这需要jdbc 驱动器与特定的数据库管理系统(dbms)通信进行存取,sql 命令被发送到数据库,然后执行结果集再发送回给用户。三层应用模型在三层应用模型中,sql 命令被发送到服务中间层(middle tier),中间层再将 sql命令发送给数据库。数据库处理 sql 命令后将结果返回给中间层,中间层再将之发送回给用户。如图 22:三层模型该模型使对共享数据的存取和更新保持控制成为可能,另外一个好

45、处就是用户可以使用更易于使用的高级中间层 api,让中间层去完成对低级的调用。中间层结构具有性能优势。现在大多数的 web 应用都采用该模型进行开发和部署。4 4、jdbcjdbc 中重要的中重要的 5 5 个接口个接口(1) connection:特定数据库的连接(会话) 。在连接上下文中执行 sql 语句并返回结果。(2) statement:用于执行静态 sql 语句并返回它所生成结果的对象。(3) preparedstatement:表示预编译的 sql 语句的对象。(4) callablestatement:用于执行 sql 存储过程的接口图 2-2 三层模型12(5) result

46、set:表示数据库结果集的数据表,通常通过执行查询数据库的语句生成。.2 jspjspjsp 的全称是 java server page11,是由 sun 公司倡导、许多公司参与一起建立的一种动态网页技术标准;是在 servlet 技术基础上发展起来的;是在服务器端编译执行的 web 数据库系统应用程序编程语言,其脚本语言采用 java。事实上,jsp 页上在处理请求之前都要编译成 servlet。jsp 的执行过程如图 23 所示:(1) 客户端发出 request(请求) ;(2) jsp container 将 jsp 转译成servlet 的源代码;(3) 将产生的 s

47、ervlet 的源代码经过编译后,并加载到内存执行;(4) 把结果 response(响应)至客户端。jsp 在执行第一次后,会被编译成 servlet 的类文件,即为 xxx.class,当再重复调用执行时,就直接执行第一次所产生的 servlet,而不用再重复把 jsp 编译成servlet。因此,除了第一次的编译会花较久的时间之外,之后 jsp 和 servlet 的执行速度就几乎相同了。.3 javajava servletservletservlet 是对支持 java 的服务器的一般扩充。servlet 最常见的用途是扩展 web 服务器,提供非常安全的、可移植的、

48、易于使用的 cgi 替代品。servlet 是一种动态加载的模块,为来自 web 服务器的请求提供服务。它完全运行在 java 虚拟机上。由于 servlet浏览器web 服务器jsp page产生 servlet编译 servlet图 2-3 jsp 原理servlet调用 init()进行初始化service1service2service3调用 destory()进行销毁时间图 2-4 servlet 的生命周期安防产品生产型中小企业基于开源软件的电子商务实现13在服务器一端运行,因此它不依赖于浏览器的兼容性。1 1、servletservlet 的生命周期的生命周期servlet 从产

49、生到结束的流程如图 2-4:(1)产生 servlet,加载到 servlet engine 中,然后调用 init()方法进行初始化工作。(2)以多线程的方式处理来自 client 的请求。(3)调用 destory()来销毁 servlet,进行垃圾收集(garbage collection)。2 2、核心接口与方法、核心接口与方法由于目前 web 应用都是基于 http 协议的,在此我们只讨论 javax.servlet.http包下的类/接口与方法。(1) httpservlet 类该类扩展了 genericservlet 类并对 servlet 接口提供了与 http 更相关的实现。

50、public void service(httpservletrequest req,httpservletresponse res)throws servletexception,ioexception该方法作为 http 请求的分发器,这个方法在任何时候都不能被重载。当请求到来时,service()方法决定请求的类型,并把请求分发给相应的处理方法。(2) httpservletrequest 接口public interface httpservletrequest extends servletrequest所有实现此接口的对象(例如从 servlet 容器传递的 http 请求对象)都

51、能让servlet 通过自己的方法访问所有请求的数据。(3) httpservletresponse 接口public interface httpservletresponse extends servletresponseservlet 容器提供一个实现该接口的对象并通过 service()方法将它传递给servlet。通过此对象及其方法,servlet 可以修改响应头并返回结果。.4 xmlxmlxml 是 extensible markup language 的缩写。扩展标记语言 xml 是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式

52、建立,虽然 xml 占用的空间比二进制数据要占用更多的空间,但 xml 极其简单易于掌握和使14用。 xml 的简单使其易于在任何应用程序中读写数据,这使 xml 很快成为数据交换的唯一公共语言,虽然不同的应用软件也支持其它的数据交换格式,但不久之后他们都将支持 xml,那就意味着程序可以更容易的与 windows、mac os, linux 以及其他平台下产生的信息结合,然后可以很容易加载 xml 数据到程序中并分析他,并以 xml 格式输出结果。在 xml 中,采用了如下的语法:(1) 任何的起始标签都必须有一个结束标签。可以采用另一种简化语法,可以在一个标签中同时表示起始和结束标签。这种

53、语法是在大于符号之前紧跟一个斜线(/) ,例如。xml 解析器会将其翻译成。(2) 标签必须按合适的顺序进行嵌套,所以结束标签必须按镜像顺序匹配起始标签,例如this is a sample string。这好比是将起始和结束标签看作是数学中的左右括号:在没有关闭所有的内部括号之前,是不能关闭外面的括号的。(3) 所有的特性都必须有值。(4) 所有的特性都必须在值的周围加上双引号。xml 目前在 web 应用开发中使用广泛,在 java 开发中常用于系统配置与数据交换。.5 javamailjavamailjavamail12是 j2ee 平台的一个组成部分,它可以使用户绕开底

54、层协议而专注与具体通信消息,此外 javamail 提供了对 pop3、lotusnotes 和 mh 等协议的支持。java mail 分层体系(图 2-5):(1) 抽象层:该层定义了用于邮件处理的、功能的抽象类,接口和抽象方法。所有的邮件系统都支持这些功能,它独立于供应商和协议消息,抽象层位于 java mail 顶级(javax.mail)包内。(2) internet 邮件实现层:该层实现图 2-5 java mail 分层体系安防产品生产型中小企业基于开源软件的电子商务实现15了部分抽象层元素,遵循 internet 标准rfc822 和 mime。internet 邮件实现层所定

55、义的类和接口大多位于 ernet 包内。(3) 协议实现层:该层由服务提供商实现对特定协议的支持。如:smip、pop、imqp 和 nntp。2.32.3 mvcmvc 概述及特点概述及特点mvc(model-view-controller) 13是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用 mvc 应用程序被分成三个核心部件:模型(model)、视图(view)、控制器(controller)。它们各自处理自己的任务。1 1、模型、模型(model)(model)模型表示企业数据和业务规则。在 mvc 的三个部件中,模型拥有最多的处理任务。它

56、用来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。应用模型可以被多个视图重用,减少了代码的重复性。2 2、视图、视图(view)(view)视图是用户看到并与之交互的界面。包括 html、macromediaflash 和象xhtml,xml/xsl,wml 等一些标识语言和 webservices.3 3、控制器、控制器(controller)(controller)控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击 web 页面中的超链接和发送 html 表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用

57、哪个模型构件去处理请求,然后用确定用哪个视图来显示模型处理返回的数据。总结 mvc 的处理过程,首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户。使用 mvc 最明显的好处是把处理数据的对象与显示数据的对象分离开,减小了对象间的耦合度。对于日后系统的功能扩展与修改提供了最大的适应度,进行责任分类也减少代码的重复,使系统更容易维护。但是我们需要花费相当可观的时间去考虑如16何将 mvc 运用到应用程序,同时由于模型和视图要严格的分离,这样也给调试应用程序到来了一定的困难。使

58、用 mvc 同时也意味着我们需要管理比以前更多的文件,增加了我们开发的工作量。java 开发 web application 有几种符合 mvc 设计模式的开发方式。1: jsp+servlet+javabean (ejb)2: jsp+javabean (controller) + javabean (ejb)(model)3: tdk(turbine,velocity.)4: xsp5: jsp+struts+javabean (ejb)本设计使用的是 jsp + servlet + javabean 的 mvc 设计模式进行开发。2.42.4 数据库连接池数据库连接池连接池技术的核心思想

59、是:连接复用,通过建立一个数据库连接池以及一套连接使用、分配、管理策略,使得该连接池中的连接可以得到高效、安全的复用,避免了数据库连接频繁建立、关闭的开销。另外,由于对 jdbc 中的原始连接进行了封装,从而方便了数据库应用对于连接的使用(特别是对于事务处理) ,提高了开发效率,也正是因为这个封装层的存在,隔离了应用的本身的处理逻辑和具体数据库访问逻辑,使应用本身的复用成为可能。连接池主要由三部分组成:连接池的建立、连接池中连接的使用管理、连接池的关闭。(1) 连接池的建立应用程序中建立的连接池其实是一个静态的。所谓静态连接池是指连接池中的连接在系统初始化时就已分配好,且不能随意关闭连接。在系

60、统初始化时,根据相应的配置创建连接并放置在连接池中,以便需要使用时能从连接池中获取,这样就可以避免连接随意的建立、关闭造成的开销。(2) 连接池的管理连接池管理策略是连接池机制的核心。当连接池建立后,如何对连接池中的连接进行管理,解决好连接池内连接的分配和释放,对系统的性能有很大的影响。连接的合理分配、释放可提高连接的复用,降低了系统建立新连接的开销,同时也加速了用图 2-6 连接池安防产品生产型中小企业基于开源软件的电子商务实现17户的访问速度。(3) 连接池的关闭当应用程序退出时,应关闭连接池,此时应把在连接池建立时向数据库申请的连接对象统一归还给数据库(即关闭所有数据库连接) ,这与连接

温馨提示

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

评论

0/150

提交评论