如何在iBatis中调用存储过程

本篇内容主要讲解“如何在iBatis中调用存储过程”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何在iBatis中调用存储过程”吧!

创新互联秉承实现全网价值营销的理念,以专业定制企业官网,做网站、成都网站设计,微信小程序定制开发,网页设计制作,成都手机网站制作全网营销推广帮助传统企业实现“互联网+”转型升级专业定制企业官网,公司注重人才、技术和管理,汇聚了一批优秀的互联网技术人才,对客户都以感恩的心态奉献自己的专业和所长。

通过iBatis我们可以在数据库表中执行内嵌的insert , delete, update SQL命令。本文中你将看到如何在iBatis中调用存储过程.

我们使用MySQL数据库,并且使用和上一个例子中一样的Contact表.

我们在数据库"vin"中创建了一个叫showData()的存储过程,它将显示Contract表中的所有的contact信息.为了创建存储过程,我们打开MySQL并创建如下定义的过程 :

DELIMITER $$ DROP PROCEDURE 
IF EXISTS `vin`.`showData`$$ CREATE PROCEDURE 
`vin`.`showData`()BEGINselect * from 
Contact;END$$ DELIMITER ;

"Contact.java"和"SqlMapConfig.xml"与上一个例子中的是一样的 :

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;    this.email = email;    }    public String getEmail() {    return email;  }  public void setEmail(String email) {    this.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) {    this.id = id;  }  public String getLastName() {    return lastName;  }  public void setLastName(String lastName) {    this.lastName = lastName;  } }

SqlMapConfig.xml

                                                                             

我们只需修改"Contact.xml"并使用标签来在iBatis中调用存储过程

       { call showData() } 

上面几行代码调用了存储过程并集合了contract表.下面是Contact.xml的代码 :

                      { call showData()}    

现在我们可以这样在iBatis中调用存储过程 :

sqlMap.queryForList("Contact.storedInfo",null); "sqlMap"是SqlMapClient类的一个对象. IbatisStoredProcedure.java的代码如下 :

import com.ibatis.common.resources.Resources;import com.ibatis.sqlmap.client.SqlMapClient;import com.ibatis.sqlmap.client.SqlMapClientBuilder;import java.io.*;import java.sql.SQLException;import java.util.*; public class IbatisStoredProcedure{  public static void main(String[] args)       throws IOException,SQLException{        Reader reader =       Resources.getResourceAsReader("SqlMapConfig.xml");      SqlMapClient sqlMap =       SqlMapClientBuilder.buildSqlMapClient(reader);      System.out.println("All Contacts");      List contacts = (List)        sqlMap.queryForList("Contact.storedInfo",null);        Contact contact = null;      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;       System.out.println("");      }      }}

请依照如下步骤执行在iBatis中调用存储过程 :

创建Contact.xml和SqlMapConfig.xml

创建Contact.java并将其编译

创建IbatisStoredProcedure.java并将其编译

执行IbatisStoredProcedure类文件,所有的Contract信息将在你的命令提示符下显示 :

如何在iBatis中调用存储过程

到此,相信大家对“如何在iBatis中调用存储过程”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


分享名称:如何在iBatis中调用存储过程
分享路径:http://scyanting.com/article/jgciec.html