如何使用display:table显示数据列表

时间:2014-08-30 16:32:42

标签: hibernate struts2

我必须以jsp形式显示公司名称和他们自己的联系人列表

-company1 
    contact1
    contact2
-company2
    contact1
    contact2
..............

我不知道如何做任何建议或示例链接? PS:在DB中我有公司表和联系人(由FK相关)

1 个答案:

答案 0 :(得分:0)

如果你正在使用hibernate,你可以使用你的DAO来获取信息一旦获得信息(即List公司)你可以用ajax和json首先完成它你必须下载Struts2的json插件 将其粘贴到Maven pom文件中或下载jar文件

<dependency>
    <groupId>org.apache.struts</groupId>
    <artifactId>struts2-json-plugin</artifactId>
    <version>2.3.16.3</version>
</dependency>

为了获得你的json对象,你必须序列化所有的clases

public class Company implements Serializable {// code getters; setters;}

并在您的操作类中

@ParentPackage("json-default")
@Action(value = "getCompanies", results = {
@Result(type = "json", name = "success")})
public class FetchCompanies extends ActionSupport {
     public List<Company> listOfCompanies = new ArrayList<Company>();

     @Override
     public String execute() {
        CompanyDAO dao = new CompanyDAO();
        listOfCompanies = dao.query("FROM Company");
        return SUCCESS;
    }

    //Getter Setter
}

然后使用ajax调用创建一个.js文件来填充表格

$(document).ready(function() {
    $.ajax({
        url: "getCompanies.action",
        type: "POST",
        dataType: "json",
        success: function(data) {
            jQuery.each(data.listOfCompanies, function(i, val) {
                $('#yourBody').append("<tr><td>" + val.attribute1OfYourCompanyClass + "</td></tr>");
            });
        }
    });
});

这就是你的html看起来像

的样子
       <div>
            <table>
                <thead>
                    <tr>
                        <th>Attribute1</th>
                    </tr>
                </thead>
                <tbody id="yourBody">
                    //In this section ajax call will insert your information
                </tbody>
            </table> 
        </div>