Je suis nouveau sur JDBC et j'essaie d'établir une connexion avec une base de données MySQL . J'utilise Connector/J driver, mais je ne trouve pas la chaîne de connexion JDBC pour ma méthode Class.forName()
.
En supposant que votre pilote est dans le chemin,
String url = "jdbc:mysql://localhost/test";
Class.forName ("com.mysql.jdbc.Driver").newInstance ();
Connection conn = DriverManager.getConnection (url, "username", "password");
Avez-vous lu la documentation?
https://dev.mysql.com/doc/connector-j/en/connector-j-reference-configuration-properties.html
Une chaîne de connexion de base ressemble à:
jdbc:mysql://localhost:3306/dbname
La chaîne class.forName est "com.mysql.jdbc.Driver", que vous pouvez trouver (modifier: maintenant sur la même page).
"jdbc:mysql://localhost"
De la documentation Oracle ..
jdbc:mysql://[Host][,failoverhost...]
[:port]/[database]
[?propertyName1][=propertyValue1]
[&propertyName2][=propertyValue2]
Host: port est le nom d'hôte et le numéro de port de l'ordinateur hébergeant votre base de données. Si non spécifié, les valeurs par défaut d'hôte et de port sont 127.0.0.1 et 3306, respectivement.
base de données est le nom de la base de données à laquelle se connecter. Si non spécifié, une connexion est établie sans base de données par défaut.
failover est le nom d'une base de données en attente (MySQL Connector/J prend en charge le basculement).
propertyName = propertyValue représente une liste facultative de propriétés, séparées par des esperluettes. Ces attributs vous permettent d’instruire MySQL Connector/J d’exécuter diverses tâches.
C'est très simple :
jdbc:mysql://<hostname>:<port>/<dbname>?prop1
etc . où <hostname>
et <port>
sont indiqués dans l'onglet de connexion.Il sera principalement localhost: 3306. <dbname>
sera trouvé sous l'onglet Profil système dans Nom du service Windows. La valeur par défaut sera principalement MySQL5<x>
où x est le numéro de version, par exemple. 56 pour MySQL5.6 et 55 pour MySQL5.5, etc. Vous pouvez également spécifier votre propre nom de service Windows pour vous connecter.Pour Mysql, la chaîne de connexion du pilote jdbc est com.mysql.jdbc.Driver . Utilisez le code suivant pour vous connecter: -
class DBConnection {
private static Connection con = null;
private static String USERNAME = "your_mysql_username";
private static String PASSWORD = "your_mysql_password";
private static String DRIVER = "com.mysql.jdbc.Driver";
private static String URL = "jdbc:mysql://localhost:3306/database_name";
public static Connection getDatabaseConnection(){
Class.forName(DRIVER);
return con = DriverManager.getConnection(URL,USERNAME,PASSWORD);
}
}
Comme la réponse semble avoir déjà été répondue, il n’ya pas grand chose à ajouter, mais j’aimerais ajouter une chose aux réponses existantes ... C'est la façon de charger la classe du pilote JDBC pour mysql.
com.mysql.jdbc.Driver
Mais ceci est obsolète maintenant. La nouvelle classe de pilote est maintenant
com.mysql.cj.jdbc.Driver
De plus, le pilote est automatiquement enregistré via SPI et le chargement manuel de la classe de pilote est généralement inutile.
Connection conn = null;
//default -root
String userName = "mysqlusername";
String password = "yourpassword";
String url = "jdbc:mysql://hostname/databasename";
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection(url, userName, password);
conn.close();
mise à jour pour mySQL 8 String jdbcUrl = "jdbc: mysql: // hôte local: 3306/youdatabase? useSSL = false & serverTimezone = UTC";
Dans mon cas ->
Class.forName("com.mysql.jdbc.Driver");
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/mini", "/*USERNAME*/", "/*PASSWORD*/);
protocole // [hôtes] [/ base de données] [? propriétés]
Si vous n'avez aucune propriété, ignorez-le, alors ce sera comme
jdbc: mysql: //127.0.0.1: 3306/test
jdbc: mysql est le protocole 127.0.0.1: est l'hôte et 3306 le numéro de port test est la base
String url = "jdbc:mysql://localhost:3306/dbname";
String user = "user";
String pass = "pass";
Class.forName ("com.mysql.jdbc.Driver").newInstance ();
Connection conn = DriverManager.getConnection (url, user, pass);
3306
est le port par défaut pour mysql.
Si vous utilisez Java 7, vous n'avez même pas besoin d'ajouter l'instruction Class.forName("com.mysql.jdbc.Driver").newInstance ();
. La gestion automatique des ressources (ARM) est ajoutée à JDBC 4.1, qui est fourni par défaut avec Java 7.
Le format général d’une URL JDBC pour la connexion à un serveur MySQL est le suivant, les éléments entre crochets ([]) étant facultatifs:
jdbc:mysql://[Host1][:port1][,[Host2][:port2]]...[/[database]] »
[?propertyName1=propertyValue1[&propertyName2=propertyValue2]...]