国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術(shù)及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - MyBatis入門學習教程(一)-MyBatis快速入門

MyBatis入門學習教程(一)-MyBatis快速入門

2020-01-03 14:34孤傲蒼狼 JAVA教程

MyBatis是一個支持普通SQL查詢,存儲過程和高級映射的優(yōu)秀持久層框架,這篇文章主要給大家分享MyBatis入門學習教程(一)-MyBatis快速入門,需要的朋友可以參考下

MyBatis入門學習教程(一)-MyBatis快速入門

      MyBatis 本是apache的一個開源項目iBatis, 2010年這個項目由apache software foundation 遷移到了google code,并且改名為MyBatis 。2013年11月遷移到Github。

iBATIS一詞來源于“internet”和“abatis”的組合,是一個基于Java的持久層框架。iBATIS提供的持久層框架包括SQL Maps和Data Access Objects(DAO)

首先給大家介紹MyBatis的含義

  MyBatis是一個支持普通sql查詢,存儲過程和高級映射的優(yōu)秀持久層框架。MyBatis消除了幾乎所有的JDBC代碼和參數(shù)的手工設置以及對結(jié)果集的檢索封裝。MyBatis可以使用簡單的XML或注解用于配置和原始映射,將接口和Java的POJO(Plain Old Java Objects,普通的Java對象)映射成數(shù)據(jù)庫中的記錄。

二、mybatis快速入門

2.1、準備開發(fā)環(huán)境

 1、創(chuàng)建測試項目,普通java項目或者是JavaWeb項目均可,如下圖所示:

  MyBatis入門學習教程(一)-MyBatis快速入門

2、添加相應的jar包

  【mybatis】

         mybatis-3.1.1.jar

  【MYSQL驅(qū)動包】
    mysql-connector-java-5.1.7-bin.jar

   MyBatis入門學習教程(一)-MyBatis快速入門

3、創(chuàng)建數(shù)據(jù)庫和表,針對MySQL數(shù)據(jù)庫

  SQL腳本如下:

?
1
2
3
4
5
create database mybatis;
 use mybatis;
 CREATE TABLE users(id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(), age INT);
 INSERT INTO users(NAME, age) VALUES('孤傲蒼狼', );
 INSERT INTO users(NAME, age) VALUES('白虎神皇', );

  將SQL腳本在MySQL數(shù)據(jù)庫中執(zhí)行,完成創(chuàng)建數(shù)據(jù)庫和表的操作,如下:

  MyBatis入門學習教程(一)-MyBatis快速入門

  到此,前期的開發(fā)環(huán)境準備工作全部完成。

2.2、使用MyBatis查詢表中的數(shù)據(jù)

  1、添加Mybatis的配置文件conf.xml

  在src目錄下創(chuàng)建一個conf.xml文件,如下圖所示:

  MyBatis入門學習教程(一)-MyBatis快速入門

  conf.xml文件中的內(nèi)容如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?xml version="." encoding="UTF-"?>
 <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config .//EN" "http://mybatis.org/dtd/mybatis--config.dtd">
 <configuration>
   <environments default="development">
     <environment id="development">
       <transactionManager type="JDBC" />
       <!-- 配置數(shù)據(jù)庫連接信息 -->
       <dataSource type="POOLED">
         <property name="driver" value="com.mysql.jdbc.Driver" />
         <property name="url" value="jdbc:mysql://localhost:/mybatis" />
         <property name="username" value="root" />
         <property name="password" value="XDP" />
       </dataSource>
     </environment>
   </environments>
   
 </configuration>

  2、定義表所對應的實體類,如下圖所示:

  MyBatis入門學習教程(一)-MyBatis快速入門

  User類的代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package me.gacl.domain;
 
 /**
  * @author gacl
  * users表所對應的實體類
  */
 public class User {
 
   //實體類的屬性和表的字段名稱一一對應
   private int id;
   private String name;
   private int age;
 
   public int getId() {
     return id;
   }
 
   public void setId(int id) {
     this.id = id;
   }
 
   public String getName() {
     return name;
   }
 
   public void setName(String name) {
     this.name = name;
   }
 
   public int getAge() {
     return age;
   }
 
   public void setAge(int age) {
     this.age = age;
   }
 
   @Override
   public String toString() {
     return "User [id=" + id + ", name=" + name + ", age=" + age + "]";
   }
 }

  3、定義操作users表的sql映射文件userMapper.xml

  創(chuàng)建一個me.gacl.mapping包,專門用于存放sql映射文件,在包中創(chuàng)建一個userMapper.xml文件,如下圖所示:

  MyBatis入門學習教程(一)-MyBatis快速入門

  userMapper.xml文件的內(nèi)容如下:

 <?xml version="." encoding="UTF-" ?>
  <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper .//EN" "http://mybatis.org/dtd/mybatis--mapper.dtd">

<!-- 為這個mapper指定一個唯一的namespace,namespace的值習慣上設置成包名+sql映射文件名,這樣就能夠保證namespace的值是唯一的

  例如namespace="me.gacl.mapping.userMapper"就是me.gacl.mapping(包名)+userMapper(userMapper.xml文件去除后綴)

-->
  <mapper namespace="me.gacl.mapping.userMapper">
      <!-- 在select標簽中編寫查詢的SQL語句, 設置select標簽的id屬性為getUser,id屬性值必須是唯一的,不能夠重復
      使用parameterType屬性指明查詢時使用的參數(shù)類型,resultType屬性指明查詢返回的結(jié)果集類型
      resultType="me.gacl.domain.User"就表示將查詢結(jié)果封裝成一個User類的對象返回
     User類就是users表所對應的實體類
     -->

     <!--
         根據(jù)id查詢得到一個user對象
      -->

?
1
2
3
4
5
<select id="getUser" parameterType="int"
    resultType="me.gacl.domain.User">
    select * from users where id=#{id}
  </select>
</mapper>

  4、在conf.xml文件中注冊userMapper.xml文件

 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?xml version="." encoding="UTF-"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config .//EN" "http://mybatis.org/dtd/mybatis--config.dtd">
<configuration>
  <environments default="development">
    <environment id="development">
      <transactionManager type="JDBC" />
      <!-- 配置數(shù)據(jù)庫連接信息 -->
      <dataSource type="POOLED">
        <property name="driver" value="com.mysql.jdbc.Driver" />
        <property name="url" value="jdbc:mysql://localhost:/mybatis" />
        <property name="username" value="root" />
        <property name="password" value="XDP" />
      </dataSource>
    </environment>
  </environments>
  
  <mappers>
    <!-- 注冊userMapper.xml文件,
    userMapper.xml位于me.gacl.mapping這個包下,所以resource寫成me/gacl/mapping/userMapper.xml-->
    <mapper resource="me/gacl/mapping/userMapper.xml"/>
  </mappers>
  
</configuration>

  5、編寫測試代碼:執(zhí)行定義的select語句

  創(chuàng)建一個Test1類,編寫如下的測試代碼:

 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package me.gacl.test;
import java.io.IOException;
import java.io.InputStream;
import java.io.Reader;
import me.gacl.domain.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;
public class Test {
  public static void main(String[] args) throws IOException {
    //mybatis的配置文件
    String resource = "conf.xml";
    //使用類加載器加載mybatis的配置文件(它也加載關(guān)聯(lián)的映射文件)
    InputStream is = Test.class.getClassLoader().getResourceAsStream(resource);
    //構(gòu)建sqlSession的工廠
    SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(is);
    //使用MyBatis提供的Resources類加載mybatis的配置文件(它也加載關(guān)聯(lián)的映射文件)
    //Reader reader = Resources.getResourceAsReader(resource);
    //構(gòu)建sqlSession的工廠
    //SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
    //創(chuàng)建能執(zhí)行映射文件中sql的sqlSession
    SqlSession session = sessionFactory.openSession();
    /**
     * 映射sql的標識字符串,
     * me.gacl.mapping.userMapper是userMapper.xml文件中mapper標簽的namespace屬性的值,
     * getUser是select標簽的id屬性值,通過select標簽的id屬性值就可以找到要執(zhí)行的SQL
     */
    String statement = "me.gacl.mapping.userMapper.getUser";//映射sql的標識字符串
    //執(zhí)行查詢返回一個唯一user對象的sql
    User user = session.selectOne(statement, );
    System.out.println(user);
  }
}

  執(zhí)行結(jié)果如下:

  MyBatis入門學習教程(一)-MyBatis快速入門

有上圖可以看出,數(shù)據(jù)庫中記錄已經(jīng)成功查詢出來。

以上就是本文針對MyBatis入門學習教程(一)-MyBatis快速入門的全部內(nèi)容,希望對大家有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 精品国产91亚洲一区二区三区www | 午夜电影网址 | 一级视频免费观看 | 欧美国产精品一区二区三区 | 成人免费黄色 | 欧美日韩福利 | 午夜免费视频 | 三级在线观看 | 成人精品一区二区三区 | 成人黄色电影小说 | 中文字幕国产视频 | 国产视频一区在线 | 99精品久久久 | 人人爱人人射 | 女人久久久 | 亚洲第一成人久久网站 | 国产精品美女久久久久久久网站 | 成人网址在线观看 | 成人在线网站 | 日本欧美国产 | 精品伊人 | 亚洲视频免费观看 | 91精品国产乱码久久久久久 | 欧美日韩亚洲视频 | 一级片在线播放 | 蜜桃传媒一区二区 | 中文字幕免费在线观看视频 | 久草 在线| 曰韩在线 | 免费精品视频 | 色综合天天综合网国产成人网 | 三级黄色视频毛片 | 久久久九九 | 91视频免费网站 | 欧美极品视频 | 国产精品视频一二三 | 一区二区三区国产视频 | 中文日韩在线 | 婷婷久久综合 | 超碰一区二区 | 在线看国产 |