- select标签是mybatis最常用的标签之一.
- select语句有很多属性可以详细的配置每一天sql语句.
- id
- 命名空间唯一的标识.
- 接口中的方法名与映射文件的sql语句ID对应
- parameterType
- 传入sql语句的参数类型.
- resultType
- sql语句的返回值类型.
- id
需求:根据id查询用户
在接口文件中添加对用的虚拟方法:
public interface UserMapper {
//查询全部用户
List selectUser();
//根据id查询用户
User selectUserById(int id);
}
在配置文件中配置sql语句:
测试类中测试:
@Test
public void tsetSelectUserById() {
SqlSession session = MybatisUtils.getSession(); //获取SqlSession连接
UserMapper mapper = session.getMapper(UserMapper.class);
User user = mapper.selectUserById(1);
System.out.println(user);
session.close();
}
需求姓名和密码来查询
在接口方法的参数前添加@param
sql语句编写的时候直接取@param中设置的值即可,不需要单独设置参数类型.
//通过密码和名字查询用户
User selectUserByNP(@Param("username") String username,@Param("pwd") String pwd);
insert
需求:添加一个用户
//添加一个用户 int addUser(User user);
在userMapper.xml文件中添加insert语句
insert into user (id,name,pwd) values (#{id},#{name},#{pwd})
测试:
@Test
public void testAddUser() {
SqlSession session = MybatisUtils.getSession();
UserMapper mapper = session.getMapper(UserMapper.class);
User user = new User(5,"王五","zxcvbn");
int i = mapper.addUser(user);
System.out.println(i);
session.commit(); //提交事务,重点!不写的话不会提交到数据库
session.close();
}
注意点:增删改需要提交事务
备注:文章的大多数的内容来自狂神笔记.



