Соответствующие разделы кода:
У меня есть таблица PEOPLE с моим столбец с автоматическим увеличением ID и столбец String NAME:
Код: Выделить всё
create table PEOPLE (
ID INTEGER auto_increment,
NAME CHARACTER VARYING(50)
);
Код: Выделить всё
public class PeopleDAO {
public static ObservableList getPeople() throws SQLException, ClassNotFoundException {
String sql = "SELECT * FROM PEOPLE";
try {
PreparedStatement statement = getConnection().prepareStatement(sql);
ResultSet rs = DBHelpers.executeQuerry(statement);
return getPeopleList(rs);
} catch (SQLException e {
throw e
}
}
public static ObservableList getPeopleList(ResultSet rs) throws SQLException, ClassNotFoundException {
ObservableList peopleList = FXCollections.observableArrayList();
while (rs.next()) {
Person person = new Person(
rs.getString("NAME");
peopleList.add(person);
}
return peopleList;
}
public static void insertPerson(String name) throws SQLException, ClassNotFoundException {
String sql = "INSERT INTO PEOPLE (NAME) VALUES (?)";
try {
PreparedStatement statement = getConnection().prepareStatement(sql);
statement.setString(1, name);
DBHelpers.executeUpdate(statement);
} catch (SQLException | ClassNotFoundException e) {
throw e;
}
}
}
Это мой драйвер, URL-адрес, соединение и т. д. getConnection() возвращает объект Connection и выполнениеQuery( ) и exeucteUpdate() делают то, что говорят (statement.executeQuery() и Statement.executeUpdate() соответственно)
Person.java
Код: Выделить всё
public class Person {
String name;
public Person(String name) {
this.name = name;
}
}
Код: Выделить всё
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
int ID;
При необходимости я могу опубликовать больше своего кода.
Подробнее здесь: https://stackoverflow.com/questions/783 ... rom-my-dao
Мобильная версия