Mybatis学习笔记-入门_第1张图片

User.java实体类

public class User {
	private int id;
	private String username;
	private int age;
	//...
}//数据库表对应实体类

userMapper.xml




	
	 
	 	select * from users where id=#{id}
	 

conf.xml





	
		
			
			
				
				
				
				
			
		
	
	
	
		
	


测试方法

import java.io.IOException;
import java.io.Reader;

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 {
		String resource = "conf.xml";
		//加载Mybatis的配置文件(它也加载关联的映射文件)
		Reader reader = Resources.getResourceAsReader(resource);
		//构建SqlSession的工厂
		SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
		//创建能执行映射文件中SQL语句的SqlSession 
		SqlSession session = sessionFactory.openSession();
		//映射SQL的标识字符串
		String s = "com.mybatis.beans.userMapper" + ".getUser";
		//执行查询返回一个唯一的User对象
		User user = session.selectOne(s, 3);
		//关闭session
		session.close();
		System.out.println(user);
	}
}

或者使用下面的方法测试

	public  static void test() {
		String resource = "conf.xml";
		InputStream inputStream = Test.class.getClassLoader().getResourceAsStream(resource);
		SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(inputStream);
		SqlSession session = factory.openSession();
		String s = "com.mybatis.beans.userMapper" + ".getUser";
		User user = session.selectOne(s, 3);
		session.close();
		System.out.println(user);
	}

可以写一个工具类来获取SqlSessionFactory

import java.io.InputStream;

import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import com.mybatis.beans.Test;

public class MybatisUtil {
	public static SqlSessionFactory getFactory() {
		String resource = "conf.xml";
		InputStream inputStream = Test.class.getClassLoader().getResourceAsStream(resource);
		SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(inputStream);
		return factory;
	}
}

可以将连接数据库的配置写到db.properties中

db.properties

jdbc.username=root
jdbc.password=123456
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.jdbcUrl=jdbc:mysql://localhost:3306/mybatis

conf.xml





	
	
	
		
			
			
				
				
				
				
			
		
	
	
	
		
	


添加log4j

①添加log4j-1.2.17.jar到类路径下

②添加log4j.xml到src下




	
		
			
		
	
	
		
	
	
		
	
	
		
		
	


当实体类的字段名和数据库表的字段名不一致时,用如下的两种方式来配置




	
	
		SELECT order_id id, order_no orderNo, order_price price FROM orders WHERE order_id=#{id}
	
	
	
		SELECT * FROM orders WHERE order_id=#{id}
	
	
	
	
		
		
		
		
	




http://yunpan.cn/cgwRwJYafX3sv  提取码 fad7