summaryrefslogtreecommitdiff
path: root/src/dao/JDBC.java
blob: 714803e67334b82e7c8036ae07b75405aa2889d8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
package dao;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

/**
 * connexion à la BDD avec JDBC
 * tous les paramètres de connexion et les setters sont statiques
 * le nom de la table sélectionnée est dans ModelCRUD 
 */
abstract public class JDBC
{
	private static String dbms="mysql";
	private static String strClassName = "com.mysql.cj.jdbc.Driver";
	private static String port = "3306";
	private static String dbname;
	private static String login;
	private static String password;
	private static String host= "localhost";
	private static String strUrl;
	
	protected Connection getConnection() throws SQLException, ClassNotFoundException
	{
		Class.forName(strClassName);
		return DriverManager.getConnection(strUrl, login, password);
//		try {
//			Class.forName(strClassName); // chargement du driver
//			return DriverManager.getConnection(strUrl, login, password);
//		}
//		catch(ClassNotFoundException e) {  
//			System.err.println("Driver non chargé !");
//			e.printStackTrace();
//		}
//		catch(SQLException e) {
//			e.printStackTrace();
//		}
//		return null;
	}
	
	// setters
	public static void setHost(String host) {
		JDBC.host = host;
	}
	public static void setDBMS(String dbms) {
		JDBC.dbms = dbms;
		if(dbms == "mysql")
		{
			JDBC.strClassName = "com.mysql.cj.jdbc.Driver";
			JDBC.port = "3306";
		}
		else if(dbms == "mariadb")
		{
			JDBC.strClassName = "org.mariadb.jdbc.Driver";
			JDBC.port = "3306";
		}
	}
	private static void setStrUrl() {
		JDBC.strUrl = "jdbc:" + dbms + "://" + host + ":" + port + "/" +  dbname;
	}
	public static void setDbName(String dbName) {
		JDBC.dbname = dbName;
	}
	public static void setLogin(String login) {
		JDBC.login = login;
	}
	public static void setMotdepasse(String motdepasse) {
		JDBC.password = motdepasse;
	}
	public static void setInfos(String host, String dbms, String dbname, String login, String password)
	{
		JDBC.dbname = dbname;
		JDBC.login = login;
		JDBC.password = password;
		JDBC.host = host;
		setDBMS(dbms);
		JDBC.setStrUrl();
	}
	
//	public void close()
//	{
//		try {
//			this.conn.close(); // libérer le slot (même principe que l'attaque DDOS)
//			this.conn = null; // pour pouvoir réinstancier avec d'autres paramètres
//		}
//		catch (SQLException e) {
//			e.printStackTrace();
//		}
//	}
}