diff options
Diffstat (limited to 'src/dao/JDBC.java')
-rw-r--r-- | src/dao/JDBC.java | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/src/dao/JDBC.java b/src/dao/JDBC.java new file mode 100644 index 0000000..714803e --- /dev/null +++ b/src/dao/JDBC.java | |||
@@ -0,0 +1,90 @@ | |||
1 | package dao; | ||
2 | |||
3 | import java.sql.Connection; | ||
4 | import java.sql.DriverManager; | ||
5 | import java.sql.SQLException; | ||
6 | |||
7 | /** | ||
8 | * connexion à la BDD avec JDBC | ||
9 | * tous les paramètres de connexion et les setters sont statiques | ||
10 | * le nom de la table sélectionnée est dans ModelCRUD | ||
11 | */ | ||
12 | abstract public class JDBC | ||
13 | { | ||
14 | private static String dbms="mysql"; | ||
15 | private static String strClassName = "com.mysql.cj.jdbc.Driver"; | ||
16 | private static String port = "3306"; | ||
17 | private static String dbname; | ||
18 | private static String login; | ||
19 | private static String password; | ||
20 | private static String host= "localhost"; | ||
21 | private static String strUrl; | ||
22 | |||
23 | protected Connection getConnection() throws SQLException, ClassNotFoundException | ||
24 | { | ||
25 | Class.forName(strClassName); | ||
26 | return DriverManager.getConnection(strUrl, login, password); | ||
27 | // try { | ||
28 | // Class.forName(strClassName); // chargement du driver | ||
29 | // return DriverManager.getConnection(strUrl, login, password); | ||
30 | // } | ||
31 | // catch(ClassNotFoundException e) { | ||
32 | // System.err.println("Driver non chargé !"); | ||
33 | // e.printStackTrace(); | ||
34 | // } | ||
35 | // catch(SQLException e) { | ||
36 | // e.printStackTrace(); | ||
37 | // } | ||
38 | // return null; | ||
39 | } | ||
40 | |||
41 | // setters | ||
42 | public static void setHost(String host) { | ||
43 | JDBC.host = host; | ||
44 | } | ||
45 | public static void setDBMS(String dbms) { | ||
46 | JDBC.dbms = dbms; | ||
47 | if(dbms == "mysql") | ||
48 | { | ||
49 | JDBC.strClassName = "com.mysql.cj.jdbc.Driver"; | ||
50 | JDBC.port = "3306"; | ||
51 | } | ||
52 | else if(dbms == "mariadb") | ||
53 | { | ||
54 | JDBC.strClassName = "org.mariadb.jdbc.Driver"; | ||
55 | JDBC.port = "3306"; | ||
56 | } | ||
57 | } | ||
58 | private static void setStrUrl() { | ||
59 | JDBC.strUrl = "jdbc:" + dbms + "://" + host + ":" + port + "/" + dbname; | ||
60 | } | ||
61 | public static void setDbName(String dbName) { | ||
62 | JDBC.dbname = dbName; | ||
63 | } | ||
64 | public static void setLogin(String login) { | ||
65 | JDBC.login = login; | ||
66 | } | ||
67 | public static void setMotdepasse(String motdepasse) { | ||
68 | JDBC.password = motdepasse; | ||
69 | } | ||
70 | public static void setInfos(String host, String dbms, String dbname, String login, String password) | ||
71 | { | ||
72 | JDBC.dbname = dbname; | ||
73 | JDBC.login = login; | ||
74 | JDBC.password = password; | ||
75 | JDBC.host = host; | ||
76 | setDBMS(dbms); | ||
77 | JDBC.setStrUrl(); | ||
78 | } | ||
79 | |||
80 | // public void close() | ||
81 | // { | ||
82 | // try { | ||
83 | // this.conn.close(); // libérer le slot (même principe que l'attaque DDOS) | ||
84 | // this.conn = null; // pour pouvoir réinstancier avec d'autres paramètres | ||
85 | // } | ||
86 | // catch (SQLException e) { | ||
87 | // e.printStackTrace(); | ||
88 | // } | ||
89 | // } | ||
90 | } | ||