userdao.java

来自「Hibernate基础教程一书源码.Hibernate是一个持久层开源框架」· Java 代码 · 共 57 行

JAVA
57
字号
package sample.dao;

import org.hibernate.HibernateException;
import org.hibernate.Query;

import sample.AdException;
import sample.entity.User;

public class UserDAO extends DAO {
   public UserDAO() {
   }
   
   public User get(String username)
      throws AdException
   {
      try {
         begin();
         Query q = getSession().createQuery("from User where name = :username");
         q.setString("username",username);
         User user = (User)q.uniqueResult();
         commit();
         return user;
      } catch( HibernateException e ) {
         rollback();
         throw new AdException("Could not get user " + username,e);
      }
   }
   
   public User create(String username,String password)
      throws AdException
   {
      try {
         begin();
         User user = new User(username,password);
         getSession().save(user);
         commit();
         return user;
      } catch( HibernateException e ) {
         rollback();
         throw new AdException("Could not create user " + username,e);
      }
   }
   
   public void delete(User user)
      throws AdException
   {
      try {
         begin();
         getSession().delete(user);
         commit();
      } catch( HibernateException e ) {
         rollback();
         throw new AdException("Could not delete user " + user.getName(),e);
      }
   }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?