0

テーブルからいくつかの値を表示しようとしています。ゲッターとセッターを含む「ユーザー」クラスのオブジェクトに値を渡し、その後オブジェクトをリストに渡します。ただし、イテレータ タグを使用して jsp ファイルから値を表示することはできません。UserDetail クラスには、test1 変数と test2 変数のゲッターとセッターが含まれています。

以下のコードを見つけてください。

成功.jsp

<%@ taglib uri="/struts-tags" prefix="s" %>  
<html>
<head>
<title></title>
</head>
<body>      
    <h3>All Records:</h3>  
    <s:iterator value="list">  
    <fieldset>  
    <s:property value="test1"/><br/> 
    <s:property value="test2"/><br/>  
</fieldset>
    </s:iterator>  
</body>
</html>

test.java

package com.abc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;

public class test {

    private String test1;
    private String test2;
    ArrayList<UserDetails> list=new ArrayList<UserDetails>();  

    public String execute() {
        try {
            Class.forName("com.mysql.jdbc.Driver");
            Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test3", "test","test");
            PreparedStatement ps=conn.prepareStatement("SELECT * from testtable where data = "+test1);  
            ResultSet rs = ps.executeQuery();
            while(rs.next()) {
                UserDetails user = new UserDetails();
                user.setTest1(rs.getInt(1));
                user.setTest2(rs.getString(2));

                list.add(user);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return "SUCCESS";
    }


}

ガイドしてください。

4

3 に答える 3

1

クラスのリストの get メソッドが設定されていません。

public void setList(){}
public void getList(){}
于 2013-11-15T08:01:37.927 に答える
1

jsp の要素が Java レイヤーのオブジェクトにバインドされていません。

Java オブジェクトの内容を JSP に表示する必要がある場合は、
それら 2 つの間の参照を作成する必要があります。それらをバインドします。

于 2013-11-15T08:03:32.377 に答える
-1

オブジェクト UserDetails は、JAVA コードを使用して JSP にマップする必要があります。JSP では、${user.test1} や ${user.test2} などの値を参照できます。

于 2013-11-15T08:23:40.480 に答える