一、概念Hibernate 和 Apache OJB :“一站式”ORMIbatis:一种“半 自动化”的 ORM 实现,也就是说ibatis 不会为程序员在运行期自动生成 SQL 执行。具体的 SQL 需要程序员编写,然后通过映 射配置文件,将 SQL 所需的参数,以及返回的结果字段映射到指定 POJO。二、使用
构建 ibatis 基础代码ibatis 基础代码包括:1. ibatis 配置SqlMapConfig.xml文件 :(1)、Settings 节点
| 参数 | 描述 |
|---|
| cacheModelEnable | 是否启用SqlMapClient上的缓存机制。建议设为"true" |
| enhancementEnable | 是否针对POJO启用字节码增强机制,避免java reflect的性能开销 |
| errorTracingEnabled | 是否启用错误日志,开发期间可以开启,方便调试 |
| lazyLoadingEnalbed | 是否启用延迟加载 |
| maxRequests | 最大并发请求数(Statement 并发数) |
| maxTransactions | 最大并发事务数 |
| maxSessions | 最大Session数,及最大的并发SqlMapclient数,必须介于maxTransactions和maxRequest之间 |
(2)、transactionManager 事物管理
(3)、dataSource 数据源配置
(4)、sqlMap 用于包括SQL Map映射文件和其他的SQL Map配置文件。每个SqlMapClient对象使用的所有SQL Map映射文件都要在此声明。映射文件作为stream resource从类路径或URL读入。您必须在这里指定所有的SQL Map文件。2、实体类POJO。这个需要和数据库的相对应。3、映射文件map,通常放在sqlmap包下,实现具体的数据库操作语句。主要有模块配置、缓存配置、statement配置。使用最多的应该是此处的statement配置了,需要用的sql语句和参数都写在这里。4、如何在代码中使用,这才是最关键的。在此先要搞清楚几个比较核心的比较重要的概念:(1)、
XmlSqlMapClientBuilder,ibatis 2.0 之后版本新引入的组件, 用以替代 1.x 版本中的 XmlSqlMapBuilder。其作用是根据配置文件创建 SqlMapClient 实例。(2)、
SqlMapClient 是 ibatis 的核心组件, 提供数据操作的基础平台。SqlMapClient 可通过 XmlSqlMapClientBuilder 创建:
String resource ="com/ibatis/sample/SqlMapConfig.xml";Reader reader; reader = Resources.getResourceAsReader(resource);XmlSqlMapClientBuilder xmlBuilder = new XmlSqlMapClientBuilder();SqlMapClient sqlMap = xmlBuilder.buildSqlMap(reader);备注:"com/ibatis/sample/SqlMapConfig.xml"指明了配置文件在 CLASSPATH 中的相对路径。 XmlSqlMapClientBuilder 通过接受一个 Reader 类型的配置文 件句柄,根据配置参数,创建 SqlMapClient 实例。 SqlMapClient 提供了众多数据操作方法。5、SqlMapClient 基本操作示例
见Ibatis官方手册6、学习体会大三用java做数据库课程设计的时候将所有的数据库操作都写在一个类里,程序的耦合性很高,扩展性也不好。Ibatis是我第一次接触的,感觉学起来很容易上手,自己也学着在Demo上试了一下,做了个简单的登陆界面。学习ibatis的过程最重要的是理解他的工作原理和映射关系,还有就是结合webx开发,哪些文件应该放置在哪层(通常是DAO层),弄清楚这些问题,在以后的开发中肯定也是很有帮助的。实践中遇到的问题:无法链接数据库,无法下载数据库驱动,把jdbc.mysql.mysql-connector包复制到tomcat下面的lib目录中即可。当然要保证你的xml配置是正确的,我连接本地Mysql的时候配置如下:<bean id="dataSource"class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName"value="com.mysql.jdbc.Driver"/>
<property name="url"value="jdbc:mysql://localhost:3306/bookmanager"/>
<property name="username"value="root"/>
<property name="password"value="admin"/>
</bean>MySQL开源备份工具Xtrabackup备份部署Oracle数据库使用NFS存储,启动报错提示无法锁定文件相关资讯 iBATIS iBatis入门
- Spring + Spring MVC + Ibatis + (今 14:45)
- Spring+iBatis框架下事务代码的编 (04/05/2014 10:43:22)
- Spring MVC 注释 + iBATIS 整合 (01/01/2014 10:52:49)
| - iBatis传入数组或List类型参数小结 (04/05/2014 10:52:51)
- iBatis简单入门教程 (01/04/2014 09:01:36)
- Spring的多数据源配置(Spring+ (02/29/2012 13:02:06)
|
本文评论 查看全部评论 (0)