91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在iBatis中調用存儲過程

發布時間:2021-07-15 09:31:53 來源:億速云 閱讀:182 作者:chen 欄目:編程語言

本篇內容主要講解“如何在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

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE sqlMapConfigPUBLIC "-//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://192.168.10.112:3306/vin"/>          <property name="JDBC.Username" value="root"/>          <property name="JDBC.Password" value="root"/>        </dataSource>      </transactionManager>     <sqlMap resource="Contact.xml"/> </sqlMapConfig>

我們只需修改"Contact.xml"并使用標簽來在iBatis中調用存儲過程

<procedure id="storedInfo" resultClass="Contact">       { call showData() } </procedure>

上面幾行代碼調用了存儲過程并集合了contract表.下面是Contact.xml的代碼 :

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE sqlMapPUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN""http://ibatis.apache.org/dtd/sql-map-2.dtd"> <sqlMap namespace="Contact">  <!--- Calling stored procedure -->       <procedure id="storedInfo" resultClass="Contact">            { call showData()}    </procedure></sqlMap>

現在我們可以這樣在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<Contact> contacts = (List<Contact>)        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中調用存儲過程”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

册亨县| 宁晋县| 榆树市| 贵州省| 湖南省| 朔州市| 周至县| 桦川县| 申扎县| 新巴尔虎左旗| 宁蒗| 上蔡县| 平安县| 晋城| 清徐县| 鹤山市| 屯昌县| 京山县| 鄂州市| 汨罗市| 保山市| 阳东县| 天门市| 白山市| 印江| 贵定县| 枣阳市| 民县| 丹东市| 平果县| 南昌县| 西乡县| 海南省| 曲阳县| 扎囊县| 闸北区| 迭部县| 张家口市| 南通市| 景谷| 兴城市|