Я делаю проект для колледжа, в котором мы должны создать полностью работающее Java-приложение, в комплекте с базовой системой входа пользователя с использованием JDBC.
Базовая система входа пользователя работает нормально, когда используется на MariaDB MySQL XAMPP.ветвление через localhost.
Очевидно, что система не будет работать вне этой конкретной сети, поэтому я искал способы, позволяющие мне постоянно размещать базу данных MySQL в сети, поэтому независимо от того, куда я иду, этоБазовая система входа пользователей работает и может быть показана всем, кто интересуется.
Затем я нашел db4free.net, и пока все выглядит по-порядку - работает PHPMyAdmin, и мне удалось успешно экспортировать и импортировать базу данных с помощьюимена пользователей и пароли от версии localhost до версии db4free.
Но у меня возникают проблемы с тем, как на самом деле указать приложению, чтобы оно подключалось к системам db4free, чтобы система входа работала как задумано.
Воткласс Java "модуль подключения", который обрабатывает соединение1011 *
package com.fixer.dal;
import java.sql.*;
public class Connection_Module {
public static Connection connector(){
java.sql.Connection cnx = null;
String driver = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://db4free.net:3306/db_fixer";
String user = "myuser";
String password = "mypassword";
try {
Class.forName(driver);
cnx = DriverManager.getConnection(url, user, password);
return cnx;
} catch (Exception e) {
return null;
}
}
}
А вот функция, которая проверяет базу данных, чтобы определить, совпадают ли имя пользователя и пароль с записанными данными (и, если это так, закрывает экран входа в систему и открывает «главный» экран):
Connection cnx = null;
PreparedStatement pst = null;
ResultSet rs = null;
public void login(){
String sql = "select * from usertable where username=? and password=?";
try {
pst = cnx.prepareStatement(sql);
pst.setString(1, Screen_Login_Username_Field.getText());
pst.setString(2, Screen_Login_Password_Field.getText());
rs = pst.executeQuery();
if(rs.next()){
Screen_Main Main = new Screen_Main();
Main.setVisible(true);
this.dispose();
cnx.close();
}else{
JOptionPane.showMessageDialog(null, "Invalid user or password.");
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, e);
}
}
И это в основном моя проблема.db4free.net дал мне хост ("db4free.net") и порт ("3306"), но я не знаю точно, куда они идут.Я попробовал некоторые методы, чтобы заставить его работать, основываясь на других вопросах, но ни один не смог успешно подключить меня к моей базе данных в их системах.
Что я делаю не так?