MyBatis基本增刪改查操作

jopen 9年前發布 | 19K 次閱讀 MyBatis MyBatis3 持久層框架

       本文內容主要介紹單條記錄的增刪改查操作,MyBatis提供了很多完成單條記錄的增刪改查操作的API。本例主要講 述<UserMapper> UserMapper org.apache.ibatis.session.SqlSession.getMapper(Class<UserMapper> clazz)的使用。使用此API,我們需要創建UserMapper操作接口,函數名和MyBatis的User.xml配置文件中的操作id名對應。

    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);   
}  </pre> <br />

  MyBatis具體增刪改查的操作實現過程。

Session 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);  
    }  
}  </pre> 來自:<a target="_blank" href="/misc/goto?guid=4959626575484425387"><span style="font-size:14px;">http://blog.csdn.net/mahoking</span></a><br />
 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!