无法使用数据表显示数据库表值



我有一个豆类员工,其属性id,name以及公共getter和setter。

我使用以下 bean 进行数据库连接并从数据库表中获取值。

桌豆.java:

  public class TableBean{
    public Connection getVConnection() throws Exception{
      String driver = "oracle.jdbc.driver.OracleDriver";
      String url = "jdbc:oracle:thin:@localhost:1521:globldb3";
      String username = "scott";
      String password = "tiger";
      Class.forName(driver);
      Connection conn = DriverManager.getConnection(url, username, password);
      return conn;
      }    
    public List<Employee> getPerInfoAll() {
    int i = 0;
    Connection conn = null;
    PreparedStatement pstmt = null;
    List<Employee> perInfoAll = new ArrayList(); 
     try {
        conn = getVConnection();
            String query = "select * from employee where e_id>5400";
            pstmt = conn.prepareStatement(query);
            rs = pstmt.executeQuery();
            while(rs.next()){
           System.out.println(rs.getString(1));
               perInfoAll.add(i,newEmployee(rs.getInt(1),rs.getString(2)));
               i++;
             }
             pstmt.close();
             rs.close();
             conn.close();    
      }catch (Exception e){
           e.printStackTrace();
      }
     return perInfoAll;
     }

以下是 jsf 页面:

 <h:dataTable value="#{TableBean.perInfoAll}" var="e">
        <h:column>
            <f:facet name="header">Employee id</f:facet>
            <h:outputText value="#{e.id}">
        </h:column>
        <h:column>
            <f:facet name="header">Employee name</f:facet>
                     <h:outputText value="#{e.name}">
        </h:column>
    </h:dataTable>

请回复。提前谢谢。

我认为这可能是(再次)getter/setter方法命名的问题。如果您的住宿已命名

private List<Employee> perInfoAll

getter 方法必须是

public List<Employee> getPerInfoAll() { ... }

请注意方法名称中的大写字母"P"。

此外,您不需要在面部表情中的 el 表达式后面使用分号。

相关内容

  • 没有找到相关文章