国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

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

2019-11-26 15:00:48
字體:
來源:轉載
供稿:網友

      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查詢,存儲過程和高級映射的優秀持久層框架。MyBatis消除了幾乎所有的JDBC代碼和參數的手工設置以及對結果集的檢索封裝。MyBatis可以使用簡單的XML或注解用于配置和原始映射,將接口和Java的POJO(Plain Old Java Objects,普通的Java對象)映射成數據庫中的記錄。

二、mybatis快速入門

2.1、準備開發環境

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

  

2、添加相應的jar包

  【mybatis】

         mybatis-3.1.1.jar

  【MYSQL驅動包】
    mysql-connector-java-5.1.7-bin.jar

   

3、創建數據庫和表,針對MySQL數據庫

  SQL腳本如下:

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數據庫中執行,完成創建數據庫和表的操作,如下:

  

  到此,前期的開發環境準備工作全部完成。

2.2、使用MyBatis查詢表中的數據

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

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

  

  conf.xml文件中的內容如下:

<?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" />       <!-- 配置數據庫連接信息 -->       <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、定義表所對應的實體類,如下圖所示:

  

  User類的代碼如下:

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

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

  

  userMapper.xml文件的內容如下:

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

<!-- 為這個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屬性指明查詢時使用的參數類型,resultType屬性指明查詢返回的結果集類型
      resultType="me.gacl.domain.User"就表示將查詢結果封裝成一個User類的對象返回
     User類就是users表所對應的實體類
     -->

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

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

 

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

  創建一個Test1類,編寫如下的測試代碼:

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的配置文件(它也加載關聯的映射文件)    InputStream is = Test.class.getClassLoader().getResourceAsStream(resource);    //構建sqlSession的工廠    SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(is);    //使用MyBatis提供的Resources類加載mybatis的配置文件(它也加載關聯的映射文件)    //Reader reader = Resources.getResourceAsReader(resource);     //構建sqlSession的工廠    //SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);    //創建能執行映射文件中sql的sqlSession    SqlSession session = sessionFactory.openSession();    /**     * 映射sql的標識字符串,     * me.gacl.mapping.userMapper是userMapper.xml文件中mapper標簽的namespace屬性的值,     * getUser是select標簽的id屬性值,通過select標簽的id屬性值就可以找到要執行的SQL     */    String statement = "me.gacl.mapping.userMapper.getUser";//映射sql的標識字符串    //執行查詢返回一個唯一user對象的sql    User user = session.selectOne(statement, );    System.out.println(user);  }}

  執行結果如下:

  

有上圖可以看出,數據庫中記錄已經成功查詢出來。

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 唐山市| 应城市| 化隆| 错那县| 合山市| 凤阳县| 格尔木市| 扶沟县| 浪卡子县| 临桂县| 曲阜市| 闽清县| 清镇市| 河津市| 盖州市| 西宁市| 青浦区| 宝清县| 万州区| 宁阳县| 哈尔滨市| 若羌县| 富平县| 三江| 清苑县| 青田县| 垦利县| 鸡泽县| 宜宾县| 永安市| 石泉县| 观塘区| 大姚县| 科技| 奉化市| 儋州市| 大同县| 个旧市| 乌拉特前旗| 钟山县| 北碚区|