1.我的习惯是先做数据库,数据库的设计如下图
2.进入eclipse,点击"Help>Install New Software" 输入name和location,其中location的URL地址为: URL: http://ibatis.apache.org/tools/abator
3.安装成功后,建立一个名为:ibatis的java工程,建立完成后,记得添加ibatis和数据的包
4.选中resources包,然后点击eclipse菜单栏的:File > New > Abator for iBATIS Configuration File。然后自动生成一个叫abatorConfig.xml的文件,修改这个文件:
<?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 >
<abatorContext >
<jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/user" userId="root" password="123456" >
<classPathEntry location="G:/mysql/mysql-connector-java-5.1.6-bin.jar" />
</jdbcConnection>
<javaModelGenerator targetPackage="com.ibatis.model" targetProject="ibatis" />
<sqlMapGenerator targetPackage="com.ibatis.sqlmap" targetProject="ibatis" />
<daoGenerator targetPackage="com.ibatis.dao" targetProject="ibatis" type="GENERIC-CI" />
<table tableName="goods" >
</table>
</abatorContext>
</abatorConfiguration>
修改为以上配置后,选中该文件,右键选中Generate ibatis artifacts,即可生成相应的代码。但是其生成的代码有些需要修改的地方。
5.最重要一个是加上SqlMapConfig.xml文件,文件内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<!--一定要加上下面这句,否则回报很多头痛的错误-->
<settings useStatementNamespaces="true" />
<transactionManager type="JDBC">
<!-- 数据源 -->
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="com.mysql.jdbc.Driver" />
<property name="JDBC.ConnectionURL" value="jdbc:mysql://localhost:3306/user" />
<property name="JDBC.Username" value="root" />
<property name="JDBC.Password" value="123456" />
</dataSource>
</transactionManager>
<!-- 这里可以写多个实体的映射文件 -->
<sqlMap resource="com/ibatis/sqlmap/goods_SqlMap.xml" />
</sqlMapConfig>
6.修改一下DAO和DAOImpl里面的selectByExample和selectByPrimaryKey的返回类型,把它设置为你需要的泛型,这里我设置为List<Goods>,DAO的如下:
List<Goods> selectByPrimaryKey(Integer id) throws SQLException;
List<Goods> selectByExample(GoodsExample example) throws SQLException;
DAOImpl的如下:
//原来为List但我需要List集合所以改成List<Goods>
public List<Goods> selectByExample(GoodsExample example) throws SQLException {
List<Goods> list = (List<Goods>)sqlMapClient.queryForList("goods.abatorgenerated_selectByExample", example);
return list;
}
/**
* This method was generated by Abator for iBATIS.
* This method corresponds to the database table goods
*
* @abatorgenerated Sat Mar 16 17:24:18 CST 2013
*/
//原来为Goods但我需要List集合所以改成List<Goods>
public List<Goods> selectByPrimaryKey(Integer id) throws SQLException {
Goods key = new Goods();
key.setId(id);
List<Goods> record = (List<Goods>) sqlMapClient.queryForObject("goods.abatorgenerated_selectByPrimaryKey", key);
return record;
}
7.在里面我们可以在Goods的模型里面重写以上toString()方法
public String toString(){
return "name="+this.name+" price="+this.price+" remark="+this.remark;
}
8.做完以上工作之后,我们建立一个main工程测试一下:
public class Test {
private static SqlMapClient sqlMapClient = null;
public static void main(String[] args) throws Exception {
Reader reader = Resources.getResourceAsReader("com/ibatis/sqlmap/SqlMapConfig.xml");
sqlMapClient = SqlMapClientBuilder.buildSqlMapClient(reader);
GoodsExample example=new GoodsExample();
//多个条件同时查询:
Criteria criteria=example.createCriteria();
criteria.andNameLike("%o%");
criteria.andPriceEqualTo(1000.0);
// example.createCriteria().andNameLike("%o%");
// example.createCriteria().andPriceEqualTo(1000.0);
GoodsDAOImpl dao=new GoodsDAOImpl(sqlMapClient);
List<Goods> goods=dao.selectByExample(example);
for(Goods good:goods){
System.out.println(good);
}
}
}
9.控制台显示结果:
其中该项目的整体结构图如下:
相关推荐
- **定义**:Abator是一款针对iBATIS框架的专业代码生成工具,它能够显著减少开发人员在使用iBATIS时需要手动编写的代码量,尤其是针对数据访问对象(DAO)、数据传输对象(DTO)以及SQL映射文件等的生成。...
### IBatis-Abator插件自动生成代码和配置的方法 #### 概述 在软件开发过程中,为了提高开发效率和减少重复性工作,自动化工具变得越来越重要。其中,代码生成工具是开发人员不可或缺的好帮手之一。本文将详细介绍...
《Ibatis代码自动生成工具—Abator的应用详解》 Ibatis作为一款轻量级的Java持久层框架,因其灵活的SQL映射机制深受开发者喜爱。然而在实际开发中,面对大量的数据库表,手动编写对应的Java实体类、Mapper接口以及...
"abator代码生成器.swf" 是一个Flash视频文件,很可能是一个交互式的教学视频,通过演示如何使用Abator来一步步生成代码,让用户更直观地了解其操作流程。SWF格式的文件通常用于在网络浏览器中播放多媒体内容。 **...
它通过自动化的代码生成,帮助开发者快速构建项目的数据访问层,减少手动编写重复代码的时间,提高开发效率。 在 MyBatis 中,DAO(Data Access Object)层是负责与数据库进行交互的组件,而 XML 映射文件则是定义 ...
Abator是一款自动化工具,它可以自动生成Java代码和SQL映射文件,大大简化了开发过程。下面我们将分步骤解析如何利用Abator来创建Ibatis DAO框架。 首先,确保你已经正确地安装并配置了Abator。Abator通常是一个...
本教程将详细介绍如何使用Abator进行自动代码生成。 1. **Abator简介** Abator是基于Maven的代码生成工具,通过简单的配置文件,可以根据数据库表自动生成JavaBean、Mapper接口、XML映射文件以及对应的Service和...
Abator 提供了一种自动化的方式来解决这个问题,它通过读取数据库表结构,自动生成相应的实体类、DAO 接口和实现、Mapper XML 文件等。 在使用 Abator 之前,你需要配置一个核心配置文件 `abatorConfig.xml`。这个...
abator是ibatis的自动生成文档的工具插件,而ibatis则是用于持久层类似Hibernate,但可以手动写sql, 使得我们的工作更加便捷。 附件中包括使用说明文档和DEMO参考。适合初学者
使用 Abator,开发者可以定义数据库表和列的映射规则,然后通过简单的命令或界面操作,自动生成相应的 Java 类和 SQL 映射文件。这不仅减少了手动编写代码的工作量,还降低了由于人为错误导致的潜在问题。此外,...
这个"abator-插件包(改造版)"是为了进一步优化原版 Abator,可能包含了一些定制化的功能或改进,以更好地适应开发者的需求,不过由于描述中提到是"无注释",所以在使用时可能需要自行探索其具体功能和用法。...
标题提到的“Abator去多余注释替换jar包”是指使用了一个特殊处理过的Abator版本,这个版本的jar包在生成代码时不会包含那些不必要的或冗余的注释。这样做的好处包括:一是减小了最终生成的源代码文件大小,二是符合...
Abator 是一个强大的工具,主要用于自动化Java开发过程中的部分任务,特别是针对数据库操作的代码生成。这个工具基于MyBatis框架,能够自动生成Java Bean类和对应的iBatis SQL Map文件,大大减轻了开发者手动编写...
配置文件通常是一个XML文件,其中包含了关于数据库连接、表名、字段名等信息,这使得Abator能够根据你的需求自动生成相应的代码。 2. **数据库映射**:Abator的核心功能是将数据库中的表结构映射到XML文件中,这些...
Abator 是一个强大的工具,专为 iBATIS 框架设计,用于自动化代码生成,减轻开发人员在数据访问层的编码负担。通过Abator,你可以快速生成与数据库表对应的各类文件,包括SqlMap配置文件、Java Bean模型、主键模型、...
Abator就是这样一个工具,它是一个自动化代码生成器,能够自动生成iBatis所需的SQL映射文件、DAO接口、实体类等,大大减轻了开发工作量。本教程将介绍如何在Eclipse中配置并使用无注释版的Abator插件。 首先,我们...
Abator 是一个强大的工具,专为 iBatis 数据库映射框架设计,用于自动生成 Java 源代码、SQL 映射文件以及相关的构建文件。它简化了开发过程,减轻了开发者手动编写重复代码的工作负担。这个离线安装包允许你在没有...
`Abator`是`Ibatis`项目的一部分,是一个代码生成工具,能自动生成基于`Ibatis`的数据访问层(DAO)和模型(Model)代码,大大提高了开发效率。 在`Ibatis`中,数据库操作通过SQL映射文件实现,这些文件包含了SQL...