所以我已经阅读这个主题几天了,每次我认为我理解它时,我都会再次感到困惑。
所以我有:一个 MySQL 数据库、eclipse、tomcat apache、使用 STRUTS2 的 GUI 的开始
我正在为所述数据库设置 gui,并且我想在我的 JSP 页面中显示其中一个数据表。所以我的问题......好吧,我有很多问题,但最初,我有一个表单,我有一个操作将我发送到我想在其中显示我的表格的 JSP 页面。我想我会使用另一个操作来连接到数据库并获取我的所有信息,但我不确定这是否有意义,我应该使用相同的操作吗?
嗯......这是我的代码的一部分:
获取数据的操作:
package net.upsmon.struts2.action;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
import com.opensymphony.xwork2.ActionSupport;
public class Table extends ActionSupport {
List tableRows=new ArrayList();
public String execute() throws InstantiationException, IllegalAccessException, ClassNotFoundException{
List tableInfo=new ArrayList();
Properties props = new Properties();
props.setProperty("user", "user");
props.setProperty("password", "pass");
props.setProperty("databaseName", "db");
String dbUrl="jdbc:mysql://db:3306/db";
String ret = ERROR;
Connection myCon = null;
try{
Class.forName ("com.mysql.jdbc.Driver").newInstance();
myCon = DriverManager.getConnection("jdbc:mysql://dburl:3306/mqmonitordb",props);
String dbQuery = "SELECT * FROM table";
PreparedStatement ps = myCon.prepareStatement(dbQuery);
ResultSet result=ps.executeQuery(dbQuery);
while(result.next()){
tableInfo.add(result.getString("raisedAlertId"));
tableInfo.add(result.getString("alertHostIP"));
tableInfo.add(result.getString("portNumber"));
tableInfo.add(result.getString("qMgrName"));
tableInfo.add(result.getString("alertType"));
tableInfo.add(result.getString("alertGroupName"));
tableInfo.add(result.getString("alertEntity"));
tableInfo.add(result.getString("maintMode"));
tableInfo.add(result.getString("alertCreatedTime"));
tableInfo.add(result.getString("alertRaisedTime"));
tableInfo.add(result.getString("alertAckFlag"));
tableRows.add(tableInfo);
tableInfo.clear();
}
//request.setAttribute("tableRows",tableRows);
}catch(SQLException sqe){
}catch(Exception e){
}
return "yay";
}
public List tableRows() {
return tableRows();
}
public void setTableRows(List tableRows) {
this.tableRows = tableRows;
}
}
JSP 页面:
<%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<link type="text/css" rel="stylesheet" href="stylesheet.css" />
<title>Welcome</title>
</head>
<body>
<h2>
Welcome
</h2>
<table>
<thead>
<tr>
<th></th>
<th>column1</th>
<th>column2</th>
</tr>
</thead>
<tbody>
<s:iterator status="stat" value="tableRows">
<tr>
<td><s:property value="#stat.index+1"></s:property></td>
<td><s:property value="%{column1}"></s:property></td>
<td><s:property value="%{column2}"></s:property></td>
</tr>
</s:iterator>
</tbody>
</table>
<s:form action="logout" method="post" margin="auto">
<s:submit method="authenticate" key="label.logout" align="center" />
</s:form>
<s:form action="tolevelselector" method="post" margin="auto">
<s:submit method="authenticate" key="label.levelthree" align="center" />
</s:form>
</body>
</html>
任何建议都会很棒,谢谢....