经过我十次以上的实验,abator(新版本叫做ibator)还是1.0.0版本好用,自动生成vo,dao,impl,xml文件,而且能够自动生成Example类,并且该类自动继承vo里面的对应类.
用1.1.0发现Example不能自动继承vo里面的类,
1.2.1版本变化太大,有些生成的东西并不方便
废话少说,先建库,采用mysql
create database abator_test;
CREATE TABLE `person` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL,
`age` int(11) DEFAULT NULL,
`sex` varchar(255) DEFAULT NULL,
`password` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
)
下面建立一个java project,名字就叫做abator吧,然后在项目上点右键,new-->other-->Abator for IBATIS Configuration File,文件就放在/abator/src下面,文件名不变
下面是配置文件内容<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE abatorConfiguration PUBLIC "-//Apache Software Foundation//DTD Abator for iBATIS Configuration 1.0//EN"
"http://ibatis.apache.org/dtd/abator-config_1_0.dtd">
<abatorConfiguration generatorSet="Java5">
<abatorContext> <!-- TODO: Add Database Connection Information -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/abator_test"
userId="root"
password="root">
<classPathEntry location="D:/mysql-connector-java-5.0.8-bin.jar" />
</jdbcConnection>
<javaModelGenerator targetPackage="vo" targetProject="abator" />
<sqlMapGenerator targetPackage="vo" targetProject="abator" />
<daoGenerator type="IBATIS" targetPackage="dao" targetProject="abator" />
<table schema="" tableName="person"/>
</abatorContext>
</abatorConfiguration>
然后在配置文件上面点击右键,选择"Generate IBATIS Artifacts",接着abator就会根据数据库自动生成对应的vo.dao等文件了
然后继续写test/ibatis_config.xml文件,配置ibatis的信息<?xml version="1.0" encoding="UTF-8"?>
<!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"/>
<!-- 配置数据源 -->
<transactionManager type="JDBC" commitRequired="false">
<dataSource type="SIMPLE">
<!-- 驱动 -->
<property name="JDBC.Driver" value="com.mysql.jdbc.Driver"/>
<!-- 连接 -->
<property name="JDBC.ConnectionURL" value="jdbc:mysql://localhost:3306/abator_test"/>
<!-- 登录名 -->
<property name="JDBC.Username" value="root"/>
<!-- 密码 -->
<property name="JDBC.Password" value="root"/>
<property name="Pool.MaximumActiveConnections" value="10" />
<property name="Pool.MaximumIdleConnections" value="5" />
<property name="Pool.MaximumCheckoutTime" value="120000" />
<property name="Pool.TimeToWait" value="500" />
<property name="Pool.PingQuery" value="select 1 from sample" />
<property name="Pool.PingEnabled" value="false" />
<property name="Pool.PingConnectionsOlderThan" value="1" />
<property name="Pool.PingConnectionsNotUsedFor" value="1" />
</dataSource>
</transactionManager>
<!-- 固定表映射 -->
<sqlMap resource="vo/person_SqlMap.xml"/>
</sqlMapConfig>
再加一个test/dao.xml文件,用于配置ibatis dao框架的dao
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE daoConfig PUBLIC "-//ibatis.apache.org//DTD DAO Configuration 2.0//EN" "http://ibatis.apache.org/dtd/dao-2.dtd">
<daoConfig>
<context>
<transactionManager type="SQLMAP">
<property name="SqlMapConfigResource" value="test/ibatis_config.xml" />
</transactionManager>
<dao interface="dao.PersonDAO" implementation="dao.PersonDAOImpl" />
</context>
</daoConfig>
截下来是一个读取配置文件的类,然后返回DaoManager,文件路径为test/DAOConfig.java
package test;
import java.io.Reader;
import java.util.Properties;
import com.ibatis.common.resources.Resources;
import com.ibatis.dao.client.DaoManager;
import com.ibatis.dao.client.DaoManagerBuilder;
public class DAOConfig {
private static final String resource="test/dao.xml";
private static final DaoManager daoManager;
static{
daoManager = newDaoManager(null);
}
public static DaoManager getDaoManager(){
return daoManager;
}
public static DaoManager newDaoManager(Properties props){
try {
Reader reader = Resources.getResourceAsReader(resource);
return DaoManagerBuilder.buildDaoManager(reader,props);
} catch (Exception e) {
// TODO Auto-generated catch block
new RuntimeException("Could not initialize DaoConfig. Cause: " + e, e);
}
return null;
}
}
最后来一个测试类test/Test.java
package test;
import vo.Person;
import com.ibatis.dao.client.DaoManager;
import dao.PersonDAO;
public class Test {
public static void main(String[] args) {
DaoManager daoManager = DAOConfig.getDaoManager();
PersonDAO personDao = (PersonDAO) daoManager.getDao(PersonDAO.class);
Person p = personDao.selectByPrimaryKey(1);
System.out.println(p.getName());
}
}
OK了,这样就用ibatis dao做了一个最简单的例子,数据库以及各种文件都在附件里面,所需的四个包全在里面
分享到:
相关推荐
总结来说,`Ibatis`是用于简化数据库操作的框架,`Abator`则是其配套的代码生成工具,帮助开发者快速生成`Ibatis`相关的DAO和实体类代码。而`JGP`文件上传到数据库的操作则涉及到了BLOB类型的数据存储。这些技术结合...
iBATIS DAO是Java开发中的一个持久层框架,它提供了数据访问对象(DAO)的实现,使得数据库操作更加简单和灵活。在这个2.3.4.726版本的源码中,我们可以深入理解iBATIS DAO的工作原理,并通过添加注释来帮助我们更好...
iBATIS DAO框架是Java开发中的一个流行持久层解决方案,它提供了一种将SQL语句与应用程序代码分离的方式,使得数据库操作更为灵活且易于维护。本资料“ibatisDao.rar”包含了一份对iBATIS DAO框架的深入分析,旨在...
iBatis DAO
ibatis dao 包ibatis dao 包ibatis dao 包ibatis dao 包ibatis dao 包ibatis dao 包ibatis dao 包ibatis dao 包ibatis dao 包ibatis dao 包
Abator 是一个强大的工具,专为 iBatis 数据库映射框架设计,用于自动生成 Java 源代码、SQL 映射文件以及相关的构建文件。它简化了开发过程,减轻了开发者手动编写重复代码的工作负担。这个离线安装包允许你在没有...
`IBATISDAO`库类是基于IBATIS框架设计的一组用于简化数据库操作的类,它封装了与数据库交互的基本方法,让开发者能够更加高效地进行CRUD(创建、读取、更新、删除)操作。 **1. IBATIS框架基础** IBATIS的核心概念...
通过学习本教程,你将能够熟练地搭建和使用IBATIS框架,从而更高效地进行数据库操作。提供的`iBATIS-SqlMaps-2_cn.pdf`文件将深入讲解这些知识点,是学习和理解IBATIS的宝贵资源。请仔细阅读并实践,以便更好地掌握...
- **定义**:Abator是一款针对iBATIS框架的专业代码生成工具,它能够显著减少开发人员在使用iBATIS时需要手动编写的代码量,尤其是针对数据访问对象(DAO)、数据传输对象(DTO)以及SQL映射文件等的生成。...
Abator 插件是针对 iBatis 框架的一个自动化工具,它的主要功能是帮助开发者自动生成与 iBatis 相关的各种代码,从而提高开发效率,减少手动编写重复代码的工作量。iBatis 是一个优秀的 Java 数据库访问框架,它提供...
例如,对于某个特定的DAO,可以有两个实现版本:一个使用iBATIS SQL Maps框架将对象持久化到数据库,另一个则使用Hibernate框架。或者,有一个DAO为另一个DAO提供缓存服务。根据具体场景(如数据库性能受限或内存...
在Java开发中,Ibatis是一个流行的持久层框架,它提供了SQL映射功能,使得开发者能够更灵活地控制SQL语句的编写。本知识点主要聚焦于如何生成Ibatis的Dao(数据访问对象)类,以及相关的实体类(Entity)和SQL映射...
Struts、Spring与Ibatis(现称MyBatis)作为三个功能互补的Java框架,它们的联合使用能够显著提升Web应用程序的性能与稳定性。本文将详细阐述如何搭建并配置Struts+Spring+Ibatis整合框架,旨在为开发者提供一个清晰...
iBATIS DAO是Java开发中的一个关键组件,它在企业级应用中被广泛使用,特别是在数据访问层(DAO,Data Access Object)的设计中。iBATIS DAO 2.2.0.638是一个特定版本的iBATIS框架,这个版本提供了对数据库操作的...
资源名称:iBATIS框架源码剖析内容简介:iBATIS是一种比较流行的ORM框架,本书全面介绍其结构体系和分析其源程序代码,该框架的核心包括两个组件,一个是iBATIS DAO,另一个是iBATIS SQL Map。本书分为三个部分,第...
iBatis技术框架介绍。ibatis2.x教程。