A co z tym prostym sposobem?!
java.sql.Driver d=new com.mysql.jdbc.Driver();
Zastanawiałem się też, dlaczego łączysz się w ten sposób z bazą danych?! Lepiej niech zarządza nim serwer.
Najpierw skonfiguruj plik context.xml
(jeśli używasz tomcat) w ten sposób:
<context>
<Resource name="_ds" auth="Container" type="javax.sql.DataSource"
maxActive="128" maxIdle="32" username="_admin" password="qwerty" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/dbname"/>
</context>
Następnie po prostu uzyskaj połączenie z tego zasobu w servlet/etc, tak jak poniżej:
public void init() {
try {
_ds = (DataSource) InitialContext.lookup("java:/comp/env/_ds");
} catch (Exception ex) {
}
}
private javax.sql.DataSource _ds;
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
try {
/*String driver = "com.mysql.jdbc.Driver";
con = null;
String username = "";
String password = "";
Class.forName("com.mysql.jdbc.Driver").newInstance();
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbName", "root", "password");*/
Connection con=_ds.getConnection();
Statement st = con.createStatement();
ResultSet mar = st.executeQuery("SELECT * FROM table");
Gson gson = new GsonBuilder().create();
response.setContentType("application/json");
response.setCharacterEncoding("utf-8");
con.close();
} catch (SQLException e) {
String message = e.getMessage();
}
Przy okazji, nie zapomnij skompilować pliku jar sterownika MySQL JDBC w <CATALINA_BASE>/lib
folder.