一尘不染

如何通过java类在jsp中显示值

jsp

这个问题不太可能对将来的访客有所帮助;它仅与较小的地理区域,特定的时间段或极为狭窄的情况(通常不适用于Internet的全球受众)有关。要获得使该问题更广泛适用的帮助请访问帮助中心

7年前关闭。

我有一个带有表和值的数据库。我想获取该数据并将其显示在jsp页面中。不想在jsp页面中编写查询,分离Java类,创建Java对象值,然后将其显示在jsp的select字段中。请帮我…

这是我的java类p

ublic class EmpBean {
                    public java.util.List dataList(){
                        ArrayList list=new ArrayList();
                        try{
                             Class.forName("driver");
                                   Connection con = DriverManager.getConnection("url", "user", "pwd");
                                   Statement st=con.createStatement();
                                   System.out.println("hiiiii");
                                   ResultSet rs=st.executeQuery("select * from employee");
                                   while(rs.next()){
                                       list.add(rs.getString("name"));
                                       list.add(rs.getString("address"));
                                       list.add(rs.getString("contactNo"));
                                       list.add(rs.getString("email"));


                        }
                                   System.out.println(rs.getString("contactNo"));
                        }
                        catch(Exception e){}
                        return   list;

                        }

                }

//and my jsp file
                <%@page language="java" import="java.util.*" %>
                <html>
                <body> 
                <table border="1" width="303">
                <tr>
                <td width="119"><b>Name</b></td>

                </tr>
                <%Iterator itr;%>
                <%EmpBean p = new EmpBean();
                List list= (List) p.dataList(); %>
                for (itr=list.iterator(); itr.hasNext(); ){
                %>
                <tr>
                <select name="" id="" style="width: 150px;"">
                                <option value="-1"><%=itr.next()%></option>
                </select>

                </tr>
                <%}%>
                </table>
                </body>
                </html>

阅读 224

收藏
2020-06-10

共1个答案

一尘不染

我认为你应该试试这个

    public class EmpBean {
                public java.util.List dataList(){
                    ArrayList list=new ArrayList();
                    try{
                         Class.forName("driver");
                               Connection con = DriverManager.getConnection("url", "user", "pwd");
                               Statement st=con.createStatement();
                               System.out.println("hiiiii");
                               ResultSet rs=st.executeQuery("select * from employee");
                               while(rs.next()){
                                   list.add(rs.getString("name"));
                                   list.add(rs.getString("address"));
                                   list.add(rs.getString("contactNo"));
                                   list.add(rs.getString("email"));


                    }
                               System.out.println(rs.getString("contactNo"));
                    }
                    catch(Exception e){}
                    return   list;

                    }

            }

假设此类正常运行,并且正在返回具有某些值的列表

现在在您的jsp页面上

           <%@page language="java" import="java.util.*" %>
            <html>
            <body> 
            <table border="1" width="303">
            <tr>
            <td width="119"><b>Name</b></td>

            </tr>
            <%
                  ArrayList list;
                  EmpBean emp = new EmpBean();
                  list = emp.dataList();
                  ArrayList li = (ArrayList) li.get(0);

            %>
            <tr>
            <select name="" id="" style="width: 150px;"">
                            <option value="-1"><%=li.get(1)%></option>
            </select>

            </tr>

            </table>
            </body>
            </html>

只是检查这段代码…可能会发生取值错误的情况,这里只是通过更改列表索引来检查值,以及是否可以用try
catch包围整个scriptlet内容,以便在发生异常时很容易找到错误…祝您好运,如果它不起作用,请不要担心,我会为您提供示例代码,以确保我在我的项目中使用此代码

2020-06-10