这段代码在java中运行后没有显示输出?
为什么这段代码在Netbeans中运行后不显示输出?在mysql中连接到数据库后,应该要求“输入用户名进行搜索”。我已经使用MySql在Netbeans 8.0.2中创建了数据库和表。正如我在服务面板中看到的那样,所有驱动程序都安装正确。我在webservice上使用Netbeans 8.0.2。我不确定这是JDBC问题还是其他问题,因为我可以从Netbeans 8.0.2完美地访问所有数据库和表。请帮忙这段代码在java中运行后没有显示输出?,java,mysql,Java,Mysql,为什么这段代码在Netbeans中运行后不显示输出?在mysql中连接到数据库后,应该要求“输入用户名进行搜索”。我已经使用MySql在Netbeans 8.0.2中创建了数据库和表。正如我在服务面板中看到的那样,所有驱动程序都安装正确。我在webservice上使用Netbeans 8.0.2。我不确定这是JDBC问题还是其他问题,因为我可以从Netbeans 8.0.2完美地访问所有数据库和表。请帮忙 public class Passwordchecker{ public static v
public class Passwordchecker{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
try {
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/checksql", "username", "password");
Statement stmt = con.createStatement();
char answer;
do{
System.out.print("Enter username to search for: ");
String name = sc.next();
String SQL = "SELECT * FROM people WHERE name='" + name + "'";
ResultSet rs = stmt.executeQuery(SQL);
if(rs.next()) {
System.out.println("Success!");
} else {
System.out.println("Failure!");
}
System.out.print("Do you want to search for another name? (Y/N): ");
answer = sc.next().charAt(0);
} while(answer == 'Y' || answer == 'y');
} catch(Exception e) {
e.printStackTrace();
}
}
如果没有得到任何结果,是因为代码执行引发了异常。当执行到达异常部分时,没有更多的代码要执行,因此程序完成,并且不会在控制台上显示任何内容 我猜
语句stmt=con.createStatement()代码>部件正在引发异常。请尝试执行以下代码:
System.out.print("Posible Failure 1");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/checksql", "username", "password");
System.out.print("Posible Failure 2");
statement stmt = con.createStatement();
System.out.print("Posible Failure 3");
并在例外部分添加此行:
catch(Exception e) {
e.printStackTrace();
}
这将告诉您异常抛出的内容和位置
确保MYSQL服务正在运行,并且您必须拥有所需的所有导入。您可以尝试调试代码
这里硬编码一个名字
String name = sc.next();
差不多
String name = "An Existing name in DB";
您的捕获没有任何打印异常的机制,所以您永远不会知道发生了什么。修改捕获:
catch(Exception e) {
e.printStackTrace();
}
执行此操作并让我知道我们将从那里开始。您是否检查了代码:
您需要这些导入
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Scanner;
在您提供的代码中。您最后错过了“}”。检查它。您是否尝试输入用户名System.out.print
通常是行缓冲的,这意味着它只会显示在println
或刷新上。我认为您有SQLException,因为连接错误。如果在尝试新代码后,您得到SQLException,请查看此网站我需要帮助!有什么解决办法吗?如果你不打印抛出代码的异常,我帮不了你。确保所有导入都已完成,并且mysql服务必须正在运行。它现在运行正常。我将mysql连接器j添加到我的netbeans目录中。另外,我已经对代码做了一些调整,现在可以访问数据库了。谢谢,它现在工作得很好。你帮了大忙。