There are 4 java files, DAOManager.java; Person.java; MySQLPersonDAO.java; DAOManager.java; MainDAO.java. Files are in the same folder.
PersonDAO.java
public interface PersonDAO {
public void savePerson(Person p) throws Exception;
}
Person.java
public class Person {
private int id;
private String name;
public Person(String n){
name = n;
}
public Person(int i, String n){
id = i;
name = n;
}
public int getId(){
return id;
}
public String getName(){
return name;
}
}
MySQLPersonDAO.java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class MySQLPersonDAO implements PersonDAO{
public void savePerson(Person person) throws Exception{
String name = person.getName();
//membuat koneksi, nama, db, user, password, menyesuaikan
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/namaDatabase?serverTimezone=UTC","root","");
//kerjakan mysql query
String query = "INSERT INTO person(name) VALUES('"+name+"')";
System.out.println(query);
Statement s = con.createStatement();
s.executeUpdate(query);
//tutup koneksi database
con.close();
}
}
DAOManager.java
public class DAOManager{
private PersonDAO personDAO;
public void setPersonDAO(PersonDAO person){
personDAO = person;
}
public PersonDAO getPersonDAO(){
return personDAO;
}
}
MainDAO.java
public class MainDAO{
public static void main(String args[]){
Person person = new Person("Ben");
DAOManager m = new DAOManager();
m.setPersonDAO(new MySQLPersonDAO());
try{
m.getPersonDAO().savePerson(person);
}catch(Exception e){
e.printStackTrace();
}
}
}
I've downloaded MySQL JDBC Driver (platform independent) and put mysql-connector-java-version.jar into /Library/Java/Extensions and restart my mac, but after I tried to compile it gave me this error:
user@user-MacBook-Pro per 9 % javac PersonDAO.java
user@user-MacBook-Pro per 9 % javac Person.java
user@user-MacBook-Pro per 9 % javac MySQLPersonDAO.java
MySQLPersonDAO.java:23: error: cannot find symbol
Statement s = con.createStatement();
^
symbol: class Statement
location: class MySQLPersonDAO
1 error
How to solve this so that I can connect my java files into MySQL database on my mac? Thanks in advance!
Downloaded MySQL JDBC Driver and put the .jar files into /Library/Java/Extensions, then tried to compile the java files.