Reputation: 75
I'm new at this area programming and I got some problems with driver, kinda:
MySql is working fine when I'm using it directly with client, problem is I can't make a connection tomcat with MySql
I put all my drivers at WEB-INF/lib
using mysql 5.7, tomcat 9.1, java 8, IntellijIdea 2016.1.1
java.sql.SQLException: No suitable driver found for jdbc:mysql/localhost:3306/world at java.sql.DriverManager.getConnection(DriverManager.java:689) at java.sql.DriverManager.getConnection(DriverManager.java:247) at Db.main(Db.java:20)
so here is my code:
import java.io.Serializable;
import java.sql.*;
public class Db implements Serializable{
public static void main(String args[]){
Connection connection;
final String dbURL = "jdbc:mysql/localhost:3306/world";
final String username = "root";
final String pswd = "******";
try{
DriverManager.getDrivers();
connection = DriverManager.getConnection(dbURL,username,pswd);
Statement statement = connection.createStatement();
String query = "SELECT * FROM city WHERE Name LIKE 'New%'";
ResultSet result = statement.executeQuery(query);
while(result.next()){
int id = result.getInt("ID");
String name = result.getString("Name");
String cCode = result.getString("CountryCode");
String district = result.getString("District");
int pop = result.getInt("Population");
System.out.print("id = "+id+"</br>Name = "+name+
"</br>Code = "+cCode+"</br>District = "+district+
"</br>Population = "+pop+"</br>");
}
}catch (SQLException e){
e.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}
}
}
Upvotes: 2
Views: 8760
Reputation: 159185
Syntax for MySQL JDBC URL is:
The general format for a JDBC URL for connecting to a MySQL server is as follows, with items in square brackets ([ ]) being optional:
jdbc:mysql://[host1][:port1][,[host2][:port2]]...[/[database]][?propertyName1=propertyValue1[&propertyName2=propertyValue2]...]
Here is a simple example for a connection URL:
jdbc:mysql://localhost:3306/sakila?profileSQL=true
Your URL jdbc:mysql/localhost:3306/world
is missing a :/
after mysql
.
Port number defaults to 3306
, so your URL should be:
jdbc:mysql://localhost/world
Upvotes: 3