我必须以jsp形式显示公司名称和他们自己的联系人列表
-company1
contact1
contact2
-company2
contact1
contact2
..............
我不知道如何做任何建议或示例链接? PS:在DB中我有公司表和联系人(由FK相关)
答案 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>