mybatis极简教程

    mybatis是一个非常简单易学的orm框架,现在使用它也有一段时间了,在这里用mybatis3.4.2为例记录一下它的简单用法,在这里仅仅使用mybatis并不整合spring。

首先创建一个数据库,命名为demo,然后在数据库中创建一张表命名为staff,如图 id设为主键并且自增

mybatis极简教程_第1张图片

目录结构如下

mybatis极简教程_第2张图片

要注意的是,不要忘记将resources文件夹加入buildpath路径,并且将依赖的mybatis和jdbc的jar包导入Librariesmybatis极简教程_第3张图片

然后根据本地的环境配置jdbc.properties,我这里是这样配置的

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/demo?userUnicode=true&characterEncoding=UTF8&useSSL=false
username=root
password=123456

接下来配置mybatis-config.xml




	
	
	
		
	
	
	
		
			
			
				
				
				
				
			
		
	
	
		
	
	

创建Staff类

package staff.domain;


public class Staff {
	private int id;
	private String name;
	private int salary;


	public Staff() {


	}


	public Staff(String name, int salary) {
		super();
		this.name = name;
		this.salary = salary;
	}


	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 getSalary() {
		return salary;
	}


	public void setSalary(int salary) {
		this.salary = salary;
	}


	public String toString() {
		return "id: " + id + "name: " + name + "salary: " + salary;
	}
}


编写接口

package staff.mapper;

import staff.domain.Staff;

public interface StaffMapper {
	public int createStaff(Staff staff);

	public Staff queryStaff(int id);
}


然后是与之对应的StaffMapper.xml




	
		
		
		
	
	
	
		insert into staff(name,salary) values(#{name},#{salary});
	
	
	
	
	


编写DataBaseUtil工具类

package staff.util;

import java.io.IOException;
import java.io.InputStream;

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 DataBaseUtil {
	private static SqlSessionFactory sqlsessionfactory;
	private static InputStream is;
	static {
		try {
			is = Resources.getResourceAsStream("mybatis-config.xml");
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		sqlsessionfactory = new SqlSessionFactoryBuilder().build(is);
	}

	public static SqlSession getSession(boolean flag) {
		return sqlsessionfactory.openSession(flag);
	}

}

进行测试

package staff.test;

import org.apache.ibatis.session.SqlSession;

import staff.domain.Staff;
import staff.mapper.StaffMapper;
import staff.util.DataBaseUtil;

public class Test {
	public static void main(String[] args) {
		Staff staff = new Staff("张三", 10000);
		SqlSession sqlsession = DataBaseUtil.getSession(true);
		StaffMapper sm = sqlsession.getMapper(StaffMapper.class);
		sm.createStaff(staff);
	}
}

结果如图


查询测试

package staff.test;

import org.apache.ibatis.session.SqlSession;

import staff.domain.Staff;
import staff.mapper.StaffMapper;
import staff.util.DataBaseUtil;

public class Test {
	public static void main(String[] args) {

		SqlSession sqlsession = DataBaseUtil.getSession(true);
		StaffMapper sm = sqlsession.getMapper(StaffMapper.class);

		Staff s = sm.queryStaff(1);
		System.out.println(s);
	}
}


最后来看一下编写完成后的目录结构

mybatis极简教程_第4张图片



你可能感兴趣的:(java)