forked from MagicBane/Server
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.5 KiB
55 lines
1.5 KiB
/* |
|
* Copyright 2013 MagicBane Emulator Project |
|
* All Rights Reserved |
|
*/ |
|
package engine.pooling; |
|
|
|
import engine.gameManager.ConfigManager; |
|
|
|
import java.sql.Connection; |
|
import java.sql.DriverManager; |
|
import java.sql.SQLException; |
|
|
|
public class ConnectionPool extends LinkedObjectPool<Connection> { |
|
|
|
static { |
|
//Register the Driver |
|
try { |
|
Class.forName("com.mysql.cj.jdbc.Driver").newInstance(); |
|
} catch (InstantiationException | ClassNotFoundException | IllegalAccessException e) { |
|
// TODO Auto-generated catch block |
|
e.printStackTrace(); |
|
} |
|
} |
|
|
|
public ConnectionPool() { |
|
super(10); |
|
} |
|
|
|
@Override |
|
protected Connection makeNewObject() { |
|
// Protocol |
|
String sqlURI = "jdbc:mysql://"; |
|
sqlURI += ConfigManager.MB_DATABASE_ADDRESS.getValue() + ':' + ConfigManager.MB_DATABASE_PORT.getValue(); |
|
sqlURI += '/' + ConfigManager.MB_DATABASE_NAME.getValue() + '?'; |
|
sqlURI += "useServerPrepStmts=true"; |
|
sqlURI += "&cachePrepStmts=false"; |
|
sqlURI += "&cacheCallableStmts=true"; |
|
sqlURI += "&characterEncoding=utf8"; |
|
|
|
Connection out = null; |
|
try { |
|
out = DriverManager.getConnection(sqlURI, ConfigManager.MB_DATABASE_USER.getValue(), |
|
ConfigManager.MB_DATABASE_PASS.getValue()); |
|
} catch (SQLException e) { |
|
e.printStackTrace(); |
|
} |
|
|
|
return out; |
|
} |
|
|
|
@Override |
|
protected void resetObject(Connection obj) { |
|
|
|
} |
|
}
|
|
|