本文内容主要介绍单条记录的增删改查操作,MyBatis提供了很多完成单条记录的增删改查操作的API。本例主要讲述<UserMapper> UserMapper org.apache.ibatis.session.SqlSession.getMapper(Class<UserMapper> clazz)的使用。使用此API,我们需要创建UserMapper操作接口,函数名和MyBatis的User.xml配置文件中的操作id名对应。
【转载使用,请注明出处:http://blog.csdn.net/mahoking】
public interface UserMapper {
/*======基本增删改查操作======*/
/**
* 删除操作
* @param userName
*/
public void deleteUser(String userName);
/**
* 更新操作
* @param user
*/
public void updateUser(User user);
/**
* 添加操作
* @param user
*/
public void insertUser(User user);
/**
* 查询操作
* @param id
* @return
*/
public User selectUser(int id);
}
MyBatis具体增删改查的操作实现过程。
/**
* 增加操作
*/
public static void insertUser() {
SqlSessionFactory ssf = MyBatisUtil.getSqlSessionFactory();
SqlSession session = ssf.openSession();
try {
UserMapper userMapper = session.getMapper(UserMapper.class);
User newUser = new User("MyBatisUser", "123456");
userMapper.insertUser(newUser);
// 这里一定要提交,不然数据进不去数据库中
session.commit();
System.out.println(newUser);
} catch (Exception e) {
e.printStackTrace();
} finally {
MyBatisUtil.closeSession(session);
}
}
/**
* 删除操作
*/
public static void deleteUser(String userName) {
SqlSessionFactory ssf = MyBatisUtil.getSqlSessionFactory();
SqlSession session = ssf.openSession();
try {
UserMapper userMapper = session.getMapper(UserMapper.class);
userMapper.deleteUser(userName);
//提交Session,更新数据库
session.commit();
} catch (Exception e) {
e.printStackTrace();
} finally {
MyBatisUtil.closeSession(session);
}
}
/**
* 删除操作
*/
public static void updateUser(User user) {
SqlSessionFactory ssf = MyBatisUtil.getSqlSessionFactory();
SqlSession session = ssf.openSession();
try {
UserMapper userMapper = session.getMapper(UserMapper.class);
userMapper.updateUser(user);
// 这里一定要提交,不然数据进不去数据库中
session.commit();
} catch (Exception e) {
e.printStackTrace();
} finally {
MyBatisUtil.closeSession(session);
}
}
/**
* 查询操作
*/
public static User selectUser(int id) {
SqlSessionFactory ssf = MyBatisUtil.getSqlSessionFactory();
SqlSession session = ssf.openSession();
try {
UserMapper userMapper = session.getMapper(UserMapper.class);
User user = userMapper.selectUser(id);
return user;
} catch (Exception e) {
e.printStackTrace();
return null;
} finally {
MyBatisUtil.closeSession(session);
}
}
对于MyBatisUtil对象,读者可以参考上文。
【转载使用,请注明出处:http://blog.csdn.net/mahoking】