Java JDBC是否通过writer-to-client程序返回结果?

Java JDBC是否通过writer-to-client程序返回结果?,java,jdbc,Java,Jdbc,我正在尝试将mySQL结果返回到我的客户端程序。我认为它没有连接,因为我可以返回连接错误,但我相信所有设置都是正确的,并且以前在PHP连接上使用过它们吗 如果您只想返回字符串,以下是完整的代码: import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import ja

我正在尝试将mySQL结果返回到我的客户端程序。我认为它没有连接,因为我可以返回连接错误,但我相信所有设置都是正确的,并且以前在PHP连接上使用过它们吗

如果您只想返回字符串,以下是完整的代码:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.net.*;

public class TestDatabase extends HttpServlet {

    private static String message = "Error during Servlet processing";
    private static String inputStream;
    ResultSet rs;

    public void doPost(HttpServletRequest req, HttpServletResponse resp) {
        try {
            int len = req.getContentLength();
            byte[] input = new byte[len];

            ServletInputStream sin = req.getInputStream();
            int c, count = 0;
            while ((c = sin.read(input, count, input.length - count)) != -1) {
                count += c;
            }

            sin.close();
            String inString = new String(input);
            int index = inString.indexOf("=");
            String value = inString.substring(index + 1);
            inputStream = URLDecoder.decode(value, "UTF-8");

        } catch (IOException e) {

        }

        try {
            responseWriter(resp);
        } catch (SQLException e) {

            e.printStackTrace();
        }
    }// end of requestReader

    public void responseWriter(HttpServletResponse resp) throws SQLException {



        try {
            Class.forName("com.mysql.jdbc.Driver");
            Connection con = DriverManager.getConnection("jdbc:mysql://server.co.uk:port/dbName?user=UserName&password=PassWord");

            Statement st = (Statement) con.createStatement();
            rs = st.executeQuery("SELECT * FROM MyTable;");

        } catch (Exception e){
            System.out.println("fail");
        }

        while (rs.next()){
            String output = rs.getString("column_name");
        }

        try {
            resp.setStatus(HttpServletResponse.SC_OK);
            OutputStreamWriter writer = new OutputStreamWriter(
            resp.getOutputStream());
            writer.write(output);
            writer.flush();
            writer.close();

        } catch (IOException e) {

        }

    }// end of responseWriter

}// end of class
编辑:我相信这是在抛出ClassNotFoundException

在public void doPost()方法中,您不会抛出
抛出SQLException,IOException

请澄清您试图执行的无效操作。我相信它没有连接,但我未显示的输入数据是正确的。我想知道我的代码中是否有错误导致连接失败?您收到了什么错误消息?它抛出ClassNotFoundException?请添加更多信息。当您通过url调用Servlet时,会显示ClassNotFoundException?您是否检查过MySQL JDBC的jar是否在WEB-INF\lib文件夹中?