mybatis-config.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>
<!-- 加载属性文件 -->
<properties resource="db.properties"></properties>
<!-- 给包中的类注册别名 -->
<typeAliases>
<package name="com.mybatis.pojo" />
</typeAliases>
<!-- 配置environment环境 -->
<environments default="development">
<!-- 配置一个id为development的环境 -->
<environment id="development">
<!-- 使用JDBC事务 -->
<transactionManager type="JDBC" />
<!-- 数据库连接池 -->
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</dataSource>
</environment>
</environments>
<!-- 引用映射文件 -->
<mappers>
<mapper resource="com/mybatis/mapper/UserInfoMapper.xml" />
</mappers>
</configuration>
UserInfoMapper.xml
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mybatis.mapper.UserInfoMapper">
<!-- 根据用户编号获取用户信息 -->
<select id="findUserInfoById" parameterType="int" resultType="UserInfo">
select *
from user_info where id = #{id}
</select>
<!-- 根据用户名模糊查询用户 -->
<select id="findUserInfoByUserName" parameterType="String"
resultType="UserInfo">
select * from user_info where userName like
CONCAT(CONCAT('%',#{userName}),'%')
</select>
<!-- 添加用户 -->
<insert id="addUserInfo" parameterType="UserInfo">
insert into
user_info(userName,password) values(#{userName},#{password})
</insert>
<!-- 修改用户信息 -->
<update id="updateUserInfo" parameterType="UserInfo">
update user_info set
userName=#{userName}, password=#{password} where id=#{id}
</update>
<!-- 根据用户编号删除用户 -->
<delete id="deleteUserInfo" parameterType="int">
delete from user_info
where id=#{id}
</delete>
</mapper>
MybatisTest.java
package com.mybatis.test;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
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.After;
import org.junit.Before;
import org.junit.Test;
import com.mybatis.pojo.UserInfo;
public class MybatisTest {
private SqlSessionFactory sqlSessionFactory;
private SqlSession sqlSession;
@Before
public void init() {
// ��ȡmybatis�����ļ�
String resource = "mybatis-config.xml";
InputStream inputStream;
try {
// �õ������ļ���
inputStream = Resources.getResourceAsStream(resource);
// ���������ļ���Ϣ�������Ự����
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
// ͨ�������õ�SqlSession
sqlSession = sqlSessionFactory.openSession();
} catch (IOException e) {
e.printStackTrace();
}
}
// ����id��ѯ�û�
@Test
public void testFindUserInfoById() {
// ͨ��sqlSessionִ��ӳ���ļ��ж����SQL,������ӳ����
UserInfo ui = sqlSession.selectOne("findUserInfoById", 1);
// ��ӡ������
System.out.println(ui.toString());
}
// �����û���ģ����ѯ�û�
@Test
public void testFindUserInfoByUserName() {
// ִ��ӳ���ļ��ж����SQL,������ӳ����
List<UserInfo> uis = sqlSession.selectList("findUserInfoByUserName", "m");
for (UserInfo ui : uis) {
// ��ӡ������
System.out.println(ui.toString());
}
}
// ����û�
@Test
public void testAddUserInfo() {
// ����UserInfo����ui
UserInfo ui = new UserInfo();
// �����ui���������
ui.setUserName("mybatis1");
ui.setPassword("123456");
// ִ��sqlSession��insert����,���ؽ����SQL�����Ӱ�������
int result = sqlSession.insert("addUserInfo", ui);
if (result > 0) {
System.out.println("����ɹ�");
} else {
System.out.println("����ʧ��");
}
}
// ���û�
@Test
public void testUpdateUserInfo() {
// ���ر��Ϊ7���û�
UserInfo ui = sqlSession.selectOne("findUserInfoById", 7);
// ���������û�����
ui.setPassword("123123");
// ִ��sqlSession��update����,���ؽ����SQL�����Ӱ�������
int result = sqlSession.update("updateUserInfo", ui);
if (result > 0) {
System.out.println("���³ɹ�");
System.out.println(ui);
} else {
System.out.println("����ʧ��");
}
}
// ɾ���û�
@Test
public void testDeleteUserInfo() {
// ִ��sqlSession��delete����,���ؽ����SQL�����Ӱ�������
int result = sqlSession.delete("deleteUserInfo", 7);
if (result > 0) {
System.out.println("�ɹ�ɾ����" + result + "����¼");
} else {
System.out.println("����ɾ��");
}
}
@After
public void destroy() {
// �ύ����
sqlSession.commit();
// �ر�sqlSession
sqlSession.close();
}
}