溫馨提示×

溫馨提示×

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

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

Mybatis如何在Java工程中使用

發(fā)布時間:2020-11-17 16:17:34 來源:億速云 閱讀:214 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關(guān)Mybatis如何在Java工程中使用,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

2011年6月iBatis 更名為 MyBatis,從 iBatis 到 MyBatis,不只是名稱上的變化,MyBatis 提供了更為強(qiáng)大的功能,同時并沒有損失其易用性,相反,在很多地方都借助于 JDK 的泛型和注解特性進(jìn)行了簡化。所以你懂的,開始學(xué)習(xí)就從MyBatis吧.

例子使用MyBatis+Oracle實現(xiàn)一個用戶表的查詢,如下:

①數(shù)據(jù)庫 在MySQL中,test數(shù)據(jù)庫下,簡歷user表,字段:iid,ifullname,ipassword,建表語句略。

②需導(dǎo)入的包 只有兩個: mybatis-3.4.4.jar 和 ojdbc14.jar(JDBC包)

③目錄結(jié)構(gòu) 采用最簡單的結(jié)構(gòu),com.mybatis包下有且僅有四個文件 configuration.xml user.xml User.java Test.java

Mybatis如何在Java工程中使用

④mybatis配置文件configuration.xml,

[xml]

<&#63;xml version="1.0" encoding="UTF-8"&#63;>  
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">  
<configuration>  
  <typeAliases>  
    <typeAlias alias="User" type="com.mybatis.User"></typeAlias>  
  </typeAliases>  
  <environments default="development">  
    <environment id="development">  
      <transactionManager type="JDBC"></transactionManager>  
      <dataSource type="POOLED">  
        <property name="driver" value="oracle.jdbc.driver.OracleDriver" />  
        <property name="url" value="jdbc:oracle:thin:@192.168.0.87:1526:entegor" />  
        <property name="username" value="ideal" />  
        <property name="password" value="ideal" />  
      </dataSource>  
    </environment>  
  </environments>  
  <mappers>  
    <mapper resource="user.xml"/>  
  </mappers>  
</configuration>

 User表sql文件User.xml,

[xml]

<&#63;xml version="1.0" encoding="UTF-8"&#63;>  
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">  
<mapper namespace="User">  
  <select id="selectUser" parameterType="int" resultType="User">  
    SELECT * FROM user WHERE id = #{id}  
  </select>  
  <select id="selectUsers" resultType="User">  
    SELECT * FROM user  
  </select>  
</mapper>

表結(jié)構(gòu)文件User.java

package com.mybatis;
public class User {
  private int iid;
  private String ifullname;
  private String iloginname;
  private String ipassword;
  public User(){}  
  public User(int id, String name) {  
    this.iid = id;  
    this.ifullname = name;  
  }  
  public String getIfullname() {
    return ifullname;
  }
  public int getIid() {
    return iid;
  }
  public void setIid(int iid) {
    this.iid = iid;
  }
  public void setIfullname(String ifullname) {
    this.ifullname = ifullname;
  }
  public String getIloginname() {
    return iloginname;
  }
  public void setIloginname(String iloginname) {
    this.iloginname = iloginname;
  }
  public String getIpassword() {
    return ipassword;
  }
  public void setIpassword(String ipassword) {
    this.ipassword = ipassword;
  }
}

⑦測試用例Test.java

package com.controller;
import java.io.IOException;
import java.io.Reader;
import java.util.List;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import com.mybatis.User;
public class Test {
  public static void main(String[] args) throws IOException {
    // TODO Auto-generated method stub
    String resource = "configuration.xml";  
    Reader reader = Resources.getResourceAsReader(resource);  
    SqlSessionFactory ssf = new SqlSessionFactoryBuilder().build(reader);  
    SqlSession session = ssf.openSession();  
    try{  
      User user = session.selectOne("selectUser", 2);  
      System.out.println(user.getIfullname());  
      System.out.println(user);  
      System.out.println("--------------分隔線---------------");  
      List<User> users = session.selectList("selectUsers");  
      for(int i=0; i<users.size(); i++) {  
        System.out.println(users.get(i).getIfullname());  
      }  
    } catch (Exception e) {  
      e.printStackTrace();  
    } finally {  
      session.close();  
    }  
  }
}

看完上述內(nèi)容,你們對Mybatis如何在Java工程中使用有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI