从 servlet 获取值并将其显示在 JSP 的表中 [重复]
Posted
技术标签:
【中文标题】从 servlet 获取值并将其显示在 JSP 的表中 [重复]【英文标题】:Fetching value from servlet and showing it in table in JSP [duplicate] 【发布时间】:2015-11-02 07:13:01 【问题描述】:我正在尝试通过 servlet 将值从 mysql 表显示到 jsp 表,我已经完成了以下操作 在 BookSaleAuctionServlet 中
con = DriverManager.getConnection("jdbc:mysql://localhost/logins", "root", "");
try
ArrayList<String> arr = new ArrayList<String>();
Statement stmt = con.createStatement();
ResultSet rst = stmt.executeQuery
("SELECT m.id,m.username,m.address,m.email,m.contact FROM members m");
request.setAttribute("memberList", rst);
request.getRequestDispatcher("MemberDetail.jsp").forward(request, response);
在 MemberDetail.jsp 中
<p>---------$memberList</p>
<table border="1">
<thead>
<tr>
<th>Name</th>
<th>Address</th>
<th>Contact</th>
<th>Email</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<c:forEach var="row" items="$memberList">
<tr>
<td><c:out value="$row.id"/> </td>
<td><c:out value="$row"></c:out> </td>
<td><c:out value="$row[0]"></c:out> </td>
<td></td>
<td><a href="MemberDetailUpdate.jsp" name="Edit">Edit</a> </td>
</tr>
</c:forEach>
</tbody>
</table>
现在我无法获取表中的值,来自$memberList
的值是com.mysql.jdbc.JDBC4ResultSet@166d6d3
我不知道如何获取价值,请帮助
【问题讨论】:
你应该传递列表而不是结果集 我希望这个链接能工作***.com/questions/384189/… 谢谢,但我更改了整体代码并从 jsp 执行 然后添加 while (resultSet.next()) 并执行 foreach 【参考方案1】:假设你有一个类 User 有以下属性:-
class user
private int id;
private String username;
private String address;
private String email;
private String contact;
public int getId()
return id;
public void setId(int id)
this.id = id;
public String getUsername()
return username;
public void setUsername(String username)
this.username = username;
public String getAddress()
return address;
public void setAddress(String address)
this.address = address;
public String getEmail()
return email;
public void setEmail(String email)
this.email = email;
public String getContact()
return contact;
public void setContact(String contact)
this.contact = contact;
在你的 servlet 中:-
ArrayList<user> member= new ArrayList<user>();
while(rst.next())
user myUser = new user();
myUser.setUsername(rst.getString("name"));
myUser.setId(rst.getInt("id");
myUser.setAddress(rst.getString("address"));
myUser.setEmail(rst.getString("email"));
myUser.setContact(rst.getString("contact"));
member.add(myUser);
request.setAttribute("memberList", member);
在你的 Jsp 中:-
<c:forEach var="row" items="$memberList">
<tr>
<td><c:out value="$row.id"/> </td>
<td><c:out value="$row.username"></c:out> </td>
<td><c:out value="$row.address"></c:out> </td>
<td><c:out value="$row.email"></c:out> </td>
<td><c:out value="$row.contact"></c:out> </td>
<td></td>
<td><a href="MemberDetailUpdate.jsp" name="Edit">Edit</a> </td>
</tr>
</c:forEach>
【讨论】:
以上是关于从 servlet 获取值并将其显示在 JSP 的表中 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
在java中将Arraylist值从servlet传递到JSP?
怎么从servlet传递一个值,然后在一个jsp页面得到这个值
在jsp的<script></script>中怎么获取servlet传过来的参数呢??我想接收从servlet类传过来的数据显示出来