1.创建一个工程 utf-8

2、导入jar

mybatis-3.2.2.jar 核心包

依赖包:

asm-3.3.1.jar

cglib-2.2.2.jar

commons-logging-1.1.1.jar

javassist-3.17.1-GA.jar

log4j-1.2.17.jar

slf4j-api-1.7.5.jar

slf4j-log4j12-1.7.5.jar

3、配置核心文件 sqlMapConfig.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/mybatisdb?characterEncoding=utf-8"/>
				<property name="username" value="root"/>
				<property name="password" value="root"/>
			</dataSource>
		</environment>
		<!-- 连接数据库的部署环境 -->
		<environment id="product">
			<transactionManager type="JDBC"/>
			<dataSource type="POOLED">
				<property name="driver" value="com.mysql.jdbc.Driver"/>
				<property name="url" value="jdbc:mysql://localhost:3306/mybatisdbproduct?characterEncoding=utf-8"/>
				<property name="username" value="root"/>
				<property name="password" value="root"/>
			</dataSource>		
		</environment>
	</environments>
	
	<mappers>
		<mapper resource="com/mapping/UserMapper.xml"/>
	</mappers>
</configuration>

 

4、创建数据库,创建表USER

create table USER_C
(
   ID                   varchar(40) not null,
   NAME            varchar(30),
   AGE                int,
   ADDRESS       varchar(200),
   primary key (ID)
);

--加入测试数据

insert  into `user_c`(`id`,`name`,`age`,`address`) 
values ('1','夏言',73,'桂州村'),
('2','严嵩',87,'分宜县城介桥村'),
('3','徐阶',80,'明松江府华亭县'),
('4','高拱',66,'河南省新郑市高老庄村'),
('5','张居正',58,'江陵');

 
5、映射文件 UserMapper.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.domain.User">
	<sql id="createcols">
		#{id},#{name},#{age},#{address}
	</sql>
	<!-- 查询所有记录 -->
	<select id="listAll" resultType="com.domain.User">
		select * from user_c
	</select>
	<!-- 查询一条 -->
	<select id="get" parameterType="string" resultType="com.domain.User">
		SELECT id,name,age,address FROM user_c WHERE id=#{id}
	</select>
	<!-- 新增记录 -->
	<insert id="create" parameterType="com.domain.User">
		insert into user_c 
		 (id,name,age,address) 
		 values( <include refid="createcols"/> )
	</insert>
	
	<!-- 删除记录 -->
	<delete id="delete" parameterType="string">
		delete from user_c where id=#{id}
	</delete>
</mapper>

 6.PO对象

package com.domain;

public class User {
	private String id;
	private String name;
	private Integer age;
	private String address;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Integer getAge() {
		return age;
	}
	public void setAge(Integer age) {
		this.age = age;
	}
	public String getAddress() {
		return address;
	}
	public void setAddress(String address) {
		this.address = address;
	}
	public String toString(){
		return "id =" + id + 
				";name" + name + 
				";address=" + address + 
				";age=" + age;
	}
	
	
}

 7.写测试类

package com.test;

import java.io.IOException;
import java.io.InputStream;
import java.util.List;
import java.util.UUID;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Before;
import org.junit.Test;

import com.domain.User;

public class TestUser {
	SqlSessionFactory sqlSessionFactory;
	
	@Before
	public void initFactory() throws IOException{
		String configPath = "sqlMapConfig.xml";
		InputStream in = Resources.getResourceAsStream(configPath);
		sqlSessionFactory = new SqlSessionFactoryBuilder().build(in);
	}
	@Test
	public void testListAll(){
		SqlSession sqlSession = sqlSessionFactory.openSession();
		List<User> list = sqlSession.selectList("com.domain.User.listAll");
		System.out.println(list.size());
	}
	@Test
	public void testGetUser(){
		SqlSession sqlSession = sqlSessionFactory.openSession();
		User user = sqlSession.selectOne("com.domain.User.get","3");
		System.out.println(user.toString());
	}
	
	@Test //新增记录
	public void testCreate(){
		SqlSession session = sqlSessionFactory.openSession();		//获得SqlSession
		User u  = new User();
		u.setId(UUID.randomUUID().toString());		//产生UUID主键
		u.setName("jack");
		u.setAge(22);
		u.setAddress("beijing");
		
		int i = session.insert("com.domain.User.create", u);
		session.commit();
		System.out.println("影响条数:"+i);
		
	}
	@Test //新增记录
	public void testDelete(){
		SqlSession session = sqlSessionFactory.openSession();		//获得SqlSession
		int i = session.delete("com.domain.User.delete", "");
		session.commit();
		System.out.println("影响条数:"+i);
		
	}

}

 

posted on 2015-03-15 21:06  张释文  阅读(530)  评论(0编辑  收藏  举报