注解在接口上实现
@Select("select * from user")
List<User> getUser();
需要在核心配置文件中绑定接口
<mapper class="cn.pinked.dao.UserMapper"/>
测试
@Test
public void getUser() {
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
List<User> userList = mapper.getUser();
for (User user : userList) {
System.out.println(user);
}
sqlSession.close();
}
本质:反射机制实现
底层:动态代理
可以在工具类创建时实现自动提交事务
public static SqlSession getSqlSession() {
return sqlSessionFactory.openSession(true);
}
编写接口
public interface UserMapper {
@Select("select * from user")
List<User> getUser();
@Select("select * from user where id = #{id}")
User getUserById(@Param("id") int id);
@Insert("insert into user(id, name, pwd) values (#{id}, #{name}, #{password})")
int addUser(User user);
@Update("update user set name = #{name}, pwd = #{password} where id = #{id}")
int updateUser(User user);
@Delete("delete from user where id = #{id}")
int deleteUser(@Param("id") int id);
}
测试类
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
// List<User> userList = mapper.getUser();
// for (User user : userList) {
// System.out.println(user);
// }
//
// User user = mapper.getUserById(3);
// System.out.println(user);
//
// int res = mapper.addUser(new User(5, "王五", "123456"));
//
// int res = mapper.updateUser(new User(5, "王大五", "12345"));
//
// mapper.deleteUser(5);
sqlSession.close();
原文:https://www.cnblogs.com/pinked/p/12175580.html