namespace
namespace的包名要和dao/mapper接口名一致。
select查询语句
- id :就是namespace中对应的方法名
- resultType: sql语句执行的返回值
- parameterType:入参的类型
insert 添加语句
- id :就是namespace中对应的方法名
- parameterType:入参的类型
update 修改语句
- id :就是namespace中对应的方法名
- parameterType:入参的类型
delete 删除语句
- id :就是namespace中对应的方法名
- parameterType:入参的类型
主要代码
mapper 层
<?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.mw.dao.UserMapper">
<!--查询全部用户-->
<select id="selectBlog" resultType="com.mw.pojo.User" >
select * from mybatis.user
</select>
<!--根据用户id查询用户-->
<select id="getUserById" resultType="com.mw.pojo.User" parameterType="string">
select * from mybatis.user where id=#{id}
</select>
<!-- 对象中的属性 可以直接取出来 -->
<insert id="addUser" parameterType="com.mw.pojo.User" >
insert into mybatis.user(id,name,age,sex) values (#{id},#{name},#{age},#{sex})
</insert>
<!--根据用户id修改用户-->
<update id="updateUser" parameterType="com.mw.pojo.User" >
update mybatis.user
set name = #{name},age=#{age},sex=#{sex}
where id=#{id}
</update>
<delete id="deleteUser" parameterType="string" >
delete from mybatis.user where id=#{id}
</delete>
</mapper>
dao层
package com.mw.dao;
import com.mw.pojo.User;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
import java.util.List;
@Mapper
@Repository
public interface UserMapper {
/**
* 查询全部用户
* @return 返回全部用户
*/
List<User> selectBlog();
/**
* 根据id查询用户
* @param id
* @return 用户信息
*/
User getUserById(String id);
/**
* 添加用户
* @param user
* @return 0或者1
*/
int addUser(User user);
/**
* 根据id修改用户
* @param user
* @return 0或者1
*/
int updateUser(User user);
/**
* 根据id删除用户
* @param id
* @return 0/1
*/
int deleteUser(String id);
}
测试
package com.mw;
import cn.hutool.core.util.IdUtil;
import com.mw.dao.UserMapper;
import com.mw.pojo.User;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class MybatisDemoApplicationTests {
@Autowired
private UserMapper userMapper;
/**
* 查询用户表
*/
@Test
void contextLoads() {
List<User> users=userMapper.selectBlog();
for (User user:users
) {
System.out.println(user);
}
}
/**
* 根据用户id查询用户信息
*/
@Test
void getUserById(){
String id="e479c366b97247ad83e0369928bd176a";
User user=userMapper.getUserById(id);
System.out.println(user);
}
/**
* 添加用户
*/
@Test
void addUser(){
String id= IdUtil.simpleUUID();
String name="李四";
int sex=1;
int age=18;
User user=new User(id,name,age,sex);
int i = userMapper.addUser(user);
if (i<0){
System.out.println("添加失败!");
}else {
System.out.println("添加成功!");
}
}
/**
* 根据用户id修改用户信息
*/
@Test
void updateUser(){
String id="e479c366b97247ad83e0369928bd176a";
String name="马伟";
int sex=1;
int age=18;
User user=new User(id,name,age,sex);
int i = userMapper.updateUser(user);
if (i<0){
System.out.println("修改失败!");
}else {
System.out.println("修改成功!");
}
}
/**
* 根据用户id修改用户信息
*/
@Test
void deleteUser(){
String id="e479c366b97247ad83e0369928bd176a";
int i = userMapper.deleteUser(id);
if (i<0){
System.out.println("删除失败!");
}else {
System.out.println("删除成功!");
}
}
}
如果需要请前往码云仓库查看
https://gitee.com/mw0309/mybaits-demo