Apache iBATIS

来自开放百科 - 灰狐
(版本间的差异)
跳转到: 导航, 搜索
(IBATIS移动到IBATIS Data Mapper)
 
(未显示1个用户的10个中间版本)
第1行: 第1行:
 +
{{top news}}
 +
 
==简介==
 
==简介==
 
[[Image:iBATIS.jpg|thumb|right]]
 
[[Image:iBATIS.jpg|thumb|right]]
 
使用ibatis 提供的ORM机制,对业务逻辑实现人员而言,面对的是纯粹的Java对象,这一层与通过Hibernate 实现ORM 而言基本一致,而对于具体的数据操作,Hibernate 会自动生成SQL 语句,而ibatis 则要求开发者编写具体的SQL 语句。相对Hibernate等 “全自动”ORM机制而言,ibatis 以SQL开发的工作量和数据库移植性上的让步,为系统 设计提供了更大的自由空间。作为“全自动”ORM 实现的一种有益补充,ibatis 的出现显得别具意义。
 
使用ibatis 提供的ORM机制,对业务逻辑实现人员而言,面对的是纯粹的Java对象,这一层与通过Hibernate 实现ORM 而言基本一致,而对于具体的数据操作,Hibernate 会自动生成SQL 语句,而ibatis 则要求开发者编写具体的SQL 语句。相对Hibernate等 “全自动”ORM机制而言,ibatis 以SQL开发的工作量和数据库移植性上的让步,为系统 设计提供了更大的自由空间。作为“全自动”ORM 实现的一种有益补充,ibatis 的出现显得别具意义。
==基本特色==
+
==基本组件==
 +
*[[iBATIS Data Mapper]]
 +
*[[iBATIS Data Access Objects]]
 +
*[[iBATIS PetStore]]
 +
==JPetstore==
 +
分析 Account
 +
 
 +
src
 +
domain/Account.java // 实现Serializable接口, 各字段的get/set方法
 +
persistence/iface/AccountDao.java // 定义Account接口
 +
persistence/sqlmapdao/AccountSqlMapDao.java // 实现Account接口
 +
persistence/sqlmapdao/sql/Account.xml // 定义Account的SQL语句
 +
presentation/AccountBean.java // 定义Web的处理类
 +
service/AccountService.java // 定义Account接口服务
 +
web
 +
account/EditAccountForm.jsp
 +
account/IncludeAccountFields.jsp
 +
account/NewAccountForm.jsp
 +
account/SignonForm.jsp
 +
struts
 +
WEB-INF/struts-config.xml
 +
<form-bean name="accountBean" type="com.ibatis.jpetstore.presentation.AccountBean"/>
 +
<action path="/shop/signonForm" type="org.apache.struts.beanaction.BeanAction"
 +
      name="accountBean" scope="session" parameter="*"
 +
    validate="false">
 +
<forward name="success" path="/account/SignonForm.jsp"/>
 +
</action>
 +
==DataSource==
 +
DataSourceFactory实现
 +
*DbcpDataSourceFactory
 +
*JndiDataSourceFactory
 +
*SimpleDataSourceFactory
 +
==Cache==
 +
提供了四种CacheController实现
 +
*FifoCacheController
 +
*LruCacheController
 +
*MemoryCacheController
 +
*OSCacheController
 +
==Transaction==
 +
提供了四种Transaction实现
 +
*ExternalTransaction
 +
*JdbcTransaction
 +
*JtaTransaction
 +
*UserProvidedTransaction
  
 
==相关链接==
 
==相关链接==
 
*官方网站 http://ibatis.apache.org/
 
*官方网站 http://ibatis.apache.org/
*下载 http://download.huihoo.com/java/framework/ibatis/
+
*http://download.huihoo.com/apache/ibatis/
 +
*http://docs.huihoo.com/apache/ibatis/
 
==精彩图集==
 
==精彩图集==
 +
 +
[[Category:Framework]]
 +
[[Category:Java]]
 +
[[Category:Database]]
 +
[[Category:Apache]]

2010年9月27日 (一) 04:12的最后版本

目录

[编辑] 简介

IBATIS.jpg

使用ibatis 提供的ORM机制,对业务逻辑实现人员而言,面对的是纯粹的Java对象,这一层与通过Hibernate 实现ORM 而言基本一致,而对于具体的数据操作,Hibernate 会自动生成SQL 语句,而ibatis 则要求开发者编写具体的SQL 语句。相对Hibernate等 “全自动”ORM机制而言,ibatis 以SQL开发的工作量和数据库移植性上的让步,为系统 设计提供了更大的自由空间。作为“全自动”ORM 实现的一种有益补充,ibatis 的出现显得别具意义。

[编辑] 基本组件

[编辑] JPetstore

分析 Account

src

domain/Account.java // 实现Serializable接口, 各字段的get/set方法
persistence/iface/AccountDao.java // 定义Account接口
persistence/sqlmapdao/AccountSqlMapDao.java // 实现Account接口
persistence/sqlmapdao/sql/Account.xml // 定义Account的SQL语句
presentation/AccountBean.java // 定义Web的处理类
service/AccountService.java // 定义Account接口服务

web

account/EditAccountForm.jsp
account/IncludeAccountFields.jsp
account/NewAccountForm.jsp
account/SignonForm.jsp

struts

WEB-INF/struts-config.xml
<form-bean name="accountBean" type="com.ibatis.jpetstore.presentation.AccountBean"/>
<action path="/shop/signonForm" type="org.apache.struts.beanaction.BeanAction"
     name="accountBean" scope="session" parameter="*"
    validate="false">
<forward name="success" path="/account/SignonForm.jsp"/>
</action>

[编辑] DataSource

DataSourceFactory实现

  • DbcpDataSourceFactory
  • JndiDataSourceFactory
  • SimpleDataSourceFactory

[编辑] Cache

提供了四种CacheController实现

  • FifoCacheController
  • LruCacheController
  • MemoryCacheController
  • OSCacheController

[编辑] Transaction

提供了四种Transaction实现

  • ExternalTransaction
  • JdbcTransaction
  • JtaTransaction
  • UserProvidedTransaction

[编辑] 相关链接

[编辑] 精彩图集

分享您的观点
个人工具
名字空间

变换
操作
导航
工具箱