Как получить данные из базы данных MySQL с помощью сервлетов? - PullRequest
0 голосов
/ 11 июля 2019

Я создаю торговый сайт, используя html и css для внешнего интерфейса, базу данных mysql и сервлеты для внутреннего интерфейса. Я хочу, чтобы элементы, которые пользователь может приобрести, были динамически извлечены из базы данных с помощью сервлетов, где они уже сохранены, а затем, когда пользователь нажимает «Добавить в корзину», они должны быть добавлены в корзину. Я застрял в точке, где продукты должны быть получены динамически.

У меня есть таблица инвентаризации продуктов со столбцами:

pid       varchar(30)
pname     varchar(30)
price     int(4)
quantity  int(4)
image     blob
file_name varchar(255)

Код "

try {
    Class.forName("com.mysql.cj.jdbc.Driver");
    Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/amacon2","root","root");
    Statement st = con.createStatement();

    String query = "SELECT * from product";
    ResultSet rs = st.executeQuery(query);
    while (rs.next()) {
        String pid = rs.getString("pid");
        String pname = rs.getString("pname");
        int price = rs.getInt("price");
        int quantity = rs.getInt("quantity");
        Blob blob = rs.getBlob("image");
        byte byteArray[] = blob.getBytes((int)blob.length());
        response.setContentType("image/jpeg");
        OutputStream os = response.getOutputStream();
        os.write(byteArray);
        os.flush();
        os.close(); 

        // byte image = rs.getByte("image");
        String file_name = rs.getString("file_name");
        out.print(pid + "::");
        out.print(pname+ "::");
        out.print(price + "::");
        out.print(quantity + "::");
        // out.print(image + "::");
        out.print(file_name+ "::");
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...