📄 oraclequestiondao.java
字号:
/*
* Created on 17-ene-2005 22:39:45
*
*/
package com.martincuervo.javatest.business.dao.oracle;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
import com.martincuervo.javatest.business.dao.DAOHelper;
import com.martincuervo.javatest.business.dao.IQuestionDAO;
import com.martincuervo.javatest.business.dao.IResultSetWrapper;
import com.martincuervo.javatest.business.vo.AnswerVO;
import com.martincuervo.javatest.business.vo.CategoryVO;
import com.martincuervo.javatest.business.vo.QuestionVO;
/**
* @author Jorge Martin Cuervo <jorge@martincuervo.com>
*
*/
public class OracleQuestionDAO implements IQuestionDAO {
private Connection connection;
private DAOHelper helper;
/**
*
*/
private static final IResultSetWrapper RS_WRAPPER = new IResultSetWrapper() {
public Object transform (ResultSet rs) throws SQLException {
return new QuestionVO(
rs.getInt("ID"),
rs.getString("TEXT"),
rs.getString("EXPLANATION"),
null,
new CategoryVO(rs.getInt("ID_CATEGORY")));
}
};
/**
*
* @param connection
*/
public OracleQuestionDAO(Connection connection) {
super();
this.connection = connection;
helper = new DAOHelper(this.getClass().getName(), connection);
}
/**
* añade una pregunta
*/
public void addQuestion(QuestionVO question) {
Object[] params = {
new Integer(question.getId()),
question.getText(),
question.getExplanation(),
new Integer(question.getCategory().getId())
};
helper.executeQuery("insert", params);
}
/**
* elimina una pregunta
*/
public void delQuestion(QuestionVO question) {
Object[] params = { new Integer(question.getId()) };
helper.executeQuery("delete", params);
}
/**
* obtiene una pregunta
*/
public QuestionVO getQuestion(QuestionVO question) {
Object[] params = { new Integer(question.getId()) };
QuestionVO q = null;
List list = helper.executeSelect("select.one", params, RS_WRAPPER );
if (list != null && list.size() == 1) {
q = (QuestionVO)list.get(0);
}
return q;
}
/**
* obtiene todas las preguntas
*/
public List getQuestions() {
return helper.executeSelect("select.all", null, RS_WRAPPER );
}
/**
* modifica una pregunta
*/
public void modQuestion(QuestionVO question) {
Object[] params = {
question.getText(),
question.getExplanation(),
new Integer(question.getCategory().getId()),
new Integer(question.getId())
};
helper.executeQuery("update", params);
}
/**
* Obtiene la pregunta asociada a una respuesta
*
*/
public QuestionVO getQuestion(AnswerVO answer) {
Object[] params = { new Integer(answer.getId()) };
QuestionVO q = null;
List list = helper.executeSelect("select.answer", params, RS_WRAPPER );
if (list != null && list.size() == 1) {
q = (QuestionVO)list.get(0);
}
return q;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -