基于j2ee的在线售书系统论文内容摘要:

也就是说未来只要有人需要,就会有建立在 Eclipse 之 上的COBOL, Perl, Python 等语言的开发插件出现。 同时可以通过开发新的插件扩展现有插件的功能,比如本系列文章为了进行手机应用程序的开发就是通过 J2ME插件的扩展来加以实现的。 可以无限扩展,而且有着统一的外观,操作和系统资源管理,这也正是 Eclipse 的潜力所在。 Spring 概述 Spring 是全面的,模块化的 J2EE 的一个框架, Spring 中的每一部分都是独立的,这也就意味着,我们可以取出其中的任意一个部分与其它 web 框架结合在一8 起使用,这里我们采用 Spring 的 IoC 部分,用它来做逻辑业务层(也就是中间层)来管理业务对象。 Spring 的核心是为与 JavaBeans 一起工作而设计的 包。 这个包一般不直接被用户调用,而是作为 Spring 功能的基础 [3]。 Hibernate 概述 在 MVC 中的 M,也就是所谓的 Model, 则可以说是与业务逻辑和数据逻辑关联最为紧密的部分。 而持久层作为 Model 层面中的主要组成部分,其设计的优劣必对系统的整体表现产生至关重要的影响。 Hibernate 作为一个成熟且强大的持久层框架的实现,也对 web 的开发产生了极为深远的影响。 Hibernate 是对 JDBC 做了一次轻量级的封装,使业务逻辑与数据访问逻辑相分离,这正合了编码人员的心意,使的编码人员能从繁杂的 JDBC 代码中解脱出来,把更多的精力放到业务逻辑代码的编写中。 这也使的 web 开发的效率大大的提高,因为 Hibernate 会帮你完成底层繁杂的实现过程而不用我们去担心。 另外 Hibernate 还提供了很多良好的机制,比如它支持数据库连接池技术 ( 在池中有若干个数据库的连接,业务代码只需从中 获得连接,用完后再将连接放回池中,而不用去创建连接和释放连接,这样就避免了因为多次创建连接和释放连接带来的资源的浪费。 尤其是需要大数量连接的情况下。 ) Hibernate 还提供了包括数据缓存技术和回调拦截机制等 [4]。 Hibernate 与 MySQL 数据库连接 配置 Hibernate 环境 ,下载 Hibernate 包及相关工具 : , , ,. 还 有 相 关 数 据 库 的 驱 动 , 如 我 用 的 是 MySQL 数 据 库 则 下 载 安 装 好 数 据 库 和 相 关 的 工 具 如 我 用 的 是 MySQL 数 据 库 则 下 载 , (mysqlGUI 工具 ) 在 Eclipse(注意:此处要安装好 Eclipse 和相关的 Eclipse 插件,包括 MyEclipse) 如图 31 所示 9 图 31 配置示意图 其中包含了两个重要的配置文件: 和 在 中包含了对数据库的连接的一些设置,具体如下(图 ) 其中的 property name= jdbc:=GBK /property 表示当 前连的是 mysql数据库 ,端口号是 3306 ,编码格式为 GBK。 另一个 mapping /节点表示要映射的对象和数据库之间的关系,这里对应的是。 其具体格式定义如下 : mapping resource=”javamxj/hibernate/” /其中内容如图 32所示 图 32 hibernate 配置文件示意图 在 中包含了 对象到数据库的映射关系,具体如图 33 10 其中 table=”testtable” 是我在数据库 中建的表 ,这个文件包含了从 User 对象到表 testable 的映射关系。 具体内容如图 33 所示 图 33 具体映射文件示意图 小结 本章的主要内容在于介绍本系统用到的一些 J2EE 框架,主要是对本系统用到的哪些框架的下载和对 Ajax, Spring, Hibernate 等框架大致介绍,以及对 Eclipse开发环境的介绍,最后对 Hibernate 与 MySQL 数据库连接的具体配置文件的介绍,分析。 第 4 章 数据库的分析与设计 数据库设计的目标是要求完全满足业务的数据存储要求。 如果能够设计一个合理的数据库模型,不仅会降低程序编程和维护的难度,也会提高系统实际运行的性能,因而必须仔细的制定设计步骤方案,了解规范的设计方法和必要的规则。 数据库设计原则 在数据库的设计中,首先要注意命名的规范,其次就是要注意数据的一致性和完整性,尽可能的降低数据的冗余,当然如果数据冗余度低,数据的完整性容易得到保证,但增加了表间连接查询的操作,所以合理的数据冗余也是必要的。 可使用规则和约束来对数据的有效性验证。 另外可以创建索引,来维护被索引列的唯一性和提供快速访问表中数据的策略。 11 选择合适的数据库是项目开发 成功与否的先决条件,我们在设计时应该从以下几方面去考虑数据库的选择 : 1. 易用性 2. 分布性 3. 并发性 4. 数据完整性 5. 安全性 6. 数据恢复性 概念结构设计 将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。 概念结构独立于数据库逻辑结构,也独立于支持数据库的 DBMS。 它是现实世界与机器世界的中介,它一方面能够充分反映现实世界,包括实体与实体之间的联系,同时又易于向关系、网状、层次等数据模型转换,它是现实世界的一个真实模型,当现实世界需求改变时,概念结构也可以很容易地作相应调整,因此概念结构设计 是整个数据库设计的关键所在。 概念结构通常有自顶向下、自底向上、逐步扩张、混合策略四类方法。 通常采用的策略是自底向上方法,即自顶向下进行需求分析,然后再自底向上地设计概念结构。 但无论采用哪种设计方法,一般都以 ER模型为工具来描述概念结构。 对图书管理系统的 ER 图分析是建立在 UML 系统模型的基础上的这里给出ER 图分析的结果。 实体关系图的分析结果非常复杂。 一般情况下使用从繁到简的方式进行设计。 首先从大的方面设计出各个实体之间的关系简图,并设计出关系。 具体结构如图 41 所示 12 图 41 数据 库 ER 图 这张 ER 图比较简单的表达了数据库各张表之间的关系:本系统主要由这 5张表组成,用户信息表的用户帐号字段和用户权限表的用户帐号字段进行关联,主要是用户登录后可以根据用户帐号到用户权限表里面获取相应的权限。 用户登录后用户的一些信息会存放在 session 中,所以当用户点击购买图书,生成订单信息时可以将用户的信息从 session 中拿出,放到订单信息表中,从而不需要将用户信息表和订单信息表进行关联。 (书本信息表和订单对应的图书信息表也是同样的道理),另外将订单信息表的(订单号)和订单对应的图书信息表的( 订单号)进行关联,这样做的主要目的在于,不知到用户要购买几种类型的图书,所一在订单信息表中无法确定图书类型字段,所以借助订单对应的图书信息表来完成这一需求。 逻辑结构设计 设计逻辑结构的是和分三步进行: (1)将概念结构( ER 图)转化为一般关系模型 (2)将转化来的关系模型向 MySql 支持下的数据模型转化 13 (3)对数据模型进行优化,消除冗余字段。 对数据依赖进行极小化处理。 对关系模式进行必要的分解合并和优化,形成以下的逻辑结构: 表 41 client (用户信息表 ) 字段名 数据类型及长度 说明 备注 ID Integer Id 由数据库维护 主键 logon_id Varchar(25) 用户注册号 系统编码维护 (相当于主键 ) password Varchar(25) 用户密码 不能为空 name Varchar(25) 用户姓名 不能为空 mobile_phone Varchar(25) 移动电话号码 不能为空 phone Varchar(25) 电话号码 不能为空 Varchar(25) Email 地址 不能为空 address Varchar(200) 地址 不能为空 zip Varchar(10) 邮编 不能为空 表 42 popedom(用户权限表) 字段名 数据类型及长度 说明 备注 ID Varchar(10) Id 由数据库维护 主键 logon_id Varchar(6) 用户注册号 系统编码维护 (相当于主键 ) Popedom Varchar(10) 用户权限 不能为空 表 43 book(书本信息表) 字段名 数据类型及长度 说明 备注 ID Integer Id 由数据库维护 主键 book_id Varchar(25) 书本编号 系统编码维护 (相当于主键 ) 14 name Varchar(45) 书本名称 不能为空 number Integer 书本数量 不能为空 type Varchar(25) 书本类型 不能为空 presshouse Varchar(30) 出版社地址 不能为空 presstime Timestamp 出版日期 不能为空 book_img_src Varchar(45) 书图案的存放位置 不能为空 price Varchar(25) 书本价格 不能为空 writer Varchar(45) 作者 不能为空 表 44 bill(订单信息表 ) 字段名 数据类型及长度 说明 备注 ID Integer Id 由数据库维护 主键 bill_id Varchar(100) 订单号 系统编码维护 (相当于主键 ) client_name Varchar(45) 用户姓名 不能为空 client_phone Varchar(25) 用户联系电话 不能为空 client_zipcode Varchar(25) 用户邮编号码 不能为空 client_address Varchar(200) 用户地址 不能为空 client_ Varchar(25) 用户 不能为空 client_mphone Varchar(25) 用户移动电话 不能为空 total_price Varchar(25) 订单总价 不能为空 表 45 bookbill(订单对应的图书信息 ) 字段名 数据类型及长度 说明 备注 Id Integer Id 由数据库维护 bill_id Varchar(100) 订单号 系统编码维护 (相当于主键 ) 15 book_name Varchar(45) 书本名称 不能为空 book_price Varchar(25) 书本单价 不能为空 book_num Varchar(25) 书本数量 不能为空 book_tprice Varchar(25) 书本总价 不能为空 数据库创建 数据库的创建,主要是借助于 MySQL 的 GUI 工具生成,它可以以视图的形式来创建数据库和表,并自动生成相应的 SQL 语句。 小结 本章的主要内容是对在线售书系统的数据库进行设计,对数据库进行了功能的分析,以及画出了对应的 ER 图, 并对 ER 图进行了 解释。 最后给出了每张表里面的具体字段。 第 5章 系统功能 系统架构 本系统采用 J2EE 的一些目前比较流行的框架进行架构,主要是用 webwork。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。