MyBatis学习1之MyBatis快速入门

阅读更多

 

一、MyBatis介绍(http://www.mybatis.org/mybatis-3/zh/index.html

       MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。

二、MyBatis快速入门

  1、开发环境搭建

  1.1创建maven工程(注:笔者这里创建的是java工程,数据库使用sqlite)
  MyBatis学习1之MyBatis快速入门_第1张图片
  1.2在pom.xml文件中添加sqlite数据库驱动包与mybatis包


    org.xerial
    sqlite-jdbc
    3.8.11.2

            org.mybatis
            mybatis
            3.3.0
       

 MyBatis学习1之MyBatis快速入门_第2张图片
 1.3创建表t_group、t_person(此处创建表的过程忽略,sqlite创建表和mysql中创建表操作相似)
 MyBatis学习1之MyBatis快速入门_第3张图片
  2、使用mybatis框架编写一个简单的查询

    2.1编写与t_group表对应的实体类

 public class Group {
	private int id;
	private String groupName;
	private String description;
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getGroupName() {
		return groupName;
	}
	public void setGroupName(String groupName) {
		this.groupName = groupName;
	}
	public String getDescription() {
		return description;
	}
	public void setDescription(String description) {
		this.description = description;
	}
}

 

   2.2添加MyBatis的配置文件mybatis.xml

 




	
	    
		
			  
                
			    
			    
			    
             
		
	

 

   2.3编写与t_group表对应sql映射文件GroupMapper.xml

 




	

 

   2.4mybatis.xml文件中注册GroupMapper.xml文件

 在mybatis.xml文件中添加以下内容

 

	
	     
	

 

 

   2.5编写测试类

每个基于 MyBatis 的应用都是以一个 SqlSessionFactory 的实例为中心的。SqlSessionFactory 的实例可以通过 SqlSessionFactoryBuilder 获得。而 SqlSessionFactoryBuilder 则可以从 XML 配置文件或一个预先定制的 Configuration 的实例构建出 SqlSessionFactory 的实例。
从 XML 文件中构建 SqlSessionFactory 的实例非常简单,建议使用类路径下的资源文件进行配置。但是也可以使用任意的输入流(InputStream)实例,包括字符串形式的文件路径或者 file:// 的 URL 形式的文件路径来配置。MyBatis 包含一个名叫 Resources 的工具类,它包含一些实用方法,可使从 classpath 或其他位置加载资源文件更加容易。
public class TestMyBatis {
	private static SqlSessionFactory sqlSessionFactory;
	private static Reader reader;
	static {
		try {
			reader = Resources.getResourceAsReader("mybatis.xml");//加载mybatis的配置文件
			sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);//构建sqlSession的工厂
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	public static void main(String[] args) {
		
		SqlSession session = sqlSessionFactory.openSession();///创建能执行映射文件中sql的sqlSession
		String statement = "com.zlt.mybatis.model.Group.selectGroupByID";////映射sql的标识字符串
		Group group = session.selectOne(statement, 1);////执行查询返回一个唯一group对象的sql
		if(null != group) {
			System.out.println("id:" +group.getId()+"name:" +group.getGroupName()+"description:" + group.getDescription());
		}
	}
}

   2.6运行结果(注:结果虽然出来了,但是group_name属性查出来是空的,而表中的记录是有值的,下一节分析)

 
MyBatis学习1之MyBatis快速入门_第4张图片
MyBatis学习1之MyBatis快速入门_第5张图片
 
   2.7最后整个项目结构如下:
MyBatis学习1之MyBatis快速入门_第6张图片
 

 

 

 

  • MyBatis学习1之MyBatis快速入门_第7张图片
  • 大小: 10.7 KB
  • MyBatis学习1之MyBatis快速入门_第8张图片
  • 大小: 11.3 KB
  • MyBatis学习1之MyBatis快速入门_第9张图片
  • 大小: 36.3 KB
  • MyBatis学习1之MyBatis快速入门_第10张图片
  • 大小: 8.9 KB
  • MyBatis学习1之MyBatis快速入门_第11张图片
  • 大小: 35 KB
  • MyBatis学习1之MyBatis快速入门_第12张图片
  • 大小: 30.7 KB
  • 查看图片附件

你可能感兴趣的:(ORM,mybatis)