2.3 Struts技术简介
Struts是Apache软件基金会ASF)赞助的一个开源项目。它最初是Jakarta项目中的一个子项目,并在2004年3月成为ASF的顶级项目。它通过采用Java Servlet/JSP技术,实现了基于Java EE Web应用的Model-View-Controller〔MVC〕设计模式的应用框架〔Web Framework〕,是MVC经典设计模式中的一个经典产品。
在Struts中,已经由一个名为ActionServlet的Servlet充当 控制器(Controller)的角色,根据描述模型、视图、控制器对应关系的struts-config.xml的配置文件,转发视图(View)的请求,组装响应数据模型(Model)。在MVC的 模型(Model)部分,经常划分为两个主要子系统(系统的内部数据状态与改变数据状态的逻辑动作),这两个概念子系统分别具体对应Struts里的ActionForm与Action两个需要继承实现超类。在这里,Struts可以与各种标准的数据访问技术结合在一起,包括Enterprise Java Beans(EJB), JDBC与JNDI。在Struts的视图(View)端,除了使用标准的JavaServer Pages(JSP)以外,还提供了大量的标签库使用,同时也可以与其他表现层组件技术(产品)进行整合,比如Velocity Templates,XSLT等。通过应用Struts的框架,最终用户可以把大部分的关注点放在自己的业务逻辑(Action)与 映射关系的配置文件(struts-config.xml)中。在Struts2中大量使用拦截器来处理用户的请求,从而允许用户的业务逻辑控制器与Servlet API分离。下图是Struts2的体系结构简图。
图3 Struts2的体系结构简图
2.4 JavaBean技术简介和Tomcat简介
JavaBean 是一种基于 Java 的软件组件。 JSP 对于在 Web 应用中集成 JavaBean 组件提供了完善的支持。这种支持不仅能缩短开发时间(可以直接利用经测试和可信任的已有组件,避免了重复开发),也为 JSP 应用带来了更多的可伸缩性。 JavaBean 组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据提取等。
Tomcat服务器是一个免费的开放源代码的Web应用服务器,它是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和
6
其他一些公司及个人共同开发而成。因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
2.5 SQL Server技术简介
SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI) 工具提供了企业级的数据管理。SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务特性概况
SQL Server 2005 特性概况 图4 SQL Server2005特性概况
SQL Server 2005 数据引擎是本企业数据管理解决方案的核心。此外 SQL Server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。
与 Microsoft Visual Studio、Microsoft Office System 以及新的开发工具包(包括 Business Intelligence Development Studio)的紧密集成使 SQL Server 2005 与众不同。无论您是开发人员、数据库管理员、信息工作者还是决策者,SQL Server 2005 都可以为您提供创新的解决方案,帮助您从数据中更多地获益。
7
3系统需求分析
需求分析的任务是通过详细调查现实世界要处理的对象,充分了解网站的工作概况,明确用户的各种需求,然后在此基础上确定新网站的功能。新网站必须充分考虑今后可能的扩充和改变。在这里我们需要了解用户有什么样的具体要求和对网站性能的要求。
用户的需求分析: (1) 用户注册 (2) 用户登录 (3) 房屋信息浏览 (4) 修改密码 (5) 修改个人信息 (6) 房屋信息修改 (7) 房屋信息发布
基于JSP+JavaBean+Struts的房地产信息公布与查询系统的目标就是为用户提供发布信息和查看信息的一个平台。普通用户可以通过该系统注册,查看房屋信息,修改个人信息;系统管理员可以根据需要发布、修改房屋信息,删除用户,修改密码等。
3.1 设计目标
该房地产信息公布与查询系统主要分为三个模块:
(1)用户登录模块:用户通过输入用户名和密码,提交相关信息后,交由后台分析处理。
(2)普通用户功能模块:普通用户登录系统后可以查看房屋的相关信息,此外学生还可以更改自己的基本个人信息和密码。
(3)系统管理员功能模块:系统管理员登录系统后可以发布、修改、删除房屋的相关信息,修改管理员密码和删除普通用户等。
3.2 功能分析
3.2.1 从用户角度来看
用户通过在线注册成为该系统的用户,可以获得以下功能:房屋信息浏览,修改密码,修改个人信息等。
3.2.2 从系统的角度看
1. 管理员管理
8
查看用户信息,并根据用户信息进行删除操作。 2. 房屋信息浏览 (1) 房屋名称 (2) 地址 (3) 楼层 (4) 状态 (5) 价格 (6) 图片信息 (7) 相关描述
3. 房屋信息的发布与修改 管理员发布或者修改房屋信息。
3.3 性能需求
(1) 可靠性
系统在一定时间内持续可用,可在每日特定时间段内对系统进行维护。传输数据服务要求准确,不能丢失数据。系统应有分级权限和逐级授权管理功能。
(2) 可维护性
软件采用面向对象技术开发,较之过程化技术,更容易维护。软件严格和规范文档化,给系统的维护带来方便。软件规范模块化,尽量做到低耦合,便于软件的更新修改,增强可维护性
(3) 性能,效率
本软件安全保护优良,可提供备份,工作有较好的稳定性,响应时间短,系统可以在1小时短时间内实现恢复。如果硬件损坏,应提供应急和替代方案。
(4) 可扩展性
系统功能扩充或使用单位增加时应不影响现有系统功能和结构。系统建设要求能够保护投资,当系统数据量和访问量增大而导致系统配置不能满足要求时,可以通过仅增加服务器等硬件进行解决,而不是在软件上做修改。
(5)安全性 硬件设备的安全性。
操作系统及支持软件的安全性(必须进行安全配置)。 应用及数据的安全性。 (6) 易用性
要求管理用户具有一定的计算机知识和操作能力,按照数据流程进行操作 (7) 兼容性
本软件在windows系列操作系统上都可以正常运行。对硬件的要求也不高,一般PC机上均可。
9
(8) 可移植性
本系统可以移植到windows系统的计算机上,也可以移植到Linux系统的计算机上。
3.4 数据需求
(1)数据录入和处理的准确性和实时性
数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不正确和不可用,从而使系统的工作失去意义。数据的输入来源是手工输入。手工输入要通过系统界面上的安排系统具有容错性,并且对操作人员要进行系统的培训。
在系统中,数据的输入往往是大量的,因此系统要有一定的处理能力,以保证迅
速的处理数据。
(2)数据的安全性
本系统为房地产公司设计,因此只有特定的管理者才能对数据实现增、删、改、查等操作。未获授权人员不能进入系统。
(3)数据的备份
要定期对数据库中的数据进行全部或新增部分的备份工作,以保证在硬件出现故障或人为原因导致无法运行时可以快速及时的还原到原来的正常状态。
10