MyBatis

#千鋒#

1.添加mybatis的依賴韩肝,目前版本是3.4.6触菜,除此之外還有junit和mysql的驅動依賴分別引入進來

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0"

? ? ? ?? xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

? ? ? ?? xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

? ? <modelVersion>4.0.0</modelVersion>

? ? <groupId>com.zy</groupId>

? ? <artifactId>NZMybatisTest</artifactId>

? ? <version>1.0.0-SNAPSHOT</version>

? ? <dependencies>

? ? ? ? <dependency>

? ? ? ? ? ? <groupId>mysql</groupId>

? ? ? ? ? ? <artifactId>mysql-connector-java</artifactId>

? ? ? ? ? ? <version>5.1.44</version>

? ? ? ? </dependency>

? ? ? ? <dependency>

? ? ? ? ? ? <groupId>junit</groupId>

? ? ? ? ? ? <artifactId>junit</artifactId>

? ? ? ? ? ? <version>4.12</version>

? ? ? ? </dependency>

? ? ? ? <dependency>

? ? ? ? ? ? <groupId>org.mybatis</groupId>

? ? ? ? ? ? <artifactId>mybatis</artifactId>

? ? ? ? ? ? <version>3.4.6</version>

? ? ? ? </dependency>

? ? </dependencies>

</project>

2.在resources目錄下新增一個mybatis的配置文件涡相,mybatis.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節(jié)點

? ? ? ? 里面有配置信息 分別是環(huán)境和映射

? ? ? ?  其中環(huán)境里有datasource剩蟀,里面有我們熟悉的連接數(shù)據(jù)庫的四個字符串

-->

<configuration>

? ? <environments default="development">

? ? ? ? <environment id="development">

? ? ? ? ? ? <transactionManager type="JDBC"/>

? ? ? ? ? ? <dataSource type="POOLED">

? ? ? ? ? ? ? ? <property name="driver" value="com.mysql.jdbc.Driver"/>

? ? ? ? ? ? ? ? <property name="url" value="jdbc:mysql://localhost:3306/*"/>

? ? ? ? ? ? ? ? <property name="username" value="root"/>

? ? ? ? ? ? ? ? <property name="password" value="***"/>

? ? ? ? ? ? </dataSource>

? ? ? ? </environment>

? ? </environments>

? ? <mappers>

? ? ? ? <mapper resource="com/zy/pojo/UserMapper.xml"/>

? ? </mappers>

</configuration>

3.在com.zy.pojo的包下創(chuàng)建User.java文件

package com.zy.pojo;

public class User {

? ? private int uid;

? ? private String username;

? ? private String password;

? ? private int age;

? ? private String addr;

? ? @Override

? ? public String toString() {

? ? ? ? return "User{" +

? ? ? ? ? ? ? ? "uid=" + uid +

? ? ? ? ? ? ? ? ", username='" + username + '\'' +

? ? ? ? ? ? ? ? ", password='" + password + '\'' +

? ? ? ? ? ? ? ? ", age=" + age +

? ? ? ? ? ? ? ? ", addr='" + addr + '\'' +

? ? ? ? ? ? ? ? '}';

? ? }

? ? public int getUid() {

? ? ? ? return uid;

? ? }

? ? public void setUid(int uid) {

? ? ? ? this.uid = uid;

? ? }

? ? public String getUsername() {

? ? ? ? return username;

? ? }

? ? public void setUsername(String username) {

? ? ? ? this.username = username;

? ? }

? ? public String getPassword() {

? ? ? ? return password;

? ? }

? ? public void setPassword(String password) {

? ? ? ? this.password = password;

? ? }

? ? public int getAge() {

? ? ? ? return age;

? ? }

? ? public void setAge(int age) {

? ? ? ? this.age = age;

? ? }

? ? public String getAddr() {

? ? ? ? return addr;

? ? }

? ? public void setAddr(String addr) {

? ? ? ? this.addr = addr;

? ? }

}

4.在com/zy/pojo的目錄下創(chuàng)建UserMapper.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="com.zy.pojo.UserMapper">

? ? <select id="selectUser" resultType="com.zy.pojo.User">

? ? select * from user

? </select>

</mapper>

5.TestUser.java

package com.zy.test;

import com.zy.pojo.User;

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 org.junit.Test;

import java.io.IOException;

import java.sql.Connection;

import java.util.List;

public class TestUser {

? ? @Test

? ? public void testGetAllUsers(){

? ? ? ? /**

? ? ? ?? *? 1.? 使用mybatis的配置文件以及SqlSessionFactoryBuilder建造者模式創(chuàng)建SqlSessionFactory對象

? ? ? ?? *? 2.? 使用SqlSessionFactory對象的openSession()方法來得到一個SqlSession對象,用該對象即可完成對象的所有的crud操作

? ? ? ?? *? 3.? 使用SqlSession對象來完成crud操作

? ? ? ?? *? 4.? 關閉資源

? ? ? ?? *

? ? ? ?? */

? ? ? ? try {

? ? ? ? ? ? SqlSessionFactory sf = new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream("mybatis.xml"));

? ? ? ? ? ? SqlSession session = sf.openSession();

? ? ? ? ? ? /**

? ? ? ? ? ?? * session的crud方法("namespace.id");整個項目中的namespace.id必須唯一

? ? ? ? ? ?? */

? ? ? ? ? ? List<User> users = session.selectList("com.zy.pojo.UserMapper.selectUser");

? ? ? ? ? ? for (User u : users) {

? ? ? ? ? ? ? ? System.out.println(u);

? ? ? ? ? ? }

? ? ? ? ? ? if(session != null){

? ? ? ? ? ? ? ? session.close();

? ? ? ? ? ? ? ? session = null;

? ? ? ? ? ? }

? ? ? ? } catch (IOException e) {

? ? ? ? ? ? e.printStackTrace();

? ? ? ? }

? ? }

}

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末育特,一起剝皮案震驚了整個濱河市丙号,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌缰冤,老刑警劉巖犬缨,帶你破解...
    沈念sama閱讀 221,430評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異棉浸,居然都是意外死亡遍尺,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,406評論 3 398
  • 文/潘曉璐 我一進店門涮拗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人迂苛,你說我怎么就攤上這事三热。” “怎么了三幻?”我有些...
    開封第一講書人閱讀 167,834評論 0 360
  • 文/不壞的土叔 我叫張陵就漾,是天一觀的道長。 經(jīng)常有香客問我念搬,道長抑堡,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,543評論 1 296
  • 正文 為了忘掉前任朗徊,我火速辦了婚禮首妖,結果婚禮上,老公的妹妹穿的比我還像新娘爷恳。我一直安慰自己有缆,他們只是感情好,可當我...
    茶點故事閱讀 68,547評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著棚壁,像睡著了一般杯矩。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上袖外,一...
    開封第一講書人閱讀 52,196評論 1 308
  • 那天史隆,我揣著相機與錄音,去河邊找鬼曼验。 笑死泌射,一個胖子當著我的面吹牛,可吹牛的內容都是我干的蚣驼。 我是一名探鬼主播魄幕,決...
    沈念sama閱讀 40,776評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼颖杏!你這毒婦竟也來了纯陨?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,671評論 0 276
  • 序言:老撾萬榮一對情侶失蹤留储,失蹤者是張志新(化名)和其女友劉穎翼抠,沒想到半個月后获讳,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,221評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡量愧,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,303評論 3 340
  • 正文 我和宋清朗相戀三年偎肃,在試婚紗的時候發(fā)現(xiàn)自己被綠了浑此。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,444評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡紊馏,死狀恐怖蒲犬,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情赌朋,我是刑警寧澤,帶...
    沈念sama閱讀 36,134評論 5 350
  • 正文 年R本政府宣布赡若,位于F島的核電站团甲,受9級特大地震影響,放射性物質發(fā)生泄漏身腻。R本人自食惡果不足惜匹厘,卻給世界環(huán)境...
    茶點故事閱讀 41,810評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望她按。 院中可真熱鬧炕柔,春花似錦、人聲如沸陵刹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,285評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽碘耳。三九已至框弛,卻和暖如春瑟枫,著一層夾襖步出監(jiān)牢的瞬間指攒,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,399評論 1 272
  • 我被黑心中介騙來泰國打工膝擂, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人狞山。 一個月前我還...
    沈念sama閱讀 48,837評論 3 376
  • 正文 我出身青樓叉寂,卻偏偏與公主長得像,于是被迫代替她去往敵國和親勘纯。 傳聞我的和親對象是個殘疾皇子钓瞭,可洞房花燭夜當晚...
    茶點故事閱讀 45,455評論 2 359

推薦閱讀更多精彩內容