由于某种原因我需要研究下ibatis,看了一下文件些了个入门示例共没有入门的同仁学习也算是自己做个笔记日后没准还能用上。
数据库:mysql5.5
ide:eclipse
首先在eclips的某个库下建个表
建标语句 写道
CREATE TABLE Account (
ACC_ID int ( 11 ) NOT NULL ,
ACC_FIRST_NAME varchar ( 50 ) default NULL ,
ACC_LAST_NAME varchar ( 50 ) default NULL ,
ACC_EMAIL varchar ( 80 ) default NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
其次domai对象
package com.mydomain.domain;
public class Account {
private int id;
private String firstName;
private String lastName;
private String emailAddress;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getEmailAddress() {
return emailAddress;
}
public void setEmailAddress(String emailAddress) {
this.emailAddress = emailAddress;
}
}
其实对于入门的人来说这个才是最重要的:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMap
PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="Account">
<typeAlias alias="Account" type="com.mydomain.domain.Account"/>
<resultMap id="AccountResult" class="Account">
<result property="id" column="ACC_ID"/>
<result property="firstName" column="ACC_FIRST_NAME"/>
<result property="lastName" column="ACC_LAST_NAME"/>
<result property="emailAddress" column="ACC_EMAIL"/>
</resultMap>
<select id="selectAllAccounts" resultMap="AccountResult">
select * from ACCOUNT
</select>
<select id="selectAccountById" parameterClass="int" resultClass="Account">
select
ACC_ID as id,
ACC_FIRST_NAME as firstName,
ACC_LAST_NAME as lastName,
ACC_EMAIL as emailAddress
from ACCOUNT
where ACC_ID = #id#
</select>
<insert id="insertAccount" parameterClass="Account">
insert into ACCOUNT(
ACC_ID,
ACC_FIRST_NAME,
ACC_LAST_NAME,
ACC_EMAIL)
values (
#id#, #firstName#, #lastName#, #emailAddress#)
</insert>
<update id="updateAccount" parameterClass="Account">
update ACCOUNT set
ACC_FIRST_NAME = #firstName#,
ACC_LAST_NAME = #lastName#,
ACC_EMAIL = #emailAddress#
where
ACC_ID = #id#
</update>
<delete id="deleteAccountById" parameterClass="int">
delete from ACCOUNT where ACC_ID = #id#
</delete>
</sqlMap>
这个配置文件里边建立了Accout对象和数据库Account的关联关系,已经对象属性和表的字段之间的对应关系,同时定义了各种操作。如果之前接触过hibernate的话这个就不难理解了。
还有另外一个就是配置文件:
主要是设置连接的数据库的配置
<?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>
<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/eredg4?useUnicode=true&characterEncoding=UTF-8"/>
<property name="JDBC.Username" value="root"/>
<property name="JDBC.Password" value="admin"/>
</dataSource>
</transactionManager>
<sqlMap resource="com/mydomain/data/Account.xml"/>
</sqlMapConfig>
和Account.xml对应的各个操作的方法:
package com.mydomain.data;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;
import com.ibatis.common.resources.Resources;
import com.mydomain.domain.Account;
import java.io.Reader;
import java.io.IOException;
import java.util.List;
import java.sql.SQLException;
public class SimpleExample {
private static SqlMapClient sqlMapper;
static {
try {
Reader reader = Resources.getResourceAsReader("com/mydomain/data/SqlMapConfig.xml");
sqlMapper = SqlMapClientBuilder.buildSqlMapClient(reader);
reader.close();
} catch (IOException e) {
// Fail fast.
throw new RuntimeException("Something bad happened while building the SqlMapClient instance." + e, e);
}
}
public static List selectAllAccounts () throws SQLException {
return sqlMapper.queryForList("selectAllAccounts");
}
public static Account selectAccountById (int id) throws SQLException {
return (Account) sqlMapper.queryForObject("selectAccountById", id);
}
public static void insertAccount (Account account) throws SQLException {
sqlMapper.insert("insertAccount", account);
}
public static void updateAccount (Account account) throws SQLException {
sqlMapper.update("updateAccount", account);
}
public static void deleteAccount (int id) throws SQLException {
sqlMapper.delete("deleteAccount", id);
}
}
现在就剩下测试文件了:
package com.mydomain.test;
import com.mydomain.data.SimpleExample;
import com.mydomain.domain.*;
public class AccountTest {
/**
* @param args
*/
public static void main(String[] args) throws Exception{
/**
* 增
*/
/**
Account account =new Account();
account.setId(1);
account.setFirstName("Road");
account.setLastName("Horse");
account.setEmailAddress("hlh-ml@163.com");
SimpleExample.insertAccount(account);*/
/**
* 查
*/
Account account =new Account();
account=SimpleExample.selectAccountById(1);
System.out.println("LastName=="+account.getLastName());
}
}
到此ok,我把项目也传上来还没学过的可以当作入门的例子来学习。需要导入ibatis包和mysql数据库包。
分享到:
相关推荐
ibatis入门级完整示例,包含ibatis-2.3.4.726.jar、commons-logging-1.0.4.jar、mysql-connector-java-3.1.10-bin.jar和建表语句。
### iBatis入门示例解析 #### 1. 数据库准备 在开始编写代码之前,我们需要创建一个数据库和相应的表。示例中使用的是MySQL数据库,创建了一个名为`sample`的数据库,并在其中创建了一个名为`t_user`的表,包含`id...
这个压缩包中的"ibatisJavaTest"项目应该是一个简单的Ibatis入门示例,可能包含了配置文件、映射文件、测试类等。通过分析和运行这个项目,你可以直观地了解Ibatis如何与数据库交互,以及如何编写和使用Mapper接口。...
《Ibatis 入门经典 实例》 Ibatis 是一款著名的轻量级 Java 持久层框架,它提供了一种映射 SQL 和 Java 对象的简单方式,从而减轻了开发人员在数据库操作中的工作负担。这篇实例教程将带你深入理解 Ibatis 的核心...
本教程将通过一个基础的Ibatis入门示例,帮助你理解如何在实际项目中使用Ibatis进行数据操作。 首先,Ibatis 提供了SQL Map XML文件,它允许开发者将SQL语句与Java代码分离,提高了代码的可读性和可维护性。在我们...
**iBatis入门(三)** 在本篇中,我们将深入探讨iBatis,这是一个流行的开源持久层框架,它允许开发者将SQL语句与Java代码分离,提供更灵活的数据库操作方式。iBatis的核心是SQL Maps,这些映射文件包含了SQL语句以及...
标题 "ibatis 入门" 暗示我们要探讨的是关于使用和理解开源持久层框架 iBATIS 的基础知识。iBATIS 是一个优秀的 Java 应用框架,它将 SQL 查询与 Java 代码分离,提供了更灵活的数据访问方式。这篇博客(博文链接已...
**ibatis入门** iBatis,一款轻量级的Java持久层框架,是MyBatis的前身,由美国华人开发团队开发。它提供了一个SQL、Java和XML的映射框架,将SQL语句与Java代码分离,使得开发者可以更加灵活地处理数据库操作,避免...
通过阅读这份“ibatis入门开发指南pdf”和对应的程序代码示例,开发者不仅可以了解iBATIS的基本用法,还能深入理解其实现原理,从而在实际项目中更好地利用这一工具。同时,提供的jar包则包含了运行iBATIS所需的库...
通过以上分析,我们可以看到iBatis 3的入门示例涵盖了从环境配置、数据映射到业务逻辑实现的整个过程。正确理解和运用这些概念对于高效地利用iBatis框架处理数据库操作至关重要。此外,通过细致地配置和优化,iBatis...
首先,"导入即用"表明这个压缩包可能包含了 Ibatis 的核心库、示例项目以及必要的配置文件,如 `SqlMapConfig.xml`。这个配置文件是 Ibatis 的核心,用于定义数据源、事务管理器以及 SQL 映射文件的位置。在 ...
这篇博客将通过一个简单的入门示例,帮助初学者了解如何使用 Ibatis。 【知识点详解】: 1. **Ibatis 概述**:Ibatis 是一款由 MyBatis 团队开发的持久层框架,它简化了 JDBC 的繁琐代码,将 SQL 语句与 Java 代码...
`一个简单的ibatis示例.doc`是一个实际操作的示例,通常包含如何集成iBatis到Java项目中,编写映射文件,以及如何在代码中执行SQL查询。这样的例子对于初学者来说非常直观,能快速理解iBatis的工作原理。 `ibatis ...
【标题】"ibatis入门案例程序"涉及到的核心知识点是MyBatis框架的使用,这是一个流行的Java持久层框架,用于简化数据库操作。MyBatis通过将SQL语句与Java代码分离,提高了开发效率,并提供了灵活的映射机制,使得...
- 首先,阅读《IBatis入门手册》了解基本概念和安装步骤。 - 掌握XML配置和注解方式的Mapper接口定义。 - 学习如何进行参数映射和结果映射。 - 实践JPetStore-5.0源码,理解其架构和数据库交互逻辑。 - 最后,...
IbatisDemo是一个典型的基于Ibatis框架的入门示例,它为我们展示了如何在Java项目中使用Ibatis进行数据库操作。Ibatis,一个优秀的持久层框架,它允许开发者将SQL语句直接写在配置文件中,避免了JDBC的繁琐代码,...
在本入门示例中,你可能会看到以下几个关键知识点: 1. **配置文件**:`ibatis-config.xml`是iBatis的全局配置文件,它指定了数据库连接信息,如JDBC驱动、URL、用户名和密码。同时,它还包含了事务管理和SQL映射...