为什么jstl的标签读不出?急啊!
这是声明:<%@pagelanguage="java"contentType="text/html;charset=utf-8"pageEncoding="utf-8"%...
这是声明:
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
这是读不出的内容:
<c:forEach items="${users}" var="user">
<tr>nihao</tr>
<tr>
<td align="center" width="9%">
${user.id }
</td>
<td align="center" width="6%">
网站名称:
</td>
<td align="center" width="16%">
用户名:
</td>
<td align="center" width="16%">
用户密码:
</td>
<td align="center" width="16%">
操作
</td>
</tr>
</c:forEach>
这是我的jdbc方法:
public List findUsers() {
List list =new ArrayList();
Connection conn=null;
PreparedStatement ps=null;
ResultSet rs =null;
try{
conn =JDBCConnection.getConnection();
String sql="select * from site";
ps=conn.prepareStatement(sql);
rs =ps.executeQuery();
while( rs.next()){
User user=new User();
user.setId(rs.getInt(1));
user.setSiteName(rs.getString(2));
user.setUserName(rs.getString(3));
user.setPassWord(rs.getString(4));
list.add(user);
System.out.println(user.getId()+"----------------");
}
}catch (Exception e) {
e.printStackTrace();
}finally{
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
return list;
}
我的action 中:
public class ShowUsersAction extends ActionSupport{
private List<User> users;
private IDBMethod dbMethod =new DBMethod();
public String execute(){
String result="success";
users =dbMethod.findUsers();
return result;
}
public List<User> getUsers() {
return users;
}
public void setUsers(List<User> users) {
this.users = users;
}
}
请大家找找,为什么javabean 读不出来。那System.out.println(user.getId()+"----------------"); 可以打印 展开
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
这是读不出的内容:
<c:forEach items="${users}" var="user">
<tr>nihao</tr>
<tr>
<td align="center" width="9%">
${user.id }
</td>
<td align="center" width="6%">
网站名称:
</td>
<td align="center" width="16%">
用户名:
</td>
<td align="center" width="16%">
用户密码:
</td>
<td align="center" width="16%">
操作
</td>
</tr>
</c:forEach>
这是我的jdbc方法:
public List findUsers() {
List list =new ArrayList();
Connection conn=null;
PreparedStatement ps=null;
ResultSet rs =null;
try{
conn =JDBCConnection.getConnection();
String sql="select * from site";
ps=conn.prepareStatement(sql);
rs =ps.executeQuery();
while( rs.next()){
User user=new User();
user.setId(rs.getInt(1));
user.setSiteName(rs.getString(2));
user.setUserName(rs.getString(3));
user.setPassWord(rs.getString(4));
list.add(user);
System.out.println(user.getId()+"----------------");
}
}catch (Exception e) {
e.printStackTrace();
}finally{
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
return list;
}
我的action 中:
public class ShowUsersAction extends ActionSupport{
private List<User> users;
private IDBMethod dbMethod =new DBMethod();
public String execute(){
String result="success";
users =dbMethod.findUsers();
return result;
}
public List<User> getUsers() {
return users;
}
public void setUsers(List<User> users) {
this.users = users;
}
}
请大家找找,为什么javabean 读不出来。那System.out.println(user.getId()+"----------------"); 可以打印 展开
展开全部
你是struts2吧。 默认要用ognl取值。 你如果用jstl,在action里的execute方法的末尾请加上request.setAttributer("users",users); 或session.setAttributer("users",users); 然后再jsp里面:
<c:forEach items="${users}" var="user"> 加上 scope="request" 或 scope=“session” 。这样应该没问题了。
<c:forEach items="${users}" var="user"> 加上 scope="request" 或 scope=“session” 。这样应该没问题了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询