J2EE开发人员使用数据访问对象(DAO)设计模式把底层的数据访问逻辑和高层的商务逻辑分开.实现DAO模式能够更加专注于编写数据访问代码.
DAO模式是标准的J2EE设计模式之一.开发人员使用这个模式把底层的数据访问操作和上层的商务逻辑分开.一个典型的DAO实现有下列几个组件:
1 一个DAO工厂类;
2 一个DAO接口;
3 一个实现DAO接口的具体类;
4 数据传递对象(有些时候叫做值对象).
在源程序的一个包中放置的是已经封装好的底层数据库连接组件,也就是所谓的DAO(Data Access Object)组件[11]。DAO组件的主要功能是提供数据库存取服务。通过这一组封装好的组件,可以完成以下的功能:从系统的配置文件中读取系统的配置参数,该配置文件中存放的是连接数据库的配置。
4 配置Sql-map-config.xml
Sql-map-config文件是负责前台业务和后台数据库交互的一个配置文件:
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<settings
cacheModelsEnabled="true"
enhancementEnabled="true"
lazyLoadingEnabled="true"
maxRequests="256"
maxSessions="100"
maxTransactions="100"
useStatementNamespaces="true"
/>
/*中间为由生成jar包工具生成的各个表的xml文件,用到的数据库表,必须在该文件中配置,否则,将不起作用;
<sqlMap resource="com/zzxy/mvc/dao/atom/maps/CF_AJXX.xml"/>
………
</sqlMapConfig>
其中,我们所写的各个固定的配置文件也必须写在该配置文件中。
5 配置applicationContext.xml
applicationContext.xml文件是基本的配置文件, 放置在你所创建工程的WEB-INF中,所用的技术为Spring+Ibatis,也是该框架的基础,所有的业务开发,都要建立在该配置文件上面;
5.1 配置方法
该配置文件分为四个部分:
(1):文档开头定义
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
(2):数据源定义和SqlMapClient为IBATIS数据库层设定
<bean id="DataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="java:OracleDS"/>
</bean>
<bean id="transactionManager" class="org.springframework.transaction.jta.JtaTransactionManager"/>
<!-- SqlMapClient setup for iBATIS Database Layer -->
<bean id="SqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="dataSource"><ref local="DataSource"/></property>
<property name="configLocation">
<value>WEB-INF/sql-map-config.xml</value>
</property>
</bean>
注意这部分代码, 定义sqlMapClient时,configLocation的value需要定义为<value>WEB-INF/sql-map-config.xml</value>,否则会引起很多错误;
(3): DAO的定义和Ibatis 的实现的class文件路径:
<bean id="publicDao" class="com.zzxy.mvc.mis.dao.custom.PublicDaoImp">
<property name="dataSource"><ref local="DataSource"/></property>
<property name="sqlMapClient" ref="SqlMapClient"/>
</bean>
<bean id="cf_ajxx_dao" class="com.zzxy.mvc.dao.atom.impl.CF_AJXX_DAOImp">
<property name="dataSource"><ref local="DataSource"/></property>
<property name="sqlMapClient" ref="SqlMapClient"/>
</bean>
….
(4):定义数据层和数据库层的接口
DC为所有的dao的集合
<bean id="DC" class="com.zzxy.mvc.mis.dao.DaoCollection">
<property name="publicDao" ref="publicDao"/>
<property name="cf_ajxx_dao" ref="cf_ajxx_dao"/>
…………
</bean>
</beans>
6 MVC架构
MVC架构为目前很流行的系统架构。
MVC最初是在Smalltalk-80中被用来构建用户界面的。M代表模型Model, V代表视图 View, C代表控制器Controller。
MVC的目的是增加代码的重用率,减少数据表达,数据描述和应用操作的耦合度。 同时也使得软件可维护性,可修复性,可扩展性,灵活性以及封装性大大提高。
单用户的应用通常是以事件驱动的用户界面为组织结构的。开发人员用一个界面工具画了一个用户接口界面,然后编写代码根据用户输入去执行相应的动作,许多交互式的开发环境鼓励这么做,因为它强调先有界面然后再有功能。一些软件设计模式策略是这样的,然后经常将固定后的代码融入最后的系统当中。导致的结果就是,程序组织围绕用户界面元素和用户在那些界面元素上的动作,数据的存储,应用的功能以及用来显示的代码都杂乱无章的缠绕在一起。在单用户的系统里代码结构是可以这样的,因为系统需求不会频繁变化。但是对一个大的系统如大型Web系统,或电子商务系统来说就不太适用了。
通过把数据模式从各种可以被存取和控制的数据中分离出来可以改善分布式系统的设计。MVC设计模式由三部分组成。模型是应用对象,没有用户界面。视图表示它在屏幕上的显示,代表流向用户的数据。控制器定义用户界面对用户输入的响应方式,负责把用户的动作转成针对Model的操作。Model 通过更新View的数据来反映数据的变化。
三者关系如图:

- 大小: 488.9 KB
分享到:
相关推荐
通过以上步骤,我们成功地集成了Struts、Spring以及Ibatis框架,为构建复杂的企业级应用奠定了坚实的基础。这种整合不仅提高了代码的复用性与维护性,还增强了应用的性能与安全性。对于开发者而言,熟练掌握这一技术...
### Spring+ibatis框架知识点详解 #### 一、Spring+ibatis框架简介 Spring与ibatis(现称为MyBatis)都是Java平台下非常流行的开源框架。Spring主要提供了一个轻量级的应用容器来管理对象的生命周期及依赖注入,而...
### Spring+Ibatis+WebWork框架搭配详解 在软件开发领域,选择合适的开发框架对于项目的成功至关重要。本文将深入探讨如何结合使用Spring、Ibatis(现称为MyBatis)以及WebWork这三个流行的Java开发框架来构建高效...
### Spring与iBatis整合详解 #### 一、前言 在Java企业级应用开发中,Spring框架以其强大的依赖注入(DI)和面向切面编程(AOP)能力深受开发者喜爱,而iBatis(现更名为MyBatis)作为一款优秀的持久层框架,通过...
#### 四、iBatis框架简介 iBatis是一个基于Java的持久层框架,它提供了一种将SQL语句映射到Java对象的方法,从而简化了数据访问层的编码工作。iBatis特别适合于那些希望对SQL语句有更多控制权的开发者。 #### 五、...
**Spring、Struts2 和 iBatis 整合详解** 在Java Web开发中,Spring、Struts2 和 iBatis 是三个非常重要的框架。它们分别负责不同层面的任务:Spring 提供了全面的依赖注入(DI)和面向切面编程(AOP),用于管理...
"ibatis+spring+struts2 整合开发例子"就是一个典型的Java Web应用集成开发案例,旨在帮助开发者理解和掌握这三大框架的协同工作原理。接下来,我们将详细讨论这三个组件以及它们的整合过程。 Ibatis是一个轻量级的...
#### 三、JpetStore框架详解 **2.1 JpetStore起源与发展** JpetStore源自Sun公司推出的J2EE Petstore项目,旨在提供J2EE学习资源。然而,其设计上的过度复杂性成为一大诟病。随后,Oracle将其用于评估应用服务器...
### Struts+Spring+Ibatis整合框架搭建知识点详解 #### 一、框架介绍与整合意义 **Struts**是一款开源的MVC框架,主要用于构建基于Java的Web应用程序。它简化了开发过程,使得开发者能够更加关注业务逻辑而非基础...
这种架构下,Flex 作为客户端,使用 BlazeDS 实现与后端的实时数据传输,Spring 作为业务逻辑层,iBatis 作为数据持久化层,Cairngorm 作为 Flex 的MVC框架。 ##### 2. Flex+BlazeDS+SpringBlazeDSIntegration+...
通过上述分析,我们可以看到Struts2 + Spring + iBatis框架整合不仅能够实现清晰的层次划分,还能提高代码的可维护性和扩展性。然而,这种整合方式也有一定的学习曲线和技术门槛,开发者需要具备扎实的Java基础以及...
【标题】"Spring+WebWork+Ibatis"整合框架详解 在现代Web应用程序开发中,框架的集成使用能够显著提高开发效率和代码质量。"Spring+WebWork+Ibatis"是一个经典的组合,它将Spring的强大功能、WebWork的轻量级MVC...
【Struts+Spring+Ibatis整合开发】框架详解 Struts作为Java Web MVC框架的代表,长期以来占据主导地位,但随着Spring MVC和Webwork2等新型框架的崛起,其技术特性逐渐显得落后。然而,对于产品开发而言,Struts依然...
《Spring3+Struts2+Ibatis:企业级应用开发框架整合详解》 在现代企业级Web应用开发中,Spring、Struts2和Ibatis是常见的三大组件,它们各自负责不同的职责,共同构建出高效、灵活的应用架构。Spring作为全能型的...
### Struts2+Spring+Ibatis环境配置详解 在Java Web开发领域,Struts2、Spring与Ibatis(现称为MyBatis)是三个非常重要的框架。它们各自有着不同的功能定位,通过合理地结合使用,可以极大地提升项目的开发效率与...
《Spring+Ibatis+SpringMVC简单集成案例详解》 在现代Java Web开发中,Spring框架因其强大的功能和灵活性而备受青睐。它不仅提供了依赖注入(DI)和面向切面编程(AOP)的核心特性,还通过SpringMVC扩展了对Web应用...
### Spring+Ibatis Demo搭建详解 #### 一、项目背景与目标 在现代软件开发过程中,集成多种技术栈来构建高效稳定的应用系统是常见的做法。本文档将详细介绍如何使用Spring和Ibatis这两种流行的技术框架搭建一个...
### Spring与iBatis集成开发详解 #### 一、引言 在Java企业级应用开发领域,Spring框架因其强大的依赖注入(DI)和面向切面编程(AOP)能力而备受青睐;而iBatis(现称为MyBatis)则以其简洁的SQL映射功能而闻名。...
**iBatis框架** iBatis是一个SQL映射框架,它将SQL语句与Java代码分离,使开发者能够灵活地编写数据库查询。在jpetstore4.0中,iBatis主要负责: 1. **SQL动态生成**:iBatis允许根据传入的参数动态生成SQL语句,...