在点击特定书籍图像时显示特定书籍信息

时间:2015-02-07 07:38:18

标签: image jsp servlets onclick

我有Books.jsp页面

此页面从数据库中检索bookname(bnm),并调用名为Books.java的servlet来检索图像并显示它。

<%@page import="javax.print.PrintService"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1" import="java.sql.*,java.io.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>BooksInfo</title>
</head>

<body>
    <form action="Next1.jsp" method="get">
        <%!Connection cn;
    Statement stm;
    ResultSet rs;
    ResultSetMetaData rsmd;
    PreparedStatement psmt;%>

        <%!public void jspInit() {
        try {
            Class.forName("oracle.jdbc.driver.OracleDriver");         
            System.out.println("Connection created");

            cn = DriverManager.getConnection(
                    "jdbc:oracle:thin:@localhost:1521:xe", "system", "hello");

        } catch (Exception e) {
            e.printStackTrace();
        }
    }%>


        <% 
            stm = cn.createStatement();
            rs = stm.executeQuery("select bnm,image from bookdemo");
            while (rs.next()) {
                String s = rs.getString(1);
        %>
        <table><tr><td>
        <a href="Info.jsp"><img src ="Books"></img></a>
        </td>
        <td>
        <%
            out.write(s);
        %>
        </td>
        <td>
        <input type="checkbox" name="book" value=<%=s%>>
        </td></tr></table>
        <%
            }
        %>
        <br><br>
        <input type="submit" value="Add & View Cart">
        </form>

</body>
</html>

问题: 现在点击一本特定的书我想在另一个Info.jsp上显示该书的信息。我该怎么办?如何知道点击某个书图像?

1 个答案:

答案 0 :(得分:0)

有很多解决方案。

  1. 如果您的图书名称和图书图像位于同一个表格中,则两者都有一个共同的ID。在这种情况下,单击书名后,另一个请求将转到servlet以获取图像,就像您为Bookname所做的那样。

  2. 如果您在数据库直接解决方案中的不同表格中的书名和图像将为书籍和图像提供通用名称,那么通过名称,您将能够从数据库中获取图像。

    < / LI>

    有多种解决方案。另一件事我不推荐Jsp中的数据库连接,以达到最佳实践和安全性。