?? questiondaohibernate.java
字號:
package org.yeeku.dao.impl;
import org.yeeku.model.*;
import java.io.Serializable;
import org.yeeku.dao.*;
import org.hibernate.*;
import org.yeeku.enhance.YeekuHibernateDaoSupport;
import java.util.*;
public class QuestionDaoHibernate extends YeekuHibernateDaoSupport implements QuestionDao
{
/**
* 根據主鍵加載試題
* @param id 需要加載的試題的主鍵值
* @return 加載的試題PO
*/
public Question get(int id)
{
Question q = (Question)getHibernateTemplate().load(Question.class , id);
Hibernate.initialize(q);
return q;
}
/**
* 保存試題實體,新增一條試題記錄
* @param question 保存的試題實例
*/
public void save(Question question)
{
getHibernateTemplate().save(question);
}
/**
* 刪除試題實體,刪除一條試題記錄
* @param question 刪除的試題實例
*/
public void delete(Question question)
{
getHibernateTemplate().delete(question);
}
/**
* 根據主鍵刪除試題實體,刪除一條試題記錄
* @param id 刪除試題的主鍵
*/
public void delete(int id)
{
getHibernateTemplate().delete(get(id));
}
/**
* 更新一條試題記錄
* @param question 需要更新的試題
*/
public void update(Question question)
{
getHibernateTemplate().update(question);
}
/**
* 根據頁碼查詢試題列表
* @param pageNo 查詢的頁碼
* @param pageSize 每頁顯示的試題數
* @return 指定頁的試題列表
*/
public List<Question> findAllByPage(int pageNo , int pageSize)
{
if (pageNo < 1)
{
return null;
}
int offset = (pageNo - 1) * pageSize;
return findByPage("from Question", offset , pageSize);
}
/**
* 根據試題ID、考試類型查詢試題
* @param id 需要查詢的試題ID
* @examType 考試類型
* @return 指定ID,對應考試類型的試題
*/
public Question findQuestionByExamType(int id , ExamType examType)
{
Question question = get(id);
//如果指定ID已經無法獲得試題,返回空
if (question == null)
{
return null;
}
//如果獲得試題對應的考試類型ID與請求的考試類型的ID相同。
if (question.getExamType().getId() == examType.getId())
{
return question;
}
return null;
}
/**
* 查詢試題的最大ID
* @return 試題的最大ID
*/
public int getMaxId()
{
List questionList = getHibernateTemplate().find("select max(question.id) from Question as question");
if (questionList == null)
{
return 0;
}
return (Integer)questionList.get(0);
}
/**
* 查詢試題的數量
* @return 試題的數量
*/
public long getQuestionCount()
{
List questionList = getHibernateTemplate().find("select count(question.id) from Question as question");
if (questionList == null)
{
return 0;
}
return (Long)questionList.get(0);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -