《基于SQLServer_Hibe_省略_信息门户网站开发平台的设计与实现_丛根滋.docx》由会员分享,可在线阅读,更多相关《基于SQLServer_Hibe_省略_信息门户网站开发平台的设计与实现_丛根滋.docx(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 第 28卷第 12期 2011年 12月 计算机应用与软件 Computer Applications and Software Vol. 28 No. 12 Dec. 2011 基于 SQL Server + Hibernate + JSF的信息门户网站 开发平台的设计与实现 丛 根 滋 苏 中 滨 沈 维 政 (东北农业大学工程学院黑龙江哈尔滨 150030) 摘要 网站开发技术研宄的一个方向是以网站作为一个平台,实现尽可能多的功能 ;二是尽可能以较低的成本实现网站的开发 和管理。主要研宄通过图形化方式简化网站开发、管理、维护过程,降低手工代码编写率,降低成本,提高效率,兼顾功能。并以
2、SQL Server、 Hibernate和 JSF技术为基础设 ii个实用的图形化的网站开发平台。 关键词 网站开发图形化信息管理 中图分类号 TP302 文献标识码 A INFORMATION PORTAL WEBSITE DEVELOPMENT PLATFORM DESIGN AND IMPLEMENTATION BASED ON SQL SERVER + HIBERNATE + JSF Cong Genzi Su Zhongbin Shen Weizheng (School of Engineering, Northeast Agricultural University, Harbi
3、n 150030, Heilongjiang, China) Abstract There are two directions in the research of website development technology. One is to regard the website as a platform where as many functions as possible are to be realized; the other is to develop and manage the website at a comparatively low cost. The paper
4、 mainly studies how to simplify the website development? management and maintenance process, reduce manual coding, cut down its cost, improve efficiency and satisfy functions. Additionally based on SQL Server, Hibernate and JSF technology, a practical graphic website development platform is designed
5、. Keywords Website development Graphics Information management 引言 当今信息时代,门户网站对于各企事业单位的重要意义不 言而喻,相应的门户网站的制作、管理、维护技术也在不断迅速 发展。虽然随着门户网站技术的发展,网站作为一个平台被赋 予了更多的功能,例如资源共享、用户交流等,但信息发布依然 是其必备的最基本的功能,随着大量信息的涌入,如何对这些信 息进行加工、管理、维护、更新以及方便、快捷、美观地展示给每 个用户也变得日益重要。早期的网站采用静态网页的方式,虽 然起到一定的展示效果,但对于后台大量信息的维护和修改几 乎无法进行;后
6、来采用数据库模式,将网站内容存入数据库,方 便了数据的管理,但网站都是针对特例而专门手工编写代码定 制而成的,虽然提高了网站的个性化显示效果,但却将数据内 容、数据管理、数据展示混杂在一起,导致对网站进行大的维护 和修改极为不便,几乎等同于重新制作网站,可重用性非常低, 浪费了大量的成本。由此,就提出了一个如何以低成本、高效率 的方式制作便于管理和维护的网站的问题,推动了网站制作平 台的产生。 信息门户网站开发平台就是在这种前提下提出的。本平台 通过图形化的方式实现网站架构的设计和修改,网站内容的管 理,网站个性化、模板化的显示等功能,使用户在仅知道 一些简 单知识的条件下就能制作出一个实用的
7、、个性化的网站。本文 所研宄的不是一个网站,而是用来开发、管理、维护网站的一个 工具,一种网站开发模式。 1系 统 技 术 架 构 设计 该平台采用了基于 SQL Server + Hibernate + JSF技术的 J2EE三层非分布式的构架来实现,具体架构设计如图 1所示。 图 1三层非分布式架构示意图 1.1表示层 表示层的功能是收集用户的输入、展示数据、控制页面导航 并将用户的输入传递给业务逻辑层,验证用户的输入以及维护 应用的 session状态等。当前可供选择的框架比较多,例如 Stmts、 WebWork和 JSF等,在本平台中,我们采用 JSF框架。 JSF是 Web应用的服
8、务器端的用户组件框架,非常适合基 收稿日期 :2010 - 10 - 12。丛根滋,硕士生,主研领域:智能决策支 持系统。 于 MVC的表示层架构,它将行为和表示进行了清晰地分离,使 得系统开发人员可以采用熟悉的 UI组件和 Web层概念而无须 受限于某种特殊的脚本技术或标记语言。 另外, JSF不仅仅是一个 Web框架,它是面向对象的 Web 应用开发,通过 baCking4ean管理将 UI组件对象的定义同执行 应用相关处理和拥有数据的对象分离开来, JSF在合适的范围 内保存和管理这些 backing4ean实例;通过可扩展、可配置、可 重用的 UI模型,便于构建 JSF应用的用户界面,
9、例如菜单条、 树组件等;通过 renderer模型分离 UI组件的功能和显示,多个 renderers可用来为同一客户端或不同的客户端定义不同的显 示;通过基于标准的 converter和 validator,可以开发出可提供更 好的模型保护的 converter和validator等。 1.2业务逻辑层 为了使系统结构更为清晰,便于平台的设计与实现,提高平 台的业务执行效率,我们将复杂的业务逻辑单独封装一层,专一 的处理业务逻辑,页面表现和数据持久交则化由其他层来完成。 1.3数据持久层 系统利用关系型数据库 SQL Server实现数据的持续化,实 现方法也存在多种。 1) JDBC JD
10、BC是最为灵活的方法,但低级的 JDBC难以 使用,而且质量差的 JDBC代码很难良好的运转。 2) Entity beans CMP的 Entity bean是一种分离数据访问 代码和处理 ORM的昂贵的方法,它是以应用服务器为中心的 方法,即entity bean不是将应用与某种数据库类型而是 EJB容 器约束在一起。 3) 0/R mapping framework ORM框架采用以对象为中心 的方法实现数据持续化,以对象为中心的应用易于开发并具有 高度的可移植性。在该领域中存在较多的可用框架,例如 JDO、 Hibernate、Top Link 以及 CocoBase 等。 本平台选用
11、 Hibernate,它通过配置文件 ( hibernate. properties 或 hibernate, cfg. xml) 和映射文件 ( * * * hbm. xml) 把 Java 对象或持久化对象 P (Persistent Object)映射到数据库中的数 据表,然后通过操作 P ,对数据表中的数据进行增加、删除、修 改、查找等操作。 2系 统 逻 辑 架 构 设计 图 2平台逻辑架构设计图 通过应用以上技术,系统的实现思想如图 2所示。大致可 划分为三个模块 :底层设计、后台设计、前台设计。底层设计包 括数据库层,数据持久层和业务逻辑层的设计;后台设计包括面 向管理员的界面及
12、功能设计;前台设计包括面向网站访问者的 界面及功能设计。 2.1底层设计 底层主要是选择数据库,设计生成数据表,主要包括网站架 构表、网站内容表、内容分类表, XSLT模板表等 ;配置 Hibernate, 编写配置文件, 0/R映射文件及持久化类 ;编写 XML文件,实现 数据操作业务功能的封装。该层主要用以提高对数据库操作的 效率和实现数据库操作对表示层的透明化。 2.2后台设计 后台主要实现以图形化方式对数据进行便捷、有效地管理, 界面以简洁方便为主,主要以 JSF技术实现。实现管理员认证 登录,权 限分配等。 1) 指定权限管理员对网站架构进行设计,对网站架构节点 进行添加、删除或修改
13、,以及对节点属性的修改,例如增加新节 点,修改节点位置,修改节点引用模板等。实现网站架构的构建 和维护。后台显示方式如图 3所示。 图 4网站内容列表显示图 4) 指定权限管理员管理网站内容,如图 5所示。例如新建 内容项插入网站内容表并指定挂载节点和分类,将通过内容分 类树和搜索得到的内容列表进行修改、删除,进入指定内容项重 新编辑内容、修改挂载节点或分类等。实现内容的管理、维护。 第 12期 丛根滋等 :基于 SQL Server+ Hibernate +JSF的信息门户网站开发平台的设计与实现 219 图 5网站内容编辑界面 5) 增加或删除 XSLT模板。便于对模板进行管理和引用。 6
14、) XSLT模板设计、编写,并存入指定的文件夹,提供给 XSLT模板表。 2.3前台设计 前台的主要功能是读取网站架构和网站内容并按照指定的 模板快速、美观的显示给网站访问者,网站布局,美化设置均在 模板上实现。以 JSF实现功能显示,并配以 XSLT和 AJAX, 实 现模板化、个性化和美观效果。提供站内搜索,便于网站访问者 浏览特定的内容。 显示导航栏的部分代码: 3优缺点分析 3 . 1 优点 1) 在技术方面,该平台使用当前先进的 SQL Server、 Hiber- nate和 JSF技术,实现了网站的图形化方式的开发、管理和维 护,具有较大的实用性。缩短了网站开发周期,提高了网站开
15、发 和管理效率,降低了对网站开发和管理人员能力的要求,降低了 网站开发、管理和维护的成本。 2) 在逻辑设计方面,本平台将网站的架构、网站的内容、网站 的显示模板分成三个基本相互独立的模块,便于网站的管理、显示, 只在显示时才将网站的结构、网站的内容和 XSLT模板联系起来显 示给用户,因此也提高了模板设计的独立性。模板为引用型,不同 的页面、节点可以引用同一个模板,模板不再附属于某个节点或页 面,提高了模板的可重用性,节省了空间。管理员可以便捷地更换 不同的模板,提高前台界面显示的灵活性和多样性。 3) 在扩展方面,可以在此基础上进行进一步研宄,实现更 多的功能。提供了扩展接口,可在节点下直
16、接挂载其他网站或 模块,无需改动原有设置和代码。 3 . 2 缺点 1) 尚不能实现完全图形化制作、管理网站。模板编写需要 编写代码。数据库表及表项进行增删时,需要增删相应的数据 映射层和逻辑封装层代码,增加表时只需增加相应层代码,原来 表的0/R映射无需修改。可以在平台设计时尽可能全面考虑 和表项,减少后期平台应用时的代码编写量,但不可能考虑到所 有的情况,而且在某些具体的情况下过多的表和表项用不到,会 导致代码冗余和资源浪费,这一点还需要具体情况具体论证,寻 找最佳效果。 2) 大规模数据更新和修改时,图形化实现数据操作效率偏 低,更利于实现中小型网站的开发和管理。 3) JSF为新技术
17、,尚有一些不足之处,应用时需采取相应 的规避策略。 显示节点模块的部分代码: 前台示例图,如图 6所示。 3.3与当前网站开发平台相比较 1) 思路优势当前普遍使用的是 .NET等网站开发平台, 设计思路是首先设计网站架构,并将网站架构写入到代码中,在 此基础上设计网站内容并对内容进行数据库管理,其优点是可 以最大化地实现网站的个性化和最优化,但缺点也很明显,不容 易对网站架构进行修改,每当设计一个新的网站或者对网站进 行改版时都需要书写百分之八十以上的代码,十分复杂。本平 台的思路是将网站架构也纳入到图形化设计中来,存入数据库, 通过简单的图形化方式对网站架构进行设计和修改,增加了网 站设计
18、的简捷性。由于网站的架构和内容与前台显示互相分 离,在网站改版时只需要修改模板就能够达到改版的效果,只需 要修改百分之十几,甚至更少的代码就能实现,十分简便。 2) 成 本 优 势 用 .NET平台制作网站需要专业的设计和维 护人员才能完成,每个网站的成本都要数万元甚至更多,改版几 乎等同于二次购买。而用本平台,普通人员只需要稍加培训就 能够完成网站的制作、维护、更新、改版等操作,成本低廉。 4总结展望 图 6前台界面示例图 本系统为业外人士提供了一个便捷、可行、实用的网站制作 (下转第 242页) 设置环境变量: EC2_PRIVATE_KEY = /mnt/pk-3AU7ITANH746P
19、EK7LKVMHI6Z WPFBHBAS. pem EC2_CERT = D: /mnt/cert-3 AU7ITANH746PEK7LKVMHI6ZWP FBHBAS. pem 2) 下载 Amazon EC2 AMI Tools :ec2ami-tools 以及 Amazon EC2 APITools:ec2apitools。 将其解压到 /mnt/ec2 目录下,并设 置环境变量 EC2_H0ME= /mnt/ec2。 3) 通过 Amazon EC2 API Tools提供的工具生成一个 SSH 密钥对用于登录 EC2实例。执行以下命令生成名字为 my4cey 的密钥对: ec2-ad
20、d 4teypair my4tey 得到输出: KEYPAIR my-key 82 : ce: 8e: 64 :31 :30 :45 : a3 :55 : d8 :5f:73 :18 : a4 : 64:03 :c3 :d6:4c: 50 BEGIN RSA PRIVATE KEY MIIEpQIBAAKCAQEApoAuepG42b7KAEyRp22F9oWK0yNe0 mA7rI + ymOl + fOl /FN8iPBpLcQKSMjcuzINhHJc7xtF YjjDrdBYvbxsH74g + g3P507uePmQA = END RSA PRIVATE KEY 将该文件保存为 ke
21、y. ppk文件,在登录实例时使用。 4) 通过 Amazon EC2 AMI Tools制作私有带有多媒体系统 的私有镜像。 ec2-bundle-vol -d /mnt -k /mnt/pk-3AU7ITANH746PEK7LKVMH I6ZWPFBHBAS. pem -c /mnt/cert AU7ITANH746PEK7LKVMH I6ZWPFBHBAS. pem -u 572734211278 -s 1536 i386 其中 -d指定目录, -k指定 X. 509 Private Key路径, -c 指定 X. 509 Certificate路径, -u指定 AWS账号 ID, -
22、s指定存 储 容 量 , 为 i386。 可以通过生成的 image, manifest, xml的文 件唯一识别操作镜像。 5) 在 S3上创建名为 neulionec2ami的 bucket, 并将制作好 的镜像上传到该 bucket上。执行以下命令: ec2-upload-bundle 4) neulionec2ami /mnt/image, manifest, xml -a AKIAJLIL3TJ4WLUZA6LQ -s Be03nFlNALnwl6ByH41Iv724 VIPwIyLX7LdNbnXf 其中 -b指定 S3 Bucket名字, -m指定 manifest, xml路径
23、, a 指定 aws-access-key-id, - s 指定 aws-secret-access-key 通过工具上传至 S3后,如图 3所示,由 Elasticfox插件看到 私有镜像的纪录,并通过自动生成一个唯一识别号 amiami- 77al481e来管理镜像。 1 images ( n* gf c nfir?tc2 FKr ID ” Han/est Sta Ovunr V&blty Art (am-?al4Sle nevlonecaiTWmage. aval 572734211. prwate _ i3S4 图 3私有镜像 ami77al481e 6) 使用之前生成的 RSA密钥开
24、启虚拟机,并通过该密钥 获得实例的 root权限。运行以下命令开启虚拟机: ec2-run4nstances ami-77al481e -k my4tey 其中 -k就是使用哪个密钥对作为登录密钥。 7) 通过内容管理子系统将视频文件上传至 S3中。 8) 通过申请 Elastic IP获得固定的 IP地址。并将这个 IP 和启动的实例绑定。本系统申请的固定 IP为 184.73.216. 118 至此,就能将我校原有的数字多媒体点播平台迀移到了亚 马逊云计算平台,系统使用 Red5作为流媒体播放器,使用 Tom- cat作为 Web容器,在路由层提供负载均衡。通过 Management Co
25、nsole7设置 Auto Scaling的上下限阈值为 80以及 30,即当 CPU使用率超过 80%时开启额外的 EC2实例,当低于 30%时则 关闭多余的 EC2实例。系统为东华大学提供校园多媒体服务, 运行平稳。 5总结与展望 本文在校园环境的实际情况下,利用亚马逊云计算平台,针对 校园多媒体系统具有时效性和偶发性的特点,搭建了一个基于云计 算的多媒体系统。该系统有效地降低了成本,并且系统具有极佳的 可扩展性,很好地契合了校园多媒体系统所要求的特性。 现在云计算的概念己经普遍被人们接受,基于云计算的应用 也开始使用在许多关键应用上。而在传统行业以及大型企业中,私 有云开始兴起。私有云可
26、以在企业防火墙内部处理保密数据,并有 效地节省计算资源。可以预计的是面向 SNS的 Web2.0企业必将 向云计算方向迀移,并通过云计算有效降低成本。 总而言之,云计算将对现在的 IT业产生巨大的影响,将是 业界发展的大趋势。 参考文献 1 Amazon Elastic Compute Cloud (Amazon EC2) L , 2009. http: / aws. amazon. com/ec2/. 2 Amazon Simple Storage Service S3 OL, 2008 - 12. http:/ /aws. am azon. com/s3 /. 3 Brantner M,
27、Florescu D, Graf D A, D. et al. Building a database on S3 C /Proc. of ACM SIGMOD,2008. 4 陈全,邓倩妮 .云计算及其关键技术 D.计算机应用, 2009,29 (9). 5 James Murty. Programming Amazon Web Services M . OReilly? 2008. 6 朱立谷,谢长生,周世正 .连续媒体存储技术的研宄 D.计算机 工程, 2006 (8). 7 AWS Management Console OL . 2009. http: /aws. amazon, co
28、m/ console /. (上接第 219页) 平台;为业内人士提供了一种图形化方式实现网站设计的切实 可行的方案。不同于简单的把前台直接搬到后台,加上修改设 置,而是对设计模式和管理效率进行了一定的改进。 本文对网站的图形化制作、管理和维护做了初步研宄,在此 基础上还可以进行更深一步改进,例如模板的组件化制作,增加 新的功能模块,更详细的后台功能权限图形化划分等,进一步提 高网站制作和管理的图形化实现率。这是降低网站开发管理成 本的一个有效途径。 参 考 文 献 1 刘洁 .网站自动生成系统应用研宄 D.河北省科学院学报, 2006 (3). 2 张兴军,王猛,任辉辉 .企业门户网站开发平台的设计 D.电脑知 识与技术,2008 (9). 3 蔡雪焘 .Hibernate开发及整合应用大全 M.北京:清华大学出版 社, 2006. 4 吉瑞,霍斯特曼 .JavaServerFaces核心编程 M .2版 .北京 :清华大 学出版社, 2008.