`
zy3381
  • 浏览: 155653 次
  • 性别: Icon_minigender_1
  • 来自: 昆明
社区版块
存档分类
最新评论

MyBatis入门实例简介

阅读更多
MyBatis是一个开源的ORM框架,本文以MyEclipse和MySQL数据库为开发环境来介绍一个简单的入门实例。

需要准备的jar文件有:mybatis-3.1.1.jarmysql-connector-java-5.1.2-beta-bin.jar


第一步:创建一个简单的测试用的数据库和添加测试数据,本例中所使用到的数据库创建语句如下:
CREATE TABLE user
(
  id int(11) NOT NULL AUTO_INCREMENT,
  name varchar(20) NOT NULL,
  password varchar(20) NOT NULL,
  PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


添加测试数据:
INSERT INTO user VALUES ('1', 'admin', 'admin');


第二步:在MyEclIpse中创建一个Java Project,添加上面两个jar文件到Project的Build Path。

第三步:在src下创建一个包model,并在model下创建一个类User,内容如下:
package model;

public class User {
	private int id;
	private String name;
	private String password;
	public User(){
		
	}
	public User(int id,String name){
		this.id=id;
		this.name=name;
	}
	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 String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	public String toString(){
		 return "User [id = "+ id +" , name = "+ name +"]" ;
	}
}


第四步:在Project的src目录下创建两个文件Configuration.xml和SqlMap.xml,文件内容:
Configuration.xml:(数据库名和用户名以及密码请根据你的实际环境作相应的修改)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC
    "-//mybatis.org//DTD Config 3.0//EN"
    "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
	<environments default="development"> 
		<environment id="development"> 
			<transactionManager type="JDBC"/> 
			<dataSource type="POOLED"> 
				<property name="driver" value="com.mysql.jdbc.Driver"/> 
				<property name="url" value="jdbc:mysql://localhost:3306/test"/> 
				<property name="username" value="root"/> 
				<property name="password" value="123456"/> 
			</dataSource> 
		</environment> 
	</environments>
	<mappers>
		<mapper resource="SqlMap.xml"/>
	</mappers>
</configuration>


SqlMap.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//
EN" "http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd">
<mapper namespace="org.mapper">
    <select id="selectUser" parameterType="int" resultType="model.User">
       select * from user where id = #{id}
    </select>
	<insert id="insertUser" parameterType="model.User">
		insert into user (id,name,password) values (#{id},#{name},#{password})
	</insert>
	<update id="updateUser" parameterType="model.User">
		update user set name=#{name},password=#{password} where id=#{id}
	</update>
	<delete id="deleteUser" parameterType="int">
		delete from user where id=#{id}
	</delete>
</mapper>


第五步:创建一个test包,并在test包下创建一个类MyBatisTest,内容如下:
package test;

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

import model.User;

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 MyBatisTest {
	public static void main(String[] args) throws IOException {
		String resource="Configuration.xml";
		Reader reader=Resources.getResourceAsReader(resource);
		SqlSessionFactory ssf=new SqlSessionFactoryBuilder().build(reader);
		SqlSession session=ssf.openSession();
		try {
			User u=(User) session.selectOne("selectUser", "1");
			System.out.println(u);
			//插入(下面使用/**/注释的部分)
			/*
			u.setId(2);
			session.insert("org.mapper.insertUser",u);
			session.commit();
			*/
			//更新(下面使用/**/注释的部分)
			/*
			u.setPassword("654321");
			session.update("org.mapper.updateUser",u);
			session.commit();
			*/
			//删除(下面使用/**/注释的部分)
			/*
			session.delete("org.mapper.deleteUser", 2);
			session.commit();
			*/
		} catch (Exception e) {
			e.printStackTrace();
		}finally{
			session.close();
		}	
	}
}


以上的例子将增改删注释起来了,读者可以自行修改注释部分来调试增改删功能。
至此,我们已经可以使用MyBatis对数据库进行增删改查了。
附上Project的文件结构:










  • 大小: 24.7 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics