我想从数据库表中选择最后5个条目并将其显示在页面上。如何使用JSP实现它?

时间:2016-04-18 13:36:11

标签: html sql jsp

我想从数据库表中选择最后5个条目。我的数据库中有一列ID(int),Product(字符串),Version(字符串),Description(字符串)。

假设我在数据库中有50个条目,我需要从表中选择最后5个条目(即46,47,48,49和50)并将其打印在HTML页面上。我怎么能用JSP做到这一点?

下面是我的示例代码:

<%@ page import="java.util.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.text.*" %>
<%@ page language = "java" %> 
 <%   
    int id=0;
Connection connect2=null;
Statement state2=null;
ResultSet result2=null;
Connection connect=null;
Statement state=null;
ResultSet result=null;
try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");  
    connect2=DriverManager.getConnection("jdbc:odbc:ppbu"); 
    state2 = connect2.createStatement();    
    String strQuery2 = "select MAX(ID) from kb_articles_list";  
    result2 = state2.executeQuery(strQuery2);
    while(result2.next())
    {id=result2.getInt(1);
    }
}finally {
        try {
          if (state2 != null)
            state2.close();
        }  catch (SQLException e) {}
        try {
          if (connect2 != null)
            connect2.close();
        } catch (SQLException e) {}
      }

    out.print(id);
    for(int a=0; a<5; a++)
      {    
   try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");   
    connect=DriverManager.getConnection("jdbc:odbc:ppbu");  
    state = connect.createStatement();  
    String strQuery = "select * from kb_articles_list where ID.equals(id)"; 
    result = state.executeQuery(strQuery);  
    while(result.next()){ 
            %>
            <option><%= result.getString(2)%></option>
        <% }state.close(); connect.close(); %>        
    <%    }catch (Exception e) {
            e.printStackTrace();}    

       id--;}%>

1 个答案:

答案 0 :(得分:0)

感谢您的时间。我使用下面的代码工作了。

String strQuery = "select * from kb_articles_list where ID="+id+"";