MyBatis中CURD的入门使用

CURD是一个数据库技术中的缩写词,一般的项目开发的各种参数的基本功能都是CURD。

它代表创建(Create)、更新(Update)、读取(Read)和删除(Delete)操作。

项目结构

整体使用流程

  1. 编写接口
  2. 编写对应的mapper.xml中的SQL语句
  3. 编写测试类
  4. 涉及insert、 update 、delete的操作一定要进行commit,否则不生效

增删改查操作 

编写接口:UserMapper.java

package com.free.dao;

import com.free.pojo.User;

import java.util.List;

public interface UserMapper {
	//获取用户列表
	public List<User> getUserList();
	
	//根绝id获取用户信息
	public User getUserById(int uid);
	
	//插入数据
	public int addOneUser(User user);
	
	//更新用户信息
	public boolean updateUser(User User);
	
	//删除用户
	public boolean deleteUser(int uid);
}

编写对应的xml文件: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">

<!--namespace 绑定一个对应的DAO/Mapper接口-->
<mapper namespace="com.free.dao.UserMapper">
	<!-- id:接口内的方法  resultType:返回的实体类-->
	<select id="getUserList" resultType="com.free.pojo.User">
		select * from user limit 10
	</select>
	
	<!--根绝id获取用户详情-->
	<select id="getUserById"  parameterType="int" resultType="com.free.pojo.User">
		select * from user WHERE id = #{uid}
	</select>
	
	<!--插入新增用户,对象中的属性可以直接取出来-->
	<insert id="addOneUser" parameterType="com.free.pojo.User">
		INSERT INTO user (username, sex, company) VALUES (#{username}, #{sex}, #{company})
	</insert>
	
	<!--更新用户信息-->
	<update id="updateUser" parameterType="com.free.pojo.User">
		update user SET username=#{username},sex=#{sex} WHERE id=#{id}
	</update>
	
	<!--删除用户-->
	<delete id="deleteUser" parameterType="int">
		delete from user where id=#{id}
	</delete>
</mapper>

 编写测试类: UserMapperTest.java

package com.free.dao;

import com.free.pojo.User;
import com.free.utils.DB;
import org.apache.ibatis.session.SqlSession;
import org.junit.Test;

import java.util.List;

public class UserMapperTest {
	
	
	@Test
	public void getUserListT(){
		SqlSession connect = DB.getConnect();
		//方式一 getMapper
		UserMapper user = connect.getMapper(UserMapper.class);
		List<User> userList = user.getUserList();
		
		for(User item: userList){
			System.out.println(item);
		}
		connect.close();
	}
	
	@Test
	public void getUserByIdT(){
		SqlSession connect = DB.getConnect();
		//执行查询
		UserMapper userMapper = connect.getMapper(UserMapper.class);
		User user = userMapper.getUserById(1);
		System.out.println(user);
		connect.close();
	}
	
	@Test
	public void  addOneUserT(){
		SqlSession connect = DB.getConnect();
		UserMapper mapper = connect.getMapper(UserMapper.class);
		User user = new User();
		user.setUsername("王二萌2");
		user.setSex(3);
		user.setCompany("南海家园");
		mapper.addOneUser(user);
		//增删改一定要提交事务
		connect.commit();
		connect.close();
	}
	
	
	@Test
	public void updateUserT(){
		SqlSession connect = DB.getConnect();
		
		UserMapper mapper = connect.getMapper(UserMapper.class);
		
		User user = new User(596147, "王三萌", 2, "人瑞");
		System.out.println(mapper.updateUser(user));
		
		connect.commit();;
		connect.close();
	}
	
	@Test
	public void deleteUserT(){
		SqlSession connect = DB.getConnect();
		
		UserMapper mapper = connect.getMapper(UserMapper.class);
		boolean bool = mapper.deleteUser(596146);
		System.out.println(bool);
		connect.commit();
		
		connect.close();
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值