package com.hehe.mybatis.test;
import java.io.InputStream;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
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.hehe.mybatis.domain.User;
public class UserTest {
SqlSessionFactory sqlSessionFactory = null;
@Test @Before
public void testInitMyBatis() throws Exception {
// 装载总配置文件
String resource = "sqlMapConfig.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
System.out.println(sqlSessionFactory);
}
/*
<select id="selectUserById" parameterType="string" resultType="com.hehe.mybatis.domain.User">
select * from user where id = #{id}
</select>
*/ @Test public void testSelectUserById() throws Exception {
SqlSession session = sqlSessionFactory.openSession();
// namespace + SQL-id 唯一标识一条SQL
// namespace : com.hehe.mybatis.domain.User
// SQL-id : selectUserById
User user = session.selectOne("com.hehe.mybatis.domain.User.selectUserById", "0001");
System.out.println(user);
session.close();
}
/*
<select id="selectAllUsers" resultType="com.hehe.mybatis.domain.User">
select * from user
</select>
*/ @Test public void testSelectAllUsers() throws Exception {
SqlSession session = sqlSessionFactory.openSession();
List<User> users = session.selectList("com.hehe.mybatis.domain.User.selectAllUsers");
for (User user : users) {
System.out.println(user);
}
session.close();
}
/*
<select id="selectUserByIdForMap" parameterType="string" resultType="java.util.HashMap">
select * from user where id = #{id}
</select>
*/ @Test public void testSelectUserByIdForMap() throws Exception {
SqlSession session = sqlSessionFactory.openSession();
Map<String, Object> usermap= session.selectMap("com.hehe.mybatis.domain.User.selectUserByIdForMap", "0001", "id");
System.out.println(usermap.get("0001"));
session.close();
}
/*
<!-- dynamic SQL -->
<select id="selectUserByCondition" parameterType="com.hehe.mybatis.domain.User" resultType="com.hehe.mybatis.domain.User">
select * from user
where 1 = 1
<if test="id != null"> and id = #{id} </if>
<if test="name != null"> and name = #{name} </if>
<if test="address != null"> and address = #{address} </if>
</select>
*/ @Test public void testSelectUserByCondition() throws Exception {
SqlSession session = sqlSessionFactory.openSession();
User user = new User();
// user.setId("0001");
user.setName("lisi");
List<User> users = session.selectList("com.hehe.mybatis.domain.User.selectUserByCondition", user);
for (User u : users) {
System.out.println(u);
}
session.close();
}
/*
<!-- dynamic SQL -->
<select id="selectUserByCondition2" parameterType="com.hehe.mybatis.domain.User" resultType="com.hehe.mybatis.domain.User">
select * from user
<where>
<if test="id != null"> id = #{id} </if>
<if test="name != null"> and name = #{name} </if>
<if test="address != null"> and address = #{address} </if>
</where>
</select>
*/ @Test public void testSelectUserByCondition2() throws Exception {
SqlSession session = sqlSessionFactory.openSession();
User user = new User();
// user.setId("0001");
user.setName("lisi");
List<User> users = session.selectList("com.hehe.mybatis.domain.User.selectUserByCondition2", user);
for (User u : users) {
System.out.println(u);
}
session.close();
}
/*
<insert id="insertUser" parameterType="com.hehe.mybatis.domain.User">
insert into user(id, name, address)
values(#{id}, #{name}, #{address})
</insert>
*/ @Test public void testInsertUser() throws Exception {
SqlSession session = sqlSessionFactory.openSession();
User user = new User();
user.setId("0003");
user.setName("wangwu");
user.setAddress("Guangdong");
int affectedRows = session.insert("com.hehe.mybatis.domain.User.insertUser", user);
System.out.println(affectedRows);
// 注意要提交事务
session.commit();
session.close();
}
/*
<insert id="insertUserForMap" parameterType="java.util.HashMap">
insert into user(id, name, address)
values(#{id}, #{name}, #{address})
</insert>
*/ @Test public void testInsertUserForMap() throws Exception {
SqlSession session = sqlSessionFactory.openSession();
Map<String, Object> usermap = new HashMap<String, Object>();
usermap.put("id", "0004");
usermap.put("name", "zhaoliu");
usermap.put("address", "Shenzhen");
int affectedRows = session.insert("com.hehe.mybatis.domain.User.insertUserForMap", usermap);
System.out.println(affectedRows);
// 注意要提交事务
session.commit();
session.close();
}
/*
<delete id="deleteUsreById" parameterType="java.util.String">
delete from user where id = #{id}
</delete>
*/ @Test public void testDeleteUsreById() throws Exception {
SqlSession session = sqlSessionFactory.openSession();
int affectedRows = session.delete("com.hehe.mybatis.domain.User.deleteUsreById", "0004");
System.out.println(affectedRows);
// 注意要提交事务
session.commit();
session.close();
}
/*
<update id="updateUserById" parameterType="com.hehe.mybatis.domain.User">
update user
set name =#{name}
address = #{address}
where id = #{id}
</update>
*/ @Test public void testUpdateUserById() throws Exception {
SqlSession session = sqlSessionFactory.openSession();
User user = session.selectOne("com.hehe.mybatis.domain.User.selectUserById", "0001");
user.setName("zhangsan00");
int affectedRows = session.update("com.hehe.mybatis.domain.User.updateUserById", user);
System.out.println(affectedRows);
// 注意要提交事务
session.commit();
session.close();
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
mybatis_03.zip (21个子文件)
mybatis_03
bin
log4j.properties 428B
com
hehe
mybatis
domain
User.class 1KB
User.xml 2KB
test
UserTest.class 5KB
sqlMapConfig.xml 731B
test
com
hehe
mybatis
test
UserTest.java 6KB
.settings
org.eclipse.jdt.core.prefs 598B
src
log4j.properties 428B
com
hehe
mybatis
domain
User.java 589B
User.xml 2KB
sqlMapConfig.xml 731B
.project 386B
.classpath 1KB
lib
dependences
asm-3.3.1.jar 43KB
log4j-1.2.16.jar 470KB
slf4j-api-1.6.2.jar 25KB
commons-logging-1.1.1.jar 59KB
slf4j-log4j12-1.6.2.jar 10KB
cglib-2.2.2.jar 280KB
mysql-connector-java-5.1.21-bin.jar 809KB
mybatis-3.1.1.jar 636KB
共 21 条
- 1
资源评论
- jwandlx2015-04-24什么东西 不是很好哦
forwardNow
- 粉丝: 275
- 资源: 73
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功