Share on Google+Share on Google+

iBatis-Inserting data into database

The greatest feature of iBatis is it?s simplicity, and that is the only reason of being it easier to use in any database application.

iBatis-Inserting data into database


The greatest feature of iBatis is it?s simplicity, and that is the only reason of being it easier to use in any database application. iBatis makes it really simple to use a database with Java or any other Microsoft applications. In this section we will introduce you with an example which is inserting a row into database. And for this we are using MySQL as a database it is the same one we have used  in our previous example. The table name is "Contact" and we have used  two files "" and  "SqlMapConfig.xml" as we did in previous example. 



public class Contact {
  private String firstName; 
  private String lastName; 
  private String email;  
  private int id;

  public Contact() {}
  public Contact(
  String firstName,
    String lastName,
    String email
) {
  this.firstName = firstName;
  this.lastName = lastName; = email;
  public String getEmail() {
  return email;
  public void setEmail(String email) { = email;
  public String getFirstName() {
  return firstName;
  public void setFirstName(String firstName) {
  this.firstName = firstName;
  public int getId() {
  return id;
  public void setId(int id) { = id;
  public String getLastName() {
  return lastName;
  public void setLastName(String lastName) {
  this.lastName = lastName;


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig
PUBLIC "-// SQL Map Config 2.0//EN"

   <settings useStatementNamespaces="true"/>
   <transactionManager type="JDBC">
  <dataSource type="SIMPLE">
  <property name="JDBC.Driver" value="com.mysql.jdbc.Driver"/>
  <property name="JDBC.ConnectionURL"
  <property name="JDBC.Username" value="root"/>
  <property name="JDBC.Password" value="root"/>
   <sqlMap resource="Contact.xml"/> 

For SQL mapping statement we have used <insert> tag. Inside this tag definition we have defined an "id" which will be used in file for executing insert query on database.

<selectKey resultClass="int" keyProperty="id">
  select last_insert_id() as id

Above lines of code points to next row of the table where the next value is to be inserted.


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap 
PUBLIC "-// SQL Map 2.0//EN"

<sqlMap namespace="Contact">

<!--- Inserting data in table -->

<insert id="insert" parameterClass="Contact">
   insert into contact (firstName,lastName,email)
   values (#firstName#, #lastName#, #email#)
   <selectKey resultClass="int" keyProperty="id">
  select last_insert_id() as id

<!--- Showing all data of table -->
<select id="getAll" resultClass="Contact">
   select * from contact

Full source code of is as follows:

import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;
import java.sql.SQLException;
import java.util.*;

public class IbatisInsertion{
  public static void main(String[] argsthrows IOException,SQLException{
   Reader reader = Resources.getResourceAsReader("SqlMapConfig.xml");
  SqlMapClient sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);
  //Inserting one record in contacts
   "*-------------- Inserting information in Contact Table -----------*"
  Contact contact=new Contact("Amit","Kumar","[email protected]");
  System.out.println("|Record Inserted Successfully ");
    System.out.println("All Contacts");
  List<Contact> contacts = (List<Contact>)
  Contact contactall = new Contact();
  for (Contact c : contacts) {
  System.out.print("  " + c.getId());
  System.out.print("  " + c.getFirstName());
  System.out.print("  " + c.getLastName());
  System.out.print("  " + c.getEmail());
  contact = c; 

To run this example :

  1. Create and save and compile it.
  2. Create and save Contact.xml and SqlMapConfig.xml
  3. Create and save and
  4.  execute IbatisInsertion class file and output on your command prompt will be flashed as
    "Record Inserted Successfully"


Download Source Codes




Posted on: September 9, 2008 If you enjoyed this post then why not add us on Google+? Add us to your Circles

Share this Tutorial Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.

Discuss: iBatis-Inserting data into database   View All Comments

Post your Comment

Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
June 2, 2012

Thank you for the tutorial. It was very helpful