房地产信息管理系统 第7页

房地产信息管理系统 第7页
图4-2 网站功能模块图
5 系统开发环境及关键技术
本系统是基于jsp,利用MyEclipse 6.0、MySQL 5.0、Tomcat 6.0 ,采用多层应用的开发方法和步骤,结合Ajax、JavaScript、MySQL的数据库设计与管理、CSS页面布局等相关知识和技巧,实现的一个MVC应用系统。
5.1 开发语言及开发工具的选择
5.1.1 开发语言的选择
目前,最常见的动态网站开发语言有ASP(Active Server Pages), PHP (Hypertext Preprocessor), .NET以及JSP(Java Server Pages)。
JSP是Sun公司推出的新一代开发语言,Sun公司借助自己在Java上的不凡造诣,将Java从Java应用程序和Java Applet之外,又有新的硕果,就是JSP,Java Server Page。JSP可以在Serverlet和JavaBean的支持下,完成功能强大的站点程序。JSP是基于Java Servlet 以及整个Java体系的Web开发技术,具有动态页面与静态页面分离、能够脱离硬件平台束缚、“一次编写,各处运行”等优点。JSP主要有如下5方面的特点:
(1) 内容的生成与显示相分离
(2) 可移植性
(3) 采用标签简化页面开发
(4) 使用可重用的组件
(5) 完善的存储管理和安全性
与JSP相比,PHP缺少企业级的支持、没有统一的数据库操作接口、安装较复杂、缺少正规的商业支持,无法实现商品化应用的开发。而ASP和ASP.NET的可移植性差且COM组件带来的安全问题,故本设计选用JSP作为开发语言。
5.1.2 Eclipse简介
Eclipse 是替代IBM Visual Age for Java(以下简称IVJ)的下一代IDE开发环境,但它不仅仅是成为专门开发Java程序的IDE环境,根据Eclipse的体系结构,通过开发插件,它能扩展到任何语言的开发,甚至能成为图片绘制的工具。Eclipse是一个开放源代码的项目,任何人都可以下载Eclipse的源代码,并且在此基础上开发自己的功能插件,它提供的核心框架和可扩展的插件机制给广大的程序员提供了无限的想象和创造空间。同时可以通过开发新的插件扩展现有插件的功能,比如在现有的Java开发环境中加入Tomcat服务器插件。可以无限扩展,而且有着统一的外观,操作和系统资源管理,这也正是Eclipse的潜力所在。
Eclipse是开放源代码的项目,Eclipse本身是用Java语言编写,但下载的压缩包中并不包含Java运行环境,需要用户自己另行安装JRE,并且要在操作系统的环境变量中指明JRE中bin的路径。安装Eclipse的步骤非常简单:只需将下载的压缩包按原路径直接解压既可,Eclipse会显示它的缺省界面,乍一看起来,Eclipse的界面有点象JBuilder,但实际操作进程中会发现它更象IVJ,另外还值得一提的是Eclipse项目的参与者除了IBM以外,还有象Borland,Rational Software,RedHat,Merant等一大批业界的姣姣者,这也为Eclipse的未来奠定了良好的基础。
使用插件可以丰富Eclipse的功能。下面将介绍如何应用插件来嵌入Tomcat服务器。这个插件并不是Eclipse项目组开发的,而是一家叫sysdeo的公司开发,非常小巧,只有27.8K。要安装插件只需将下载的zip文件按原路径解压到" Eclipse的安装路径\plugins"下面,然后重新启动Eclipse。启动后在菜单栏上选择Perspective Customize,在打开的对话框中选中Other Tomcat,之后马上会发现Eclipse有了两处变化:菜单栏中多了一个Tomcat选项,工具栏中多了两个按钮,上面是大家可能非常熟悉的Tomcat小猫。除此之外,在菜单栏中选择:Workbench Preferences,打开对话框后会发现这也多了一个Tomcat选项,在这里要求指定你的Tomcat安装根路径。之后还要检查一下在Preferences对话框中的Java Installed JRE所指定的JRE和启动Tomcat的JRE是否为同一个JRE,如果不是,可能会导致Tomat不能正常启动。如果以上检查没有问题,就可以用工具栏上的"小猫"直接起动Tomcat了。等到以下信息出现:
Starting service Tomcat-Standalone
Apache Tomcat/6.0.14
Starting service Tomcat-Apache
Apache Tomcat/6.0.14  www.751com.cn
之后就可以在外部浏览器(如IE)中输入http://localhost:8080来测试Tomcat是否正常 ,如果启动正常,可以进一步尝试在Eclipse中调试Servlet或JSP程序。
MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,MyEclipse是Eclipse的插件,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。MyEclipse为Eclipse提供了一个大量私有和开源的Java工具的集合,这解决了各种开源工具的不一致和缺点。MyEclipse的实际价值来自包含的发布包中的大量的工具。如CCS/JS/HTML/XML的编辑器,帮助创建EJB和Struts项目的向导并产生项目的所有主要的组件如action/session bean/form等。还包含编辑Hibernate配置文件和执行SQL语句的工具。它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。
在结构上,MyEclipse的特征可以被分为7类:
(1) J2EE模型
(2) WEB开发工具
(3) EJB开发工具
(4) 应用程序服务器的连接器
(5) J2EE项目部署服务
(6) 数据库服务
(7) MyEclipse整合帮助
对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。本设计正是采用MyEclipse 6.0 这个开发平台进行系统开发的。
5.1.3 数据库的选择
目前所使用的数据库有Oracle、SQL Server、DB2、MySQL、Sybase、Access、Informix、InterBase等。MySQL是开源SQL数据库管理系统,它由MySQL AB开发、发布和支持。MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中去。
房地产信息管理系统 第7页的设计与实现,选用MySQL数据库。从编程和管理能力方面看,MySQL具有良好的支持、灵活性和可扩展性,可以配置MySQL运行在微小的嵌入式应用程序中,处理的数据可能不足1Mb——而也可以用它来处理数Tb的数据。MySQL获得这种可扩展性的途径之一是通过一个人们所熟知的存储过程,这是一个运行在程序之外的微型、预编译程序。这些过程被存储和运行在数据库服务器上,以减少在客户端的处理过程,从而最大限度地提高了处理能力,因为通常情况下数据库服务器会运行地更快。此外,MySQL易学易用、低成本,对于MySQL数据库,无论是在开发方面,还是支持方面,现在有大量强大的工具可以选择。每一个新手开发者可以轻松地使用MySQL数据库进行开发,甚至一个有经验的Windows管理者也可以轻松部署并开始学习它。MySQL对硬件的要求也较低,由于MySQL易学、易部署、易管理和易维护,本设计选用MySQL数据库。
5.2 关键技术
5.2.1 MVC三层架构
MVC应用程序结构被用来分析分布式应用程序的特征。这种抽象结构有助于将应用程序分割成若干逻辑部件,使程序设计变得更加容易。MVC结构提供了一种按功能对各种对象进行分割的方法(这些对象是用来维护和表现数据的),其目的是为了将各种对象间的耦合程度减至最小。MVC本来是为了将系统的输入、处理、输出任务运用到图形化用户交互模型中而设计的。但是,将这些概念运用于基于Web的企业级多层应用领域也是很适合的。在MVC结构中,模型代表应用程序的数据和用于控制访问和修改这些数据的业务规则。通常模型被用来作为对现实世界中一个处理过程的软件近似,当定义一个模型时,可以采用一般的简单建模技术。当模型发生改变时,它会通知视图(view),并且为视图提供查询模型相关状态的能力。同时,它也为控制器提供访问封装在模型里的应用程序功能的能力。一个视图用来组织模型的内容。它从模型那里获得数据并指定这些数据如何表现。当模型变化时,视图负责维持数据表现的一致性。视图同时将用户要求告知控制器。控制器定义了应用程序的行为,它负责对来自视图的用户要求进行解释,并把这些要求映射成相应的行为,这些行为由模型负责实现。在独立运行的GUI客户端,用户要求可能是一些鼠标单击或是菜单选择操作。在一个Web应用程序中,它们的表现形式可能是一些来自客户端的GET或POST的HTTP请求。模型所实现的行为包括处理业务和修改模型的状态。根据用户要求和模型行为的结果,控制器选择一个视图作为对用户请求的应答。通常一组相关功能集对应一个控制器。
三层架构是基于模块化程序设计的思想,为实现分解应用程序的需求,而逐渐形成的一种标准模式的模块划分方法。此模型将应用程序划分为三个层次:
用户界面层:负责处理用户的输入和向用户输出,但并不负责解释其含义。有时候出于对效率的考虑,这一层可能会在向上传输用户输入之前进行合法性验证。这一层通常采用前端工具(如 VB、VC 和 Java)开发。
业务逻辑层:这一层是上下两层的纽带,它根据开发和管理的需要建立实际的业务规则,这一层通常以动态链接库的形式存在,并注册到服务器的注册表中,它与前端界面通讯的接口符合某一特定的组件标准(如 COM 组件)。可以用任何支持这种标准的工具开发。
数据访问层:根据功能需求来实现对数据表的Select,Insert,Update,Delete的操作,是为业务逻辑层服务的。
数据库或者文件等存储介质的操作可以直接在JSP页面中进行,同时JSP页面还可以完成页面等表现层工作。这样JSP页面中包括数据库操作、业务逻辑和用户显示三部分内容,利用JSP+JavaBean的开发模式可以提高系统的灵活性、可维护性、可重用性。JSP提供用户显示支持,而在JavaBean中实现数据封装、持久化和业务操作。MVC结构很好的实现了数据层和表示层的分离。这样就很方便的实现了三层架构。其图示如下:
图 5-1 三层架构图
5.2.2 CSS技术
CSS(Casading Style Sheets 层叠样式表),它是一种用来表现 HTML 或 XML 等文件式样的计算机语言。在早期,HTML为网页设计者提供了强大的格式设置功能,但必须为每个需要设置的地方使用格式设置标记,而不能为具有一定逻辑含义的内容设置统一的格式。这对设计和维护一个网页数量众多的网站来说,将增加许多的工作量。此外,每个网页设计者按照自己的喜好设计制作网页,来自不同人员开发的网页作品很难统一在一个网络中。运用CSS技术,可以克服HTML的这些缺陷,方便地为所有网页设置一种风格。特别地,如果将原来安排在网页文件中的格式化元素和属性提取到网页外部,将这些样式规则定义到一个样式表文件中,则可以为所有需要使用该样式的网页所链接。CSS是一种格式化网页的标准方式,它对颜色、字体、间隔、定位以及边距等格式方面提供了多种属性,这些属性均可用于HTML标记符。它的优点概括如下:
(1)方便网页格式的修改
(2)便于减少网页体积
(3)能使网页元素更准确的定位
(4)良好的适应性
5.2.3 Ajax技术
 AJAX是(Asynchronous JavaScript and XML)异步JavaScript和XML的缩写。是指一种创建交互式网页应用的网页开发技术。它是几项技术按一定的方式组合在一起协作发挥出各自的作用,包括:使用XHTML和CSS标准化呈现;使用DOM实现动态显示和交互;使用XML和XSLT进行数据交换与处理;使用XMLHttpRequest进行异步数据读取;最后用JavaScript绑定和处理所有数据。Ajax的工作原理相当于在用户和服务器之间加了—个中间层,使用户操作与服务器响应异步化。这样把以前的一些服务器负担的工作转嫁到客户端,利于客户端闲置的处理能力来处理,减轻服务器和带宽的负担,从而达到节约ISP的空间及带宽租用成本的目的。

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 

Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有