mybatis 使用(1)基本配置

 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();
	}

}
发布了245 篇原创文章 · 获赞 1 · 访问量 9559

猜你喜欢

转载自blog.csdn.net/qq_37769323/article/details/104318348