我尝试使用 struts框架编写代码。
我是struts的新人,我没有这方面的经验。
我想做什么,使用 struts中的对象列表。
假设我们从ActionForm扩展了java类,如下所示:
ResumeMessages.java:
public class ResumeMessages_Form extends ActionForm{
private List<Message> listallmessages; // this is the list wich i want to use it
private DbMessage DbMessage; // a simple java class to connect from JDBC to xamp ...
public ResumeMessages_Form() {
super();
DbMessage = new DbMessage();
try {
listallmessages = DbMessage.List_Messages(); // return list of all messages in the database
} catch (SQLException ex) {
Logger.getLogger(ResumeMessages_Form.class.getName()).log(Level.SEVERE, null, ex);
}
}
public List<Message> getListallmessages() {
return listallmessages;
}
public void setListallmessages(List<Message> listallmessages) {
this.listallmessages = listallmessages;
}
@Override
public String toString() {
return "ResumeMessages_Form{" + "listallmessages=" + listallmessages + ", DbMessage=" + DbMessage + '}';
}
@Override
public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) {
ActionErrors errors = new ActionErrors();
return errors;
}
}
并假设我想在jsp文件中使用列表' listallmessages ',如下所示:
Resum.jsp:
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Untitled Page</title>
<jsp:include page="/files/resumemessages/resumemessages_style.jsp"/>
</head>
<body>
<html:form action="/resum" method="post">
<table>
<% for (int i=0;i<listallmessages.size();i++){%>
<tr><td> <%= listallmessages.get(i).message_name %>
</td></tr>
<%}%>
</table>
</html:form>
</body>
</html>
注意:我对 struts-config.xml 没有任何问题,我很清楚我将在struts-config.xml中做什么,只需要一个人帮助我使用struts在jsp文件中使用List。
非常感谢:) 二元人
答案 0 :(得分:0)
我不会在JSP页面中使用scriptlet(Java代码) - 最好使用标记库,如JSTL或Struts标记库。
使用JSTL中的c:forEach
和c:out
的示例:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<c:forEach var="message" items="${listallmessages}">
<c:out value="${message.message_name}"/>
</c:forEach>
Struts标记库包含logic:iterate
和bean:write
,与使用类似:
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<logic:iterate name="listallmessages" id="message">
<bean:write name="message" property="message_name"/>
</logic:iterate>