Как вставить данные в базу данных Postgres, используя Java Beans и теги jsp? - PullRequest
0 голосов
/ 10 июня 2018

Мне нужна твоя помощь.
Мне нужно разработать веб-приложение, состоящее из JSP и Java Bean.Файл JSP должен получить два параметра (имя и учетную запись), а затем вставить их в базу данных, используя только теги bean и jsp.Я начал что-то делать:
Java Bean:

    package beans;
    public class java1 {
        private String name = "";
        private String account = "";

        public String getName(){
            return name;
        }

        public String getAccount(){
            return account;
        }

        public void setName(String name){
            this.name = name;
        }

        public void setAccount(String account){
            this.account = account;
        }
    }

JSP

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <%@page import = "java.sql.*"%>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
        <%String nome = (String) request.getParameter("nome");
        String account = (String) request.getParameter("account");%>
        <jsp:useBean id = "esame" class = "beans.java1" scope = "page"/>
            <jsp:setProperty name = "esame" property = "name" value = "<%=nome%>"/>
            <jsp:setProperty name = "esame" property = "account" value = "<%=account%>"/>
    </head>
    <body>
        <h1>Nome: </h1>
        <jsp:getProperty name = "esame" property = "name"/>
        <h1>Account:</h1>
        <jsp:getProperty name = "esame" property = "account"/>

    </body>
</html>

Теперь сама страница Java Bean и jsp работают хорошо.Мне нужно знать, как получить эти два параметра и вставить их в базу данных.Структура таблицы будет такой:

users(name, account);

Я знаю, как вставить данные в базу данных, используя драйвер JDBC, вот пример метода:

public static void insert(String name, String account){
        String sql = "insert into users values('" + name + "', '" + account + "');";
        String url = "jdbc:postgresql://localhost/tests";
        Connection conn = null;
        Statement st = null;
        try{
            conn = DriverManager.getConnection(url);
            st = conn.createStatement();
            st.executeUpdate(sql);
            st.close();
            conn.close();
        }
        catch(SQLException ecc){
            System.out.println(ecc.getMessage());
        }
    }

Но как я могу сделать это, используя ТОЛЬКО Javaтеги bean и jsp?Извините за длинный вопрос, я только хотел прояснить.Спасибо

1 Ответ

0 голосов
/ 11 июня 2018

Если вам нужны ТОЛЬКО bean-компоненты и jsp (что действительно плохо), тогда вы можете просто поместить метод insert в класс java1, а затем вызвать его из jsp, например

<%    esame.insert(); %>

Конечно, вам понадобитсявторой JSP с формой для вставки данных.Если пользователь отправляет запрос, вы вызываете третий jsp, который вызывает метод вставки.

...