最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java持久層框架MyBatis簡(jiǎn)單實(shí)例

 更新時(shí)間:2016年07月06日 10:35:03   作者:穿梭于偶然  
MyBatis 本是apache的一個(gè)開(kāi)源項(xiàng)目iBatis, 2010年這個(gè)項(xiàng)目由apache software foundation 遷移到了google code,并且改名為MyBatis 。本文重點(diǎn)給大家介紹Java持久層框架MyBatis簡(jiǎn)單實(shí)例,非常不錯(cuò),具有參考借鑒價(jià)值,感興趣的朋友一起看下吧

什么是Mybatis

MyBatis 本是apache的一個(gè)開(kāi)源項(xiàng)目iBatis, 2010年這個(gè)項(xiàng)目由apache software foundation 遷移到了google code,并且改名為MyBatis 。iBATIS一詞來(lái)源于“internet”和“abatis”的組合,是一個(gè)基于Java的持久層框架。iBATIS提供的持久層框架包括SQL Maps和Data Access Objects(DAO)。

MyBatis 本是apache的一個(gè)開(kāi)源項(xiàng)目iBatis, 2010年這個(gè)項(xiàng)目由apache software foundation 遷移到了google code,并且改名為MyBatis 。2013年11月遷移到Github。

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

例子使用MyBatis+MySQL實(shí)現(xiàn)一個(gè)用戶(hù)表的查詢(xún),如下:

1、數(shù)據(jù)庫(kù)

在MySQL中,test數(shù)據(jù)庫(kù)下,簡(jiǎn)歷user表,字段:id,name,password,建表語(yǔ)句略。

2、需導(dǎo)入的包

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

3、目錄結(jié)構(gòu)

采用最簡(jiǎn)單的結(jié)構(gòu),com.mybatis包下有且僅有四個(gè)文件: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、表結(jié)構(gòu)文件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、測(cè)試用例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("--------------分隔線(xiàn)---------------"); 
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簡(jiǎn)單實(shí)例,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Java中Properties類(lèi)的操作實(shí)例詳解

    Java中Properties類(lèi)的操作實(shí)例詳解

    這篇文章主要介紹了Java中Properties類(lèi)的操作實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • Java的Jackson庫(kù)中復(fù)雜對(duì)象集合的幾種簡(jiǎn)單轉(zhuǎn)換

    Java的Jackson庫(kù)中復(fù)雜對(duì)象集合的幾種簡(jiǎn)單轉(zhuǎn)換

    本文主要介紹了Java的Jackson庫(kù)中復(fù)雜對(duì)象集合的幾種簡(jiǎn)單轉(zhuǎn)換。具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧
    2017-02-02
  • 用Spring將Service注入到Servlet中的流程步驟

    用Spring將Service注入到Servlet中的流程步驟

    在Java Web開(kāi)發(fā)中,??Servlet??是一個(gè)非常重要的組件,它用于處理客戶(hù)端的請(qǐng)求并生成響應(yīng),而?Spring??框架則是一個(gè)廣泛使用的依賴(lài)注入框架,可以幫助開(kāi)發(fā)者管理應(yīng)用中的對(duì)象及其依賴(lài)關(guān)系,本文將介紹如何使用Spring框架將Service層的對(duì)象注入到Servlet中
    2025-01-01
  • Java中Object轉(zhuǎn)換為L(zhǎng)ist類(lèi)型的實(shí)現(xiàn)方法

    Java中Object轉(zhuǎn)換為L(zhǎng)ist類(lèi)型的實(shí)現(xiàn)方法

    這篇文章主要介紹了Java中Object轉(zhuǎn)換為L(zhǎng)ist類(lèi)型的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Java前后端分離的在線(xiàn)點(diǎn)餐系統(tǒng)實(shí)現(xiàn)詳解

    Java前后端分離的在線(xiàn)點(diǎn)餐系統(tǒng)實(shí)現(xiàn)詳解

    這是一個(gè)基于SpringBoot+Vue框架開(kāi)發(fā)的在線(xiàn)點(diǎn)餐系統(tǒng)。首先,這是一個(gè)前后端分離的項(xiàng)目。具有一個(gè)在線(xiàn)點(diǎn)餐系統(tǒng)該有的所有功能,感興趣的朋友快來(lái)看看吧
    2022-01-01
  • json序列化時(shí)忽略值為null的字段2種方式實(shí)例

    json序列化時(shí)忽略值為null的字段2種方式實(shí)例

    這篇文章主要給大家介紹了關(guān)于json序列化時(shí)忽略值為null的字段的2種方式,當(dāng)對(duì)象中某個(gè)字段為null時(shí),我們希望將對(duì)象轉(zhuǎn)換成json時(shí)為null的字段不會(huì)被轉(zhuǎn)換到j(luò)son字符串,里面需要的朋友可以參考下
    2023-10-10
  • 使用Java方法配置Spring代碼解析

    使用Java方法配置Spring代碼解析

    這篇文章主要介紹了使用Java方法配置Spring代碼解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • MyBatis-Plus?ORM數(shù)據(jù)庫(kù)和實(shí)體類(lèi)映射方式

    MyBatis-Plus?ORM數(shù)據(jù)庫(kù)和實(shí)體類(lèi)映射方式

    本文詳細(xì)介紹了MyBatis-Plus(MP)在數(shù)據(jù)庫(kù)和Java對(duì)象映射方面的功能,包括基本映射、主鍵生成策略、復(fù)雜映射(如嵌套對(duì)象和集合類(lèi)型)以及自定義SQL的使用,MP通過(guò)豐富的注解和XML配置,簡(jiǎn)化了數(shù)據(jù)庫(kù)操作,提高了開(kāi)發(fā)效率
    2025-01-01
  • 新的Java訪(fǎng)問(wèn)mysql數(shù)據(jù)庫(kù)工具類(lèi)的操作代碼

    新的Java訪(fǎng)問(wèn)mysql數(shù)據(jù)庫(kù)工具類(lèi)的操作代碼

    本文通過(guò)實(shí)例代碼給大家介紹新的Java訪(fǎng)問(wèn)mysql數(shù)據(jù)庫(kù)工具類(lèi)的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2021-12-12
  • Java實(shí)現(xiàn)線(xiàn)程插隊(duì)的示例代碼

    Java實(shí)現(xiàn)線(xiàn)程插隊(duì)的示例代碼

    在編寫(xiě)多線(xiàn)程的業(yè)務(wù)時(shí),會(huì)遇到讓一個(gè)線(xiàn)程優(yōu)先于其他線(xiàn)程運(yùn)行的情況,除了可以設(shè)置線(xiàn)程的優(yōu)先級(jí)高于其他線(xiàn)程,還有更直接的方式:線(xiàn)程插隊(duì)。本文將用Java實(shí)現(xiàn)線(xiàn)程插隊(duì),需要的可以參考一下
    2022-08-08

最新評(píng)論

永济市| 响水县| 汝州市| 仪征市| 福清市| 潼南县| 怀柔区| 金山区| 沅陵县| 从江县| 清苑县| 三河市| 嵊州市| 中方县| 武陟县| 盐城市| 乌海市| 海晏县| 务川| 行唐县| 临泽县| 中阳县| 墨竹工卡县| 班玛县| 通江县| 冷水江市| 新龙县| 沾化县| 克什克腾旗| 丰台区| 错那县| 什邡市| 阿城市| 区。| 防城港市| 巴东县| 长乐市| 雅安市| 聊城市| 仪陇县| 绍兴市|