W taki sposób, pisząc zapytanie jako string itp. pisało się lata temu, nikt już tak nie pisze, bo to brzydkie ohydne i nieprzyjazne do używania/rozbudowy. Wszyscy używają ORMa i JPA. - To tak, żebyś miał świadomość.
Odpowiadając na pytanie, tak na prędze naklepałam, taki schemat, jak ja to widzę (pisane w przeglądarce, nie gwarantuję że się skompiluje :)):
public class DBTemplate(){
private static String URL = "jdbc:mysql://localhost:3306/";
private static String USER = "root";
private static String PASSWORD = "";
public Connection getConection(){
return DriverManager.getConnection(URK, USER, PASSWORD);
}
}
public class PersonManager extends DBTemplate {
public void addPerson() {
try {
Connection con = getConnection();
Statement stt = con.createStatement();
stt.execute("INSERT INTO osoba(imie, nazwisko, wiek, pesel) VALUES" +
"('jan', 'nowak', 25, 99999)");
stt.close();
con.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public void find() {
try {
Connection con = getConnection();
Statement stt = con.createStatement();
ResultSet res = stt.executeQuery("SELECT * FROM osoba WHERE nazwisko = 'nowak'");
res.close();
stt.close();
con.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
P.S.:@szweszwe zamknął połączenie, więc musiałby je ponownie otworzyć, więc bez sensu takie rozwiązanie, ale owszem mógłby skorzystać z tej samej zmiennej, tylko po co.