程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Java耐久層框架MyBatis簡略實例

Java耐久層框架MyBatis簡略實例

編輯:關於JAVA

Java耐久層框架MyBatis簡略實例。本站提示廣大學習愛好者:(Java耐久層框架MyBatis簡略實例)文章只能為提供參考,不一定能成為您想要的結果。以下是Java耐久層框架MyBatis簡略實例正文


甚麼是Mybatis

MyBatis 本是apache的一個開源項目iBatis, 2010年這個項目由apache software foundation 遷徙到了谷歌 code,而且更名為MyBatis 。iBATIS一詞起源於“internet”和“abatis”的組合,是一個基於Java的耐久層框架。iBATIS供給的耐久層框架包含SQL Maps和Data Access Objects(DAO)。

MyBatis 本是apache的一個開源項目iBatis, 2010年這個項目由apache software foundation 遷徙到了谷歌 code,而且更名為MyBatis 。2013年11月遷徙到Github。

2011年6月iBatis 改名為 MyBatis,從 iBatis 到 MyBatis,不只是稱號上的變更,MyBatis 供給了更加壯大的功效,同時並沒有喪失其易用性,相反,在許多處所都借助於 JDK 的泛型和注解特征停止了簡化。所以你懂的,開端進修就從MyBatis吧。

例子應用MyBatis+MySQL完成一個用戶表的查詢,以下:

1、數據庫

在MySQL中,test數據庫下,簡歷user表,字段:id,name,password,建表語句略。

2、需導入的包

只要兩個: mybatis-3.0.3.jar mysql-connector-java-5.1.16-bin.jar(JDBC包)

3、目次構造

采取最簡略的構造,com.mybatis包下有且唯一四個文件:configuration.xml、user.xml、User.java、Test.java 。

4、mybatis設置裝備擺設文件configuration.xml

<?xml version="1.0" encoding="UTF-8"?> 
<!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="com.mysql.jdbc.Driver" /> 
<property name="url" value="jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8" /> 
<property name="username" value="root" /> 
<property name="password" value="123456" /> 
</dataSource> 
</environment> 
</environments> 
<mappers> 
<mapper resource="user.xml"/> 
</mappers> 
</configuration>

5、User表sql文件User.xml

<?xml version="1.0" encoding="UTF-8"?> 
<!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>

6、表構造文件User.java

package com.mybatis; 
public class User { 
private int id; 
private String name; 
private String password; 
public User(){} 
public User(int id, String name) { 
this.id = id; 
this.name = name; 
} 
public int getId() { 
return this.id; 
} 
public void setId(int id) { 
this.id = id; 
} 
public String getName() { 
return this.name; 
} 
public void setName(String name) { 
this.name = name; 
} 
public String getPassword() { 
return this.password; 
} 
public void setPassword(String password) { 
this.password = password; 
} 
@Override 
public String toString() { 
return "User [id=" + this.id + ", name=" + this.name + ", password=" + this.password + "]"; 
} 
}

7、測試用例Test.java

package com.mybatis; 
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; 
public class Test { 
public static void main(String[] args) throws IOException { 
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", "1"); 
System.out.println(user.getName()); 
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).getName()); 
} 
} catch (Exception e) { 
e.printStackTrace(); 
} finally { 
session.close(); 
} 
} 
}

以上所述是小編給年夜家引見的Java耐久層框架MyBatis簡略實例,願望對年夜家有所贊助,假如年夜家有任何疑問請給我留言,小編會實時答復年夜家的。在此也異常感激年夜家對網站的支撐!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved