mybatis与hibernate都是持久层框架,其实mybatis在早起的版本名叫ibatis,目前和hibernate用的最多的持久层框架 什么是mybatis? mybatis 是支持普通 sql 查询,存储过程和高级映射的优秀持久层框架。mybatis 消除 了几乎所有的 jdbc 代码和参数的手工设置以
        					mybatis与hibernate都是持久层框架,其实mybatis在早起的版本名叫ibatis,目前和hibernate用的最多的持久层框架
什么是mybatis?
mybatis 是支持普通 sql 查询,存储过程和高级映射的优秀持久层框架。mybatis 消除 了几乎所有的 jdbc 代码和参数的手工设置以及结果集的检索。mybatis 使用简单的 xml 或注解用于配置和原始映射,将接口和 java 的 pojos(plain old java objects,普通的 java 对象)映射成数据库中的记录。
其他的就不用多说了,直接进入正题用代码说话比较实在
要使用mybatis这个持久层框架,必须要到网上去下载框架包http://code.google.com/p/mybatis/downloads/detail?name=mybatis-3.2.3.zip
1、在myeclipse中创建一个java工程,工程名随便,自己喜欢就行
2、将mybatis的jar包和数据库的驱动包导入工程
3、创建mybatis-config.xml配置文件,配置文件的说明在下载的文件里面有英文版的,在官网上面也有中文版http://mybatis.github.io/mybatis-3/zh/index.html,可以到官网的帮助文档中将mybatis-config.xml的头不复制到文件中nbsp;public -//mybatis.org//dtd config 3.0//en http://mybatis.org/dtd/mybatis-3-config.dtd>
这样就有了提示功能,当然不要也行,只要你能记住,都无所谓的
4、创建实体类,我这里用的users类,实体类对应数据库中的字段名
5、创建与类名相对应的xml,如users.xml,这个文件虽然是自己键的,但也需要到文档中将头复制过来-//mybatis.org//dtd mapper 3.0//en
  http://mybatis.org/dtd/mybatis-3-mapper.dtd>,sql语句就写在该文件中
6、编写代码获取配置文件资源
具体操作如下:
创建mybatis-config.xml文件
属性文件jdbc.properties
driver=com.microsoft.sqlserver.jdbc.sqlserverdriverurl=jdbc:sqlserver://127.0.0.1:1434;database=usersusername=sapassword=xiao(lao&hu
创建users.java类
package com.tenghu.object;import java.io.serializable;/** * 用户实体类 * @author xiaolaohu * */public class users implements serializable{	//id	private int id;	//用户名	private string username;	//密码	private string password;	//真实姓名	private string truename;	//邮件	private string email;	//电话号码	private string phone;	//性别	private string sex;	//用户组	private int group_id;	public int getid() {		return id;	}	public void setid(int id) {		this.id = id;	}	public string getusername() {		return username;	}	public void setusername(string username) {		this.username = username;	}	public string getpassword() {		return password;	}	public void setpassword(string password) {		this.password = password;	}	public string gettruename() {		return truename;	}	public void settruename(string truename) {		this.truename = truename;	}	public string getemail() {		return email;	}	public void setemail(string email) {		this.email = email;	}	public string getphone() {		return phone;	}	public void setphone(string phone) {		this.phone = phone;	}	public string getsex() {		return sex;	}	public void setsex(string sex) {		this.sex = sex;	}	public int getgroup_id() {		return group;	}	public void setgroup(int group_id) {		this.group_id= group_id;	}	public users() {	}}
创建users.xml文件
  		select * from tb_users  	  		select * from tb_users where id=#{id}  	  		insert into tb_users values(#{username},#{password},#{truename},#{email},#{phone},#{sex},#{group_id})  	  		update tb_users set password=#{password},phone=#{phone} where id=#{id}  	  		delete  tb_users where id=#{id}  	
创建mybatisutil.java工具类
package com.tenghu.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 mybatisutil {	//创建sqlsessionfactory对象	private static sqlsessionfactory factory;	static{		try {			//获取配置文件资源			inputstream inputstream=resources.getresourceasstream(mybatis-config.xml);			//获取sqlsessionfactory对象			factory=new sqlsessionfactorybuilder().build(inputstream);		} catch (ioexception e) {			e.printstacktrace();		}	}		/**	 * 获取sqlsession对象	 */	public static sqlsession getsqlsession(){		return factory.opensession();	}		/**	 * 关闭sqlsession对象	 */	public static void closesqlsession(sqlsession session){		if(null!=session){			//关闭sqlsession对象			session.close();		}		session=null;	}}
编写测试类test.java
测试获取所有数据:
public static void main(string[] args) {		// 获取sqlsession对象		sqlsession session = mybatisutil.getsqlsession();		// 查询全部对象		list list = session.selectlist(com.tenghu.object.users.queryusers);		system.out.println(list.size());		//关闭sqlsession对象		mybatisutil.closesqlsession(session);	}
测试根据id获取数据
public static void main(string[] args) {		// 获取sqlsession对象		sqlsession session = mybatisutil.getsqlsession();		// 查询单个对象		users user=session.selectone(com.tenghu.object.users.queryusersid, 4);		system.out.println(user.getid()+\t+user.getusername());		//关闭sqlsession对象		mybatisutil.closesqlsession(session);	}
添加用户:
public static void main(string[] args) {		// 获取sqlsession对象		sqlsession session = mybatisutil.getsqlsession();		users user = new users();		user.setusername(xinxin);		user.setpassword(mimimi);		user.settruename(信息);		user.setemail(sdfsds@e.com);		user.setphone(12093234322342);		user.setsex(男); 		user.setgroup_id(1);		session.insert(com.tenghu.object.users.insertusers, user);		//提交		session.commit();		// 关闭sqlsession对象		mybatisutil.closesqlsession(session);	}
修改用户:
public static void main(string[] args) {		// 获取sqlsession对象		sqlsession session = mybatisutil.getsqlsession();		users user = new users();		user.setid(11);		user.setpassword(hahahaha);		user.setphone(3243223242);		session.update(com.tenghu.object.users.updateusers, user);		//提交		session.commit();		// 关闭sqlsession对象		mybatisutil.closesqlsession(session);	}
删除用户:
public static void main(string[] args) {		// 获取sqlsession对象		sqlsession session = mybatisutil.getsqlsession();		users user = new users();		user.setid(11);		session.delete(com.tenghu.object.users.deleteusers, user);		//提交		session.commit();		// 关闭sqlsession对象		mybatisutil.closesqlsession(session);	}
这样就完成的使用mybatis对数据库的简单的增删改查操作
   
 
   