[MyBatis]idea+maven最简单入门示例

准备:驱动和jar包,我用idea所以maven工程添加依赖,mysql里根据实体类来建表,最好存点数据

注意:驱动版本别太新也别太旧,容易出bug……

pom.xml



    4.0.0

    com.yiki.mybatis
    test_mybatis
    1.0-SNAPSHOT


    
    
        org.mybatis
        mybatis
        3.4.6
    
    
    
        mysql
        mysql-connector-java
        5.1.27
    




目录结构

[MyBatis]idea+maven最简单入门示例_第1张图片

新建需要映射的实体类

package com.yiki.Entity;

public class Person {

 private Integer pId;
 private String pName;//当和表里的列名不一致的时候,查询语句应该起别名
 //p_Name(原表里的列名) pname别名
 private String email;

 public Integer getpId() {
  return pId;
 }

 public void setpId(Integer pId) {
  this.pId = pId;
 }

 public String getpName() {
  return pName;
 }

 public void setpName(String pName) {
  this.pName = pName;
 }

 public String getEmail() {
  return email;
 }

 public void setEmail(String email) {
  this.email = email;
 }

 @Override
 public String toString() {
  return "Person{" +
   "pId=" + pId +
   ", pName='" + pName + '\'' +
   ", email='" + email + '\'' +
   '}';
 }
}

在resources下新建mybatis.xml配置文件

环境配置是对数据库的连接,mapper写映射的配置文件(必须添加)




    
        
            
            
                
                
                
                
            
        
    

    
        
    

依然是在resources下新建PersonMapper.xml,其作用是对Person写sql语句






    

新建测试类

select语句里最好写名称空间+id

package com.yiki.Test;

import com.yiki.Entity.Person;
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 java.io.IOException;
import java.io.InputStream;

public class Tests{
 public static void main(String[] args) throws IOException {

  String resource = "mybatis.xml";//根据全局配置文件
  InputStream inputStream = Resources.getResourceAsStream(resource);
  SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

  SqlSession sqlSession = sqlSessionFactory.openSession();

  //第一个参数:写唯一标识,最好是namespace+id
  //第二个参数:写sql要传入的参数
  Person person = sqlSession.selectOne("com.yiki.Entity.PersonMapper.selectPerson",1);

  System.out.println(person);

  sqlSession.close();
 }
}

你可能感兴趣的:(MyBatis)