3.2.2采用JAVA语言实现
1、跨越平台的限制
尽管目前Windows桌面系统一统天下,但是服务器系统采用的操作系统却具有多样性,包括Linux、Unix、Windows NT/2000Server等系统都可以实现企业级应用。即便是桌面系统,中国政府出于安全和国家战略的考虑,希望有自己的操作系统,Linux的出现使这种想法变成了现实。
传统的C/S架构的软件需要针对不同的操作系统开发不同版本的软件,面对众多的操作系统和软件快速的升级换代,采用这一架构开发软件,对于企业的IT投资无疑是一种巨大的风险。而采用Java语言实现的B/S架构的软件产品真正做到了“一次编写处处运行(Write Once, Run Anywhere)” ,对企业而言,可以规避将来更换操作系统所带来的风险。
2、健壮的系统
Java语言实现的软件具有天然的健壮性。这是Java语言自身的特性保证的。利用Java写成的软件几乎不可能造成系统崩溃,这正是安全性要求很高的企业级应用所不可或缺的特性。
第四章 公交查询系统设计分析
根据数据库系统生存期的设计方法,从数据库应用系统和开发的全过程来考虑,将数据库应用系统设计分为以下几个阶段:
1)规划;
2)需求分析;
3)概念设计;
4)逻辑设计
5)物理设计
§4.1应用需求分析
要设计一个良好的公交查询系统,就必须首先明确该应用环境对系统的要求。公交查询系统的应用背景为:方便市民搭乘公交车出行;手动(目前)、自动(将来)、及时更新查询数据。因此,该系统需满足以下几方面需求:
1、查询功能:系统需要提供几种不同方式的查询手段,以实现灵活方便地管理整个系统。
2、数据的更新修改:
更新:系统允许管理员级别的用户对数据进行更新、修改并且存盘操作;
编辑:系统允许管理员级别的用户对数据进行编辑、删除的操作,保证现库的真实性与实时性。
3、打印输出(暂未实现):系统可以将用户查询到的内容动态地生成报表,并打印输出。
§4.2 系统功能模块划分
公交查询系统功能划分模块如下:
查询系统模块
该模块实现公交查询功能。可实现按起点-中转站-终点查询查询和按线路查询两种查询方式。
录入系统模块
该模块实现数据的录入、修改、删除功能。
§4.3 系统数据库设计
4.3.1 概念设计
概念设计的目标是产生反映城市公交查询系统需求的数据库概念结构,即概念模式。概念模式是独立于数据库逻辑结构,独立于支持数据库的DBMS,不依赖于计算机系统的。
1、ER模型
ER模型是对现实世界的一种抽象。它的主要成分是实体、联系和属性。使
用这三种成分,我们可以建立许多应用环境的ER模型。
2、 ER模型的操作
在利用ER模型进行数据库概念设计的过程中,常常需要对ER图进行种种
变换。这些变换又称为ER模型的操作,包括实体类型、联系类型和属性的分裂、合并和增删等等。
3、利用ER方法的数据库概念设计
利用ER方法进行数据库的概念设计,可以分成三步进行:首先设计局部ER模式,然后把各局部ER模式综合成一个全局ER模式,最后对全局ER模式进行优化,得到最终的ER模式,即概念模式。
设计局部的ER模式
通常,一个数据库系统都是为多个不同用户服务的。各个用户对数据的观点可能不一样,信息处理需求也可能不同。在设计数据库概念结构时,为了更好地模拟现实世界,一个有效的策略是“分而治之”,即先分别考虑各个用户的信息需求,形成局部概念结构,然后再综合成全局结构。在ER方法中,局部概念结构又称为局部ER模式,其图形表示称为ER图。
实体和属性的定义如下:
站点(站点编号,站点名称,站点类别)
线路(线路编号,始发时间,终发时间,备注)
线路站点对应(线路编号,站点名称)
4、联系定义
ER模型的“联系”用于刻画实体之间的关联。一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。若有联系,进一步确定是1:N,M:N,还是1:1等。还要考察一个实体类型内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系,等等。
5、设计全局ER模式
所有局部ER模式都设计好了后,接下来就是把它们综合成单一的全局概念结构。全局概念结构不仅要支持所有局部ER模式,而且必须合理地表示一个完整、一致的数据库概念结构。
1)确定公共实体类型
为了给多个局部ER模式的合并提供开始合并的基础,首先要确定各局部结构中的公共实体类型。在这一步中我们仅根据实体类型名和键枕认定公共实体类型。一般把同名实体类型作为公共实体类型的一类候选,把具有相同键的实体类型作为公共实体类型的另一类候选。
2)局部ER模式的合并
合并的原则是:首先进行两两合并;先和合并那些现实世界中有联系的局部结构;合并从公共实体类型开始,最后再加入独立的局部结构。
3)消除冲突
冲突分为三类:属性冲突、结构冲突、命名冲突。
设计全局ER模式的目的不在于把若干局部ER模式形式上合并为一个ER模式,而在于消除冲突,使之成为能够被所有用户共同理解和接受的同一的概念模型。
4)全局ER模式的优化
在得到全局ER模式后,为了提高数据库系统的效率,还应进一步依据处理需求对ER模式进行优化。一个好的全局ER模式,除能准确、全面地反映用户功能需求外,还应满足下列条件:实体类型的个数要尽可能的少;实体类型所含属性个数尽可能少;实体类型间联系无冗余。
4.3.2逻辑设计
由于概念设计的结果是ER图,DBMS一般采用关系型,因此数据库的逻辑设计过程就是把ER图转化为关系模式的过程。由于关系模型古有的优点,逻辑设计可以充分运用关系数据库规范化理论,使设计过程形式化地进行。设计结果是一组关系模式的定义。
1)导出初始关系模式
2)关系子模式
子模式是用户所用到的那部分数据的描述。除了指出用户用到的数据外,还应指出数据与概念模式中相应数据的联系,即指出概念模式与子模式之间的对应性。
第五章 公交查询系统应用程序设计(部分)
§5.1查询模块的功能实现
<%@ page contentType="text/html; charset=ISO8859_1" %>
<%@ page import="java.sql.*,java.util.*,com.lanyuer.util.*;" %>
<%
List routes = null;
Connection connection;
com.lanyuer.route.route_Manager route_Manager = com.lanyuer.route.route_Manager.getInstance();
connection = DataConnectionManager.getInstance().getConnection();
try {
routes = route_Manager.selectes(connection);
} catch (Exception e) {
throw e;
} finally {
if (connection != null) {
connection.close();
connection = null;
}
}
%>
§5.2管理更新的功能实现
5.2.1公交站点管理
<%@ page contentType="text/html; charset=ISO8859_1" %>
<%@ page import="java.util.*,java.sql.*,com.lanyuer.util.*;" %>
<%
reader.setRequest(request);
List stopsets = null;
Connection connection;
com.lanyuer.route.stopset_Manager stopset_Manager = com.lanyuer.route.stopset_Manager.getInstance();
com.lanyuer.route.stopset stopset1 = null;
connection = DataConnectionManager.getInstance().getConnection();
try {
if (reader.getString("delRoute_Pk","").length() > 0) stopset_Manager.deleteByPk(connection,com.lanyuer.route.stopset_Pk.valueOf(reader.getString("delRoute
上一篇:JSP论文:浅析基于JSP网页自动生成工具