企业资产管理系统中电子报表功能的设计和实现毕业论文(编辑修改稿)内容摘要:
者声明式事务支持那么 Spring 是一个更好的选择。 在我看来 Spring 的核心就是两个概念,反向控制( IoC),面向切面编程( AOP)。 还有一个相关的概念是 POJO,我也会略带介绍。 POJO 我所看到过的 POJO 全称有两个, Plain Ordinary Java Object, Plain Old Java Object,两个差不多,意思都是普通的 Java 类,所以也不用去管谁对谁错。 POJO可以看做是简单的 JavaBean(具有一系列 Getter, Setter 方法的类)。 严格区分这里面的概念没有太大意义,了解一下就行。 IoC IoC 的全称是 Inversion of Control,中文翻译反向控制或者逆向控制。 这里的反向是相对 EJB 来讲的。 EJB 使用 JNDI 来查找需要的对象,是主动的,而 Spring是把依赖的对象注入给相应的类(这里涉及到另外一个概念“依赖注入”,稍后解释),是被动的,所以称之为“反向”。 ( AOP) 切面编程就类似于动态代理,比如你写了很多方法,在使用这些方法前需要做很多相同的操作,那样你必须在每个方 法前加上很多很多相同的代码,那样你的代码会看起来很冗长,而且写起来很会很让人绝望。 切面编程( AOP)技术就能大大的减少你的工作量。 AOP 技术涉及到的概念有: aspect,就哪些你要重复在其他方法前或后或中间执行的方法; Pointcut,就是声明是哪些方法会被插入 aspect; ,就是声明在 pointcut 之前还是之后执行; 在定义好这三点,你就能实现 AOP 技术了。 Hibernate 简介 报表实现和数据库的关系很密切,对 Hibernate 的介绍会稍为的全面点。 Hibernate 是一个免费的开源 Java 包,它使得与关系数据库打交道变得十分轻松,就像您的数据库中包含每天使用的普通 Java 对象一样,同时不必考虑如何把它们从神秘的数据库表中取出(或放回到数据库表中)。 它解放了您,使您可以专注于应用程序的对象和功能,而不必担心如何保存它们或稍后如何找到它们。 本文讨论以下内容: 历史与背景 大多数应用程序都需要处理数据。 Java 应用程序运行时,往往把数据封装为相互连接的对象网络,但是当程序结束时,这些对象就会消失在一团逻辑中,所以需要有一些保存它们的方法。 有时候,甚至在编写应用 程序之前,数据就已经存在了,所以需要有读入它们和将其表示为对象的方法。 手动编写代码来执行这些任务不仅单调乏味、易于出错,而且会占用整个应用程序的很大一部分开发工作量。 优秀的面向对象开发人员厌倦了这种重复性的劳动,他们开始采用通常的“积极”偷懒做法,即,创建工具,使整个过程自动化。 对于关系数据库来说,这种努力的最大成果就是对象 /关系映射 (ORM)工具。 这类工具有很多,从昂贵的商业产品到内置于 J2EE 中的 EJB 标准。 然而,在很多情况下,这些工具具有自身的复杂性,使得开发人员必须学习使用它们的 详细规则,并修改组成应用程序的类以满足映射系统的需要。 由于这些工具为应付更加严格和复杂的企业需求而不断发展,于是在比较简单和常见的场景中,使用它们所面临的复杂性反而盖过了所能获得的好处。 这引起了一场革命,促进了轻量级解决方案的出现,而 Hibernate 就是这样的一个例子。 Hibernate 的工作方式 Hibernate 不会对您造成妨碍,也不会强迫您修改对象的行为方式。 它们不需要实现任何不可思议的接口以便能够持续存在。 惟一需要做的就是创建一份 XML“映射文档”,告诉 Hibernate 您希望能够保存 在数据库中的类,以及它们如何关联到该数据库中的表和列,然后就可以要求它以对象的形式获取数据,或者把对象保存为数据。 与其他解决方案相比,它几乎已经很完美了。 运行时, Hibernate 读取映射文档,然后动态构建 Java 类,以便管理数据库与 Java之间的转换。 在 Hibernate 中有一个简单而直观的 API,用于对数据库所表示的对象执行查询。 要修改这些对象,(一般情况下)只需在程序中与它们进行交互,然后告诉 Hibernate 保存修改即可。 类似地,创建新对象也很简单;只需以常规方式创建它们,然后告诉 Hibernate 有关它们的信息,这样就能在数据库中保存它们。 Hibernate API 学习起来很简单,而且它与程序流的交互相当自然。 在适当的位置调用它,就可以达成目的。 它带来了很多自动化和代码节省方面的好处,所以花一点时间学习它是值得的。 而且还可以获得另一个好处,即代码不用关心要使用的数据库种类(否则的话甚至必须知道)。 我所在的公司就曾有过在开发过程后期被迫更换数据库厂商的经历。 这会造成巨大的灾难,但是借助于 Hibernate,只需要简单地修改 Hibernate 配置文件即可。 这里的讨论假定您已经通过创建 Hibernate 映射文档,建立了一个关系数据库,并且拥有要映射的 Java 类。 有一个 Hibernate“工具集”可在编译时使用,以支持不同的工作流。 例如,如果您已经拥有 Java 类和映射文档, Hibernate 可以为您创建(或更新)必需的数据库表。 或者,仅仅从映射文档开始, Hibernate 也能够生成数据类。 或者,它可以反向设计您的数据库和类,从而拟定映射文档。 还有一些用于 Eclipse 的 alpha 插件,它们可以在 IDE 中提供智能的编辑支持以及对这些工具的图形访问。 如果您使用的是 Hibernate 2 环境,这些工具鲜有提供,但是存在可用的第三方工具。 使用 Hibernate 的场合 既然 Hibernate 看起来如此灵活好用,为什么还要使用其他的工具呢。 下面有一些场景,可以帮助您做出判断(或许通过提供一些比较和上下文,可以有助于鉴别非常适用 Hibernate 的场合)。 如果应用对于数据存储的需要十分简单 —— 例如,您只想管理一组用户优先选择—— 您根本不需要数据库,更不用说一个优秀的对象 关系映射系统了(即使它也如 Hibernate 这般易于使用)。 从 Java 开始,有一个标准的 Java Preferences API 可以很好地发挥这个作用。 (在 ONJava 文章中可以找到有关 Preferences API的更多信息。 ) 对于熟悉使用关系数据库和了解如何执行完美的 SQL 查询与企业数据库交互的人来说, Hibernate 似乎有些碍手碍脚,这就像带有动力和自动排挡的快艇车会使注重性能的赛车驾驶员不耐烦一样。 如果您属于这种人,如果您所在的项目团队拥有一个强大的 DBA,或者有一些存储过程要处理,您可能想研究一下 iBATIS。 Hibernate 的创建者本身就把 iBATIS当作是另一种有趣的选择。 我对它很 有兴趣,因为我们曾为一个电子商务站点开发了一个类似的系统(其功能更为强大),而且从那时到现在,我们已经在其他环境中使用过它,尽管在发现 Hibernate 之后,在新项目中我们通常更喜欢使用 Hibernate。 您可以认为,以 SQL 为中心的解决方案(比如 iBATIS)是“反向的”对象 /关系映射工具,而 Hibernate 是一个更为传统的 ORM。 当然,还有其他的外部原因会导致采用另外的方法。 比如,在一个企业环境中,必须使用成熟的 EJB 架构(或者其他的一些非普通对象映射系统)。 可以为提供自己的数据存储工具的平 台量身定做代码,比如 Mac OS X39。 s Core Data。 使用的可能是像 XML DTD 这样的存储规范,而它根本不涉及关系数据库。 但是,如果您使用的是富对象模型,而且想要灵活、轻松且高效地保存它(无论您是否正要开始或已经决定使用关系数据库,只要这是一个选择 —— 而且存在可用的优秀免费数据库,比如 MySQL,或可嵌入 Java 的 HSQLDB,它就应该始终是一个选择),那么 Hibernate 很可能就是您理想的选择。 您可能会惊讶于节省的时间之多,以及您将会多么地喜欢使用它。 经过一个月的实践, Hibernate 技术需要为每张表写一个对应的类,类中的成员变量是表中每个字段对应的类型和名字。 然后,每个对应的类,都需要写出相应的 DAO,就是增删改查的方法。 这个 DAO 方法和 JDBC 中的 DAO 方法其实差不对,hibernate 的方便之处是它能直接保存一个对象进入数据库,那个对象就会成为数据库中的一条记录,而不用像 JDBC 那样一个字段一个字段的赋值,然后保存。 Hibernate 的所有操作都是针对对象的,而不是针对表中的某一个字段的,操作简介方便的,深受欢迎。 在 Hibernate 出现的对象有三种状态: ,就是一个 对象刚刚 new 出来,还没有关联 session; ,就是这个对象与 session 关联,与数据库的数据有对应, session 没有关闭,但是事务没有被提交。 一旦事务提交后,它就会对数据库产生影响; , session 已经关闭,数据库中没数据与之对应,对它进行改动是不会影响到数据库的。 Hibernate 的核心接口一共有 5 个,分别为 :Session、 SessionFactory、Transaction、 Query 和 Configuration。 这 5个核心接口在任何开发中都会用到。 通过这些接口,不仅可以对 持久化对象进行存取,还能够进行事务控制。 下面对这五个核心接口分别加以介绍。 Session 接口 :Session 接口负责执行被持久化对象的 CRUD 操作 (CRUD 的任务是完成与数据库的交流,包含了很多常见的 SQL语句。 )。 但需要注意的是 Session对象是非线程安全的。 同时, Hibernate 的 session 不同于 JSP 应用中的HttpSession。 这里当使用 session 这个术语时,其实指的是 Hibernate 中的session,而以后会将 HttpSesion 对象称为用户 session。 SessionFactory 接口 :SessionFactory 接口负责初始化 Hibernate。 它充当数据存储源的代理,并负责创建 Session 对象。 这里用到了工厂模式。 需要注意的是 SessionFactory 并不是轻量级的,因为一般情况下,一个项目通常只需要一个 SessionFactory 就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。 Configuration 接口 :Configuration 接口负责配置并启动 Hibernate,创建SessionFactory 对象。 在 Hibernate 的启动的过程中, Configuration 类的实例首先定位映射文档位置、读取配置,然后创建 SessionFactory 对象。 Transaction 接口 :Transaction 接口负责事。企业资产管理系统中电子报表功能的设计和实现毕业论文(编辑修改稿)
相关推荐
CPU 资源 ; (3)、 为多种编程语言提供了 API。 这些编程语言包括 C、 C++、 Eiffel、 Java、Perl、 PHP、 Python、 Ruby 和 Tcl等 [4]; (4)、 .提供 TCP/IP、 ODBC 和 JDBC 等多种数据库连接途径 ; (5)、 .提供用于管理、检查、优化数据库操作的管理工具 ; (6)、 .可以处理拥有上千万条记录的大型数据库。 核心技术
使用计算机对绩效考核信息进行管理,具有手工管理所无法比拟的优点。 例如:检索迅速、查找方便、可靠性高、存储量大、保密性好 、寿命长、成本低等。 这些优点能够极大地提高的效率,也是企业科学化、正规化管理的重要条件。 因此,开发这样一套企业信息管理系统软件成为很有必要的事情,在下面的各章中我们将以开发一套企业信息管理系统为例,其开发过程和所涉及到的问题及解决方法。 2 第 2 章 开发环境及实现技术
效益优势,充分发挥信息化的潜力。 所以,企业信息系统整合己经刻不容缓,把分散的信息集成到一个平台上,才能充分共享这些信息,提高效率,为整体优化和决策管理提供数据基础,降低系统成本。 而企业门户就是信息整合的一个好平台,建设企业门户网站来整合信息系统,己成为一种高效且流行的方式。 宁夏大学新华学院本科学位论文 4 提升企业形象,提升企业业绩 一个优秀的门户,一是能起到宣传的作用
具 有整合、利用多种业务系统技术的能力,将决定整个协同产业的市场规模和发展方向。 从协同市场的发展趋势来看,将来协同软件平台会成为我们基础的架构平台,未来应用软件将越来越多地在协同平台上来开发,这一定会成为企业应用的枢纽,这是一个必然趋势。 ( 四 ) HR 的崛起 新 《劳动合同法》 的颁布,使得一个看似陌生的名词渐渐火热起来: HR (Human Resource)是指人力资源。 HRM (
本文阐述了三级教育 的内容和存在的问题以及三级安全教育体系的构建及促进三级安全教育的措施。 关键词: “ 三级 ” 安全教育;事故;安全管理体系 前言 建筑安全教育培训的目的和任务是使劳动者提高安全意识,掌握安全生产规律,提高安全作业技能,减少伤亡事故的发生,减少各种财产损失,保障劳动者的身心健康。 它是劳动者发展的一个重要因素。 安全教育是教育者根据社会、企业和个人的需要和可能
为网络系统的缺省网关地址。 如果主动路由器出现故障,备份路由器( Standby Routers)承接主动路由器的所有任务,并且不会导致主机连通中断现象。 路由器转发协议数据包的源地址使用的是实际 IP 地址,而并非虚拟地址,正是基于这一点, HSRP 路由器间能相互识别 [5]。 3 综合布线方案 具体用户需求 公司园区内包括集团总部办公楼和分部及分公司等建筑