- Struts 2提取表的所有记录
- 获取和显示记录的示例
为了获取所有记录, 我们将所有记录存储在一个集合中(使用List), 并使用struts2的迭代器标签显示该集合的数据。
在这里, 我们假设你在Oracle数据库中有一个名为user3333的表, 其中包含记录。表查询为:
CREATE TABLE "USER3333"
( "ID" NUMBER, "NAME" VARCHAR2(4000), "PASSWORD" VARCHAR2(4000), "EMAIL" VARCHAR2(4000), CONSTRAINT "USER3333_PK" PRIMARY KEY ("ID") ENABLE
)
获取表中所有记录的示例
在此示例中, 我们将创建5个页面:
- index.jsp调用动作。
- Register.java用于在集合中存储表的数据。
- 用于表示表的User.java。
- 用于定义操作和结果的struts.xml。
- welcome.jsp用于视图组件以显示记录。
1)创建index.jsp来调用操作(可选)
这个jsp页面创建一个链接来调用该动作。但是你可以直接调用动作类。
index.jsp
<a href="viewrecords">View All Records</a>
2)创建动作类
该动作类包含ArrayList对象作为数据成员和execute方法。
Register.java
package com.srcmini;
import java.sql.*;
import java.util.ArrayList;
public class FetchRecords {
ArrayList<User> list=new ArrayList<User>();
public ArrayList<User> getList() {
return list;
}
public void setList(ArrayList<User> list) {
this.list = list;
}
public String execute(){
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con=DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:xe", "system", "oracle");
PreparedStatement ps=con.prepareStatement("select * from user3333");
ResultSet rs=ps.executeQuery();
while(rs.next()){
User user=new User();
user.setId(rs.getInt(1));
user.setName(rs.getString(2));
user.setPassword(rs.getString(3));
user.setEmail(rs.getString(4));
list.add(user);
}
con.close();
}catch(Exception e){e.printStackTrace();}
return "success";
}
}
3)创建代表表格的类
这是包含4个字段的简单bean类。
User.java
package com.srcmini;
public class User {
private int id;
private String name, password, email;
//getters and setters
}
4)创建struts.xml
此xml文件定义操作和结果。
struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD
Struts Configuration 2.1//EN"
"http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<package name="anbc" extends="struts-default">
<action name="viewrecords" class="com.srcmini.FetchRecords">
<result name="success">displayrecords.jsp</result>
</action>
</package>
</struts>
5)创建视图组件
它是显示用户信息的简单jsp文件。
welcome.jsp
<%@ taglib uri="/struts-tags" prefix="s" %>
<h3>All Records:</h3>
<s:iterator value="list">
<fieldset>
<s:property value="id"/><br/>
<s:property value="name"/><br/>
<s:property value="password"/><br/>
<s:property value="email"/><br/>
</fieldset>
</s:iterator>
下载此示例
评论前必须登录!
注册