Java 在Action类和JSP视图(Struts 1.x)中使用ArrayList
我有一个MCQ的数组列表,从数据库中获取。一旦存储在列表中,我想在jsp视图中显示MCQ。 我的第一个问题是如何将值引入ArrayList。我想我可以用两种方式发布代码,一种是使用问题模型classcommented out,另一种是非注释方式Java 在Action类和JSP视图(Struts 1.x)中使用ArrayList,java,jsp,jakarta-ee,arraylist,struts-1,Java,Jsp,Jakarta Ee,Arraylist,Struts 1,我有一个MCQ的数组列表,从数据库中获取。一旦存储在列表中,我想在jsp视图中显示MCQ。 我的第一个问题是如何将值引入ArrayList。我想我可以用两种方式发布代码,一种是使用问题模型classcommented out,另一种是非注释方式 public class QuestionsAction extends Action{ public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletR
public class QuestionsAction extends Action{
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws Exception
{
List<String> questionList=new ArrayList<String>();
Statement stmt = null;
ResultSet rs=null;
Connection conn=DBConnection.createConnection();
stmt = conn.createStatement();
String query="SELECT * FROM questions";
rs = stmt.executeQuery(query);
while(rs.next())
{
/*
Question question = new Question(rs.getString("qid"),
rs.getString("question"),
rs.getString("answer1"),
rs.getString("answer2"),
rs.getString("asnwer3"),
rs.getString("answer4"),
rs.getString("correctAns"));
questionList.add(question);
*/
questionList.add(rs.getString("qid"));
questionList.add(rs.getString("question"));
questionList.add(rs.getString("answer1"));
questionList.add(rs.getString("answer2"));
questionList.add(rs.getString("answer3"));
questionList.add(rs.getString("answer4"));
questionList.add(rs.getString("correctAns"));
HttpSession session=request.getSession();
session.setAttribute("questionsList",questionList);
}
rs.close();
stmt.close();
conn.close();
return mapping.findForward("success");
}
}
第二个问题是,一旦我有了这个ArrayList,我就转到my questions.jsp来显示这些问题及其选项。如何做到这一点,我搜索并找到了<logic:iterate name="questionList">
<bean:write name="??" property="question" />
<li> <bean:write name="??" property="answer1" /> </li>
<li> <bean:write name="??" property="answer2" /> </li>
<li> <bean:write name="??" property="answer3" /> </li>
<li> <bean:write name="??" property="answer4" /> </li>
</logic:iterate>
最好使用java类来映射问题。e、 g
public class Question{
Long qid;
String question;
................. and so on
}
现在,通过创建一个新的问题对象并将其添加到问题列表中,您可以轻松地为各个问题设置所有值
loop
{
Question question = new Question(); //use setter or constructor and use the value from resultSet
list.add(question);
}
关于第二部分,请参考此示例
您想在哪个html元素组合框、表格或单选列表中显示它??单选列表!对不起,没有指定!令人惊叹的这是我代码的注释部分。非常感谢。现在在我的jsp视图中显示它怎么样?