Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
#1

Основы ORMLite - Программирование Android

24.08.2016, 12:08. Просмотров 412. Ответов 9
Метки нет (Все метки)

Гуру, кто-нибудь подобным пользуется???

Обьясните "на пальцах" что такое ORMLite и чем оно облегчает работу???

Раньше для этих задач использовал ОЧЕНЬ СЛОЖНЫЙ "самопал" - не все случаи учтены, возможны мелкие ошибки...
Сейчас хочу попробовать выучить нормальные/современны технологии, но не знаю с какой стороны подойти и есть ли подобные технологии вообще...

Задача:
1) создать КЛАСС, в котором через список создать структуру таблиц, обновлять базу (где-то встречал как все структуры таблиц в XML хранят)

Не по теме:

раньше делал примерно так (в специальном классе "структуры"):
version=12;
t1=addtable("table1");
t1.addfield("field1", type_int);
t1.addfield("field2", type_str);
t1.addfield("field3", type_rec_id, "table3"); // ссылка на id другой таблицы
update_structure();
при этом если баз нет, то создаются, если полей нет- добавляются, если поля лишние-удаляются... есть проверка версии структуры через специальную системную таблицу и параметр там - это поможет сделать "обработку" перед исправлением структуры (например field2=field2+field1, перед удалением field1)


2) добавить запись через класс указывая лишь нужные поля.

Не по теме:

Раньше делал примерно так
t1=struct1.gettable("table1");
rec1 = t1.new();
rec1.set("field1", 123);
rec1.set("field2", "hello");
rec1.save();


3) поиск по фильтрам
4) заготовка для вывода списка в list

Не по теме:

для этого писал свой класс списка



Надо написать СЛОЖНУЮ учетную систему с десятком-двумя связанных таблиц в базе (и часто менять структуру у клиентов без потери данных), списками записей, редакторами записей!

Накидайте пли-и-из с какой стороны подойти??? Есть ли технологии, которые помогут в этом или стоит доработать свой "велосипед"?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.08.2016, 12:08     Основы ORMLite
Посмотрите здесь:

Работа с БД на USB носителе через OrmLite (Android 6) - Программирование Android
Имеется usb flash drive, в котором хранится БД SQLite. Нужна возможность чтения/записи данных в БД. Проблема возникла с получением...

Графика, основы - Программирование Android
Подскажите пожалуйста, как рисовать на одном холсте с двух графических классов? И если можно, пример где создаются экземпляры каждого из...

InvalidClassException при десериализации коллекции. ORMLite - Java SE
Здравствуйте, будьте добры подскажите в чём может быть проблема. (Клиент-сервер через сокет) Сервер сериализовал коллекцию и отправил на...

Основы - Java SE
package com.example.discrim; import android.content.Context; import android.content.res.Resources; import android.graphics.Canvas;...

Основы JS - JavaScript
Здравствуйте. Мне необходимо изучить JS для разработки скриптов под 1 клиент. Кто может посоветовать сайтик, где будут пояснены самые...

Основы БД - Delphi БД
Всем привет. Решил создать простую БД на делфи. Подскажите что для этого нужно знать, т.е. особенного. Я работал с Ibexpert+fireberd. Нужно...

основы - C++ Qt
Подскажите пожалуйста руководство, желательно на русском, где рассказывалась бы как пользоваться Qt. Что за что отвечает и т.д. Я пишу на...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pablito
24.08.2016, 12:14
  #2

Не по теме:

надо СИСТЕМНОЕ РЕШЕНИЕ, что бы НАТРАВИЛ НА ЛЮБОЙ КЛАСС и ВСЕ !!!!!1111
(с) не мой

Tester64
24.08.2016, 12:51  [ТС]
  #3

Не по теме:

Цитата Сообщение от Паблито Посмотреть сообщение
надо СИСТЕМНОЕ РЕШЕНИЕ, что бы НАТРАВИЛ НА ЛЮБОЙ КЛАСС и ВСЕ !!!!!1111
Ну и к чему ты это написал???
Подобные системы (описанные мной) есть в большинстве языковых фреймворках - в php, ruby, pyton, nodejs, 1C, delphi... в андроиде не встречал - писал свою с нуля! Хочу узнать может изобретаю велосипед и подобное есть в ORMLite или других ORM... Только начал гуглить... хотел узнать может кто уже работал с этим в андроиде и посоветует максимально подходящее мои задачам! Кажется похожее "наклевывается" в Sugar ORM, надо вычитать десятки страниц хелпа чтобы понять его возможности! Но куда проще услышать от того кто уже разобрался - да там все это есть или нет, там такого - пиши сам или лучше посмотри в сторону....

А ты опять не в тему лезешь!!!!111
Я тебе уже говорил - не хочешь помогать - обходи меня стороной!!!

YuraAAA
1567 / 1309 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
24.08.2016, 15:59     Основы ORMLite #4
Tester64, ORMLite! ORM - вообще крутая штука, она позволяет избежать ручных запросов и парсинга данных (в случае android, избежать перебор курсора), используя минимальное количество кода. То есть, что мы делаем:
Делаем класс. Ставим аннотации над полями. Связываем с другими классами при необходимости (one-to-one, o-t-m, m-t-m). Пишем хелпер. Всё.
ORM будет делать запросы за нас, и парсить результаты тоже.
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
24.08.2016, 16:10  [ТС]     Основы ORMLite #5
А можешь чуть подробнее??? Или ссылками/примерами???
Нашел кучу мини-хелпов, повтылкал "нарезки" хелпа в свой проект, но на выходе даже база не создалась... Ни одного работающего проекта-примера!
1) ORMLite сама создает базу? Где хранится структура?
2) Зачем "парсить результаты"? Я раньше на прямую запросы составлял и результат был просто "таблицей" - там нечего (вроде) было парсить - простые числа/строки получал...
3) Обновление структуры само происходит или мне надо вручную поля "переставлять"? Где хранится версия базы?
4) База "привязана" к месту/пути, или ее можно "переназначать" динамически? (был проект, где надо было создать несколько однотипных баз по разным наборам и вручную переключаться между ними - структура одна, данные разные) Просто в одной из ОРМ имя базы похоже прописывается аж в манифесте (кажется у Sugar ORM)
REALIST07
Автор FAQ
Автор FAQ
176 / 176 / 13
Регистрация: 11.06.2010
Сообщений: 932
25.08.2016, 00:44     Основы ORMLite #6
Уважаю мнение людей хвалящих такие библиотеки,но на мой взгляд если вы не в состоянии в ручную написать пару SQL запросов для одной таблицы(максимум 2), корректно открывать/закрывать БД и работать с курсорами,то ничего хорошего у вас с Android не выйдет, библиотеки нужны там, где действительно сложно самому грамотно написать что-то, например, ту же загрузку/кеширование изображений и т.д.
Mikalai
25.08.2016, 01:14
  #7

Не по теме:


REALIST07, не согласен. Знать как всё устроено конечно нужно. Но если спросить у работодателя что лучше: +300кб к АПК или +50..100 уе к цене, то ответ в 90% случаев будет очевиден. Да и зачем писать велосипед каждый раз.
С недавнего времени, сам начал активно использовать SugarORM. Не знаю горя ))
PS: извиняюсь за флуд

Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
25.08.2016, 12:50  [ТС]     Основы ORMLite #8
Цитата Сообщение от Mikalai Посмотреть сообщение
сам начал активно использовать SugarORM
Тогда может вы подкинете рабочий пример??? Мне главное принципы понять... А работать привык с "разбора" готового HellowWord. Как создать готовую базу по схеме?

Цитата Сообщение от REALIST07 Посмотреть сообщение
Уважаю мнение людей хвалящих такие библиотеки,но на мой взгляд если вы не в состоянии в ручную написать пару SQL запросов для одной таблицы(максимум 2), корректно открывать/закрывать БД и работать с курсорами,то ничего хорошего у вас с Android не выйдет, библиотеки нужны там, где действительно сложно самому грамотно написать что-то, например, ту же загрузку/кеширование изображений и т.д.
Я знаю SLQ. Когда-то даже хорошо знал (сложные связанные запросы на 3-5 таблиц делал). Но... Он УЖАСЕН!
Сколько команд надо сделать, чтобы:
1) Добавить новый столбец у юзера с уже заполненной базой при переходе с версии структуры №32 на 33? А если таких "исправлений" между версиями десятки?
2) Сколько запросов придется переписать после добавления нового столбца в таблицу?
3) Сколько ошибок прийдется исправить если столбец "count" поменять на "count"?
4) На сколько большие схемы "на бумаге" понадобятся чтобы контролировать поля с описанием для 10-100 таблиц??
В других языках/фреймворках есть системы МНОГОКРАТНО упрощающие подобные действия. Подозреваю что для подобного используют и ORM в андроиде...

Добавлено через 1 час 13 минут
Цитата Сообщение от Tester64 Посмотреть сообщение
3) Сколько ошибок прийдется исправить если столбец "count" поменять на "count"?
3) sorry! "на count1"

Добавлено через 8 часов 59 минут
Ну-же! Гуру! пли-и-из! подкиньте мини-инструкцию чтобы начать с ЛЮБЫМ ORM!!!! (чтобы хоть принципы понять - дальше сам разберусь)

Хотя-бы как базу создать через ORM??? Перечитал уже кучу исходников на гитхабе (включая китайские) - сплошные либы с нескольким строчками описания - ни одного работающего примера!
Mikalai
256 / 232 / 93
Регистрация: 11.01.2015
Сообщений: 653
25.08.2016, 13:02     Основы ORMLite #9
Tester64, водим в гугл "SugarOrm". Первая ссылка - http://satyan.github.io/sugar/
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.08.2016, 08:06     Основы ORMLite
Еще ссылки по теме:

основы - Delphi
Интегрированная среда разработки Delphi 7 представляет собой многооконную систему и первоначально включает следующие окна: A) Главное...

Основы. - 1С
Привет. Так получилось, что пригласили на собеседование на программиста - стажера в 1с. В требованиях не было указано знание этой...

Основы - Программирование драйверов
Добрый день, Начинаю погружаться в эту тему и не совсем понимаю азов написания драйверов... При знакомстве с кодом драйвера можно...

Капча основы - PHP
Гуру, обьясните "на пальцах" принципы! Как она работает? Надо сделать защиту от "ботов" на авторизацию. ("введи имя+пароль+капчу") ...

основы алгоритмизации - C (СИ)
Для произвольно введенных с клавиатуры вещественного x и номера i элемента массива Y составить программу вычисления величины z. Здесь yi -...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
26.08.2016, 08:06  [ТС]     Основы ORMLite #10
Цитата Сообщение от Mikalai Посмотреть сообщение
водим в гугл "SugarOrm". Первая ссылка - http://satyan.github.io/sugar/
и??? вижу очередную РЕКЛАМУ! Какой "SugarOrm" класный, хороший и как много он умеет... Мне КОД нужен!!!
С этой страницы меня послали на http://satyan.github.io/sugar/getting-started.html
И опять... используете это... или это... или это... И куски кода, которые НЕ РАБОТАЮТ!!! Все успешно запускается, но база так и не создается!! И ни слова о том где поля определять, куда базу сложить... Не говоря о том что имя базы создается похоже в МАНИФЕСТЕ! (я что не могу динамически управлять путем и названием? Не могу переложить "на лету"?)

Дайте ЧЕЛОВЕЧЕСКУЮ инструкцию пожалуйста! Чтобы увидеть базу после запуска!!!
 Комментарий модератора 
давайте бороться за уменьшение количества восклицательных знаков в постах


Добавлено через 18 часов 35 минут
UP!

Мне все еще нужен работающий кусочек кода, а не ссылка на официальный сайт одного из ORM! пли-и-из!
Ну очень надо! помогите "стартануть" технологию!
Yandex
Объявления
26.08.2016, 08:06     Основы ORMLite
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru