Пользователь пока ничего не рассказал о себе

Наибольший вклад в теги

Все теги (3)

Лучшие ответы пользователя

Все ответы (3)
  • Как сохранять данные из html страницы в приложении Android?

    @code_batya
    ORM+JPA+Hibernate+DAO.
    Соединяемся с базой, затем шлем ей запрос, потом обрабатываем ответ.
    Реализуем класс, хранящий элемент в бд как объект:
    @Entity
    @Table(name = "univer")//название таблицы в бд
    public class UniverDataSet {
        @Column(name="course")//название колонки в базе
        private String course;
        @Column(name="group")
        private String group;
    
        public UniverDataSet(String group, String course) {
            this.course = course;
            this.group = group;
        }
        //...getters
    }


    Как делается запрос к бд:
    public class UniverDAO {
        private Executor executor;
        //...
        public String getTimeTable(long id) throws SQLException {
            PreparedStatement stmt = executor.execQuery(
                    "select * from users where id = '" + id + "'",
                    resultSet -> {
                            resultSet.next();
                            return resultSet.getString(1);
                    }
            );
        }
    }
    
    class Executor {
        UsersDAO dao;
        //...
    
        public <T> T execQuery(String query, ResultHandler<T> handler) throws SQLException {
            PreparedStatement stmt = connection.preparedStatement(query);
            ResultSet resultSet = stmt.execute();
            T value = handler.handle(resultSet);
            resultSet.close();
            stmt.close();
            return value;
        }
    }
    
    interface ResultHandler {
        void handle(ResultSet resultSet) throws SQLException;
    }


    ResultHandler создан для того, чтобы была возможность закрыть ресурс resultSet внутри метода Executor.execQuery()
    Ответ написан
    Комментировать
  • Чем больше пользуетесь при разработке приложения под андроид - эмулятором или реальным телефоном?

    @code_batya
    На самом деле, делай как хочешь. И да, на смартфоне удобнее, и я всегда тестирую приложения на нем. Можно запускать встроенную в Android Studio виртуальную машину, но она сжирает OVERдофига системных ресурсов(сижу на Ubuntu 18.04). А так, все зависит от твоих предпочтений: нравится вживую - бери смартфон, не нравится - VM. Но опять же, смартфон накладывает некоторые ограничения: версия Android, root/no root и тд. Но я обычно ограничиваюсь телефоном.
    Ответ написан
    Комментировать