持久化层
访问数据库代码与业务逻辑混杂在一起带来了很多问题,这样的程序设计严重限制了程序的可扩展性和适应性,所以有必要把涉及数据库操作的代码分离出来与业务逻辑分离,就形成了所谓“持久化层”的概念。
持久化(Persistence),即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。持久化的主要应用是将内存中的数据存储在关系型的数据库中,当然也可以存储在磁盘文件中、XML数据文件中等(在本书中介绍的“持久化”仅针对将存储数据库的情况)。
所谓持久层(Persistence Layer),即专注于实现数据持久化应用领域的某个特定系统的一个逻辑层面,将数据使用者和数据实体相关联。它包括和数据库的相关操作如下所示。
保存:把数据保存到数据库中。
更新:更新数据库中某条记录。
删除:从数据库中删除一个条记录。
查询:根据特定的查询条件,把符合条件的数据从数据库中加载到内存中去。
就如在上一篇“Struts 2”介绍的把表现层与业务逻辑层的分离一样,在设计中分出持久化层的目的都是为了提高应用程序的可维护性、可扩展性(适应不同的数据库)、可重用性和可管理性。如图9.2展示了如何由传统程序扩展为具有独立持久化层的程序。
![]() |