Java 接受JSP形式的SQL查询

Java 接受JSP形式的SQL查询,java,sql,postgresql,jsp,Java,Sql,Postgresql,Jsp,我使用的是:PostgreSQL、Netbeans、Tomcat服务器、JSP和HTML 为了避免问题重复,我试图清楚地解释它:): 我已经使用JDBC驱动程序通过几个表连接到数据库Uni。现在我要做的是,如果用户在表单中输入一个查询 Please enter a Query: ............... 像 或 或 如果用户输入查询,则应打印出结果。 所以我在这里卡住了,不知道如何用Java实现它 如果你想,我可以添加我的代码,但这将是对这篇文章太多。它只是一个简单的从JSP访问数据库

我使用的是:PostgreSQL、Netbeans、Tomcat服务器、JSP和HTML

为了避免问题重复,我试图清楚地解释它:):

我已经使用JDBC驱动程序通过几个表连接到数据库Uni。现在我要做的是,如果用户在表单中输入一个查询

 Please enter a Query: ...............

如果用户输入查询,则应打印出结果。 所以我在这里卡住了,不知道如何用Java实现它

如果你想,我可以添加我的代码,但这将是对这篇文章太多。它只是一个简单的从JSP访问数据库的过程

stringquery=request.getParameter(“query”);
String query = request.getParameter("query");
if(query!=null && !"".equals(query))
{
        Connection con = new DBConnection().getConnection();
        Statement st = con.createStatement();
        ResultSet rs = st.executeQuery(query);

        ResultSetMetaData rsmd = rs.getMetaData();
        int  totalColumn = rsmd.getColumnCount();


        out.println("<table border='1' style='border-collapse:collapse'>");
        out.println("<tr>");

        for(int i=1;i<=totalColumn;i++)
        {
            String columnName = rsmd.getColumnName(i);
            out.println("<th>"+columnName+"</th>");
        }
        out.println("</tr>");

        while(rs.next())
        {    
            out.println("<tr>");
            for(int col=1;col<=totalColumn;col++)
            {            
                Object obj= rs.getObject(col);                    
                out.println("<td>"+ String.valueOf(obj) +"</td>");
            } 
            out.println("</tr>");
        }
        out.println("</table>");
}
如果(查询!=null&&!“.equals(查询)) { Connection con=new DBConnection().getConnection(); 语句st=con.createStatement(); 结果集rs=st.executeQuery(查询); ResultSetMetaData rsmd=rs.getMetaData(); int totalColumn=rsmd.getColumnCount(); out.println(“”); out.println(“”);
对于(int i=1;i)您知道如何用简单的JAVA实现它吗?如果知道,那么您也可以用同样的方式在JSP中实现它。如果您阅读本页,您将了解到。只需在服务器端发布查询,并用简单的HTML将结果发送回客户端。
SELECT DISTINCT Student.name
FROM Student NATURAL JOIN Transcript JOIN Professor USING (pid)
WHERE Professor.name = 'Artem';
SELECT semester, year, COUNT(DISTINCT cid) AS NumberOfCourses
FROM Transcript
GROUP BY ..., ...
String query = request.getParameter("query");
if(query!=null && !"".equals(query))
{
        Connection con = new DBConnection().getConnection();
        Statement st = con.createStatement();
        ResultSet rs = st.executeQuery(query);

        ResultSetMetaData rsmd = rs.getMetaData();
        int  totalColumn = rsmd.getColumnCount();


        out.println("<table border='1' style='border-collapse:collapse'>");
        out.println("<tr>");

        for(int i=1;i<=totalColumn;i++)
        {
            String columnName = rsmd.getColumnName(i);
            out.println("<th>"+columnName+"</th>");
        }
        out.println("</tr>");

        while(rs.next())
        {    
            out.println("<tr>");
            for(int col=1;col<=totalColumn;col++)
            {            
                Object obj= rs.getObject(col);                    
                out.println("<td>"+ String.valueOf(obj) +"</td>");
            } 
            out.println("</tr>");
        }
        out.println("</table>");
}