public Object selectByPrimaryKeyWithBLOBs(Object object) throws RuntimeException {
   try {
     return genericDAO.selectByPrimaryKeyWithBLOBs(object);
   } catch (RuntimeException e) {
     logger.info("��" + this.getClass().getSimpleName() + "��������쳣:" + e.getMessage());
     throw new RuntimeException("����쳣:" + e.getMessage());
   }
 }
 public List selectByExampleWithBLOBs(Object example) throws RuntimeException {
   try {
     return genericDAO.selectByExampleWithBLOBs(example);
   } catch (RuntimeException e) {
     logger.info("��" + this.getClass().getSimpleName() + "��������쳣:" + e.getMessage());
     throw new RuntimeException("����쳣:" + e.getMessage());
   }
 }
 public int deleteByExample(Object example) throws RuntimeException {
   try {
     return genericDAO.deleteByExample(example);
   } catch (RuntimeException e) {
     logger.info("��" + this.getClass().getSimpleName() + "��������쳣:" + e.getMessage());
     throw new RuntimeException("����쳣:" + e.getMessage());
   }
 }
 public int updateByPrimaryKeySelective(Object object) throws RuntimeException {
   try {
     return genericDAO.updateByPrimaryKeySelective(object);
   } catch (RuntimeException e) {
     logger.info("��" + this.getClass().getSimpleName() + "��������쳣:" + e.getMessage());
     throw new RuntimeException("����쳣:" + e.getMessage());
   }
 }
  public void insert(Object object) throws RuntimeException {
    try {
      genericDAO.insert(object);

    } catch (RuntimeException e) {
      logger.info("��" + this.getClass().getSimpleName() + "��������쳣:" + e.getMessage());
      throw new RuntimeException("����쳣:" + e.getMessage());
    }
  }