2012-05-19 5 views
1

Я решил попробовать некоторые подключения к базе данных для моего приложения Android. Однако мне нужны рекомендации относительно структуры.Android извлечения данных из базы данных

Я пришел к выводу, что для извлечения данных из БД с Android мне нужно использовать скрипты php. Я новичок в этой области, и для меня это звучит немного неловко. Поэтому я решил, что могу создать Java-сервер, к которому подключается приложение, и, кроме всего прочего, этот сервер также извлекает данные из БД и возвращается.

С точки зрения эффективности, что лучше? Пусть приложение само извлекает данные из БД или подключается к серверу, который его извлекает для вас? Как насчет безопасности? Для оформления я буду иметь сервер Java, чтобы позаботиться о других вещах.

enter image description here

К сожалению о навыках рисования Vista. Спасибо за любой ввод!

+0

Я думаю, что в вашем посте вы сравниваете Java с Php. – Zakaria

ответ

3

Как и другие люди, не имеет значения, что вы используете PHP и Java. Но ты на правильном пути. Большинство разработчиков создают веб-службу на своем HTTP-сервере, и приложение говорит об этом. Это обычно в виде строк JSON или XML по HTTP. Популярный выбор - использование архитектуры REST, которая по сути говорит вам, что материал, доступ к которому вы получаете, - это ресурсы, и на основе этого вы структурируете свой сервис.

Для вопроса PHP и Java это действительно зависит от вас, так что когда-либо вы можете настроить быстрее и более знакомы. Я также скажу, что у Java есть преимущества производительности в случае Android, потому что вы можете создавать простые старые Java-объекты в качестве своих моделей для получения результатов и делиться этим кодом между сервером и вашим клиентом Android. Вы получаете это, потому что вы можете использовать что-то вроде библиотеки Gson, которая сериализует и десериализует объекты в формате JSON. Вы также можете использовать Google AppEngine для размещения своего Java-кода.

+0

Спасибо за этот ответ! Лучше просто передать объект класса на сервер или вице-верку, или сериализовать в JSON и передать это? Читайте где-нибудь, что использование JSON более эффективно из-за небольших размеров, что подходит для мобильных услуг. Есть ли у вас какие-либо учебники или аналогичные материалы, посвященные теме REST? –

+0

Android не поддерживает ничего подобного RMI, поэтому вы не можете просто переносить объекты POJO и отправлять их на сервер. Для этого вам придется сериализовать их самостоятельно. Gson - отличный способ выполнить это, и он будет работать на сервере, а также при условии, что вы выбрали сервер Java. JSON очень хорош из-за меньших размеров, намного лучше, чем подробный XML, и он легко расходуется в Javascript. Кстати, это стандарт для JavaScript Object Notation. Существует множество учебных пособий о том, как выполнить этот поиск. Я рекомендую Gson над SDK org.json в Android, потому что это быстрее. –

+0

http://www.javacodegeeks.com/2011/01/android-json-parsing-gson-tutorial.html –

1

Ну, эта проблема не имеет значения в контексте программирования андроида, я бы сказал.

Предполагая, что вы возвращаете извлеченные данные на свое устройство в формате json, вся проблема с производительностью сводится к производительности java или php при извлечении данных из базы данных и преобразовании ее в json и отправке клиенту.

И поскольку простые операции считаются эффективными, в обоих случаях эффективность не имеет большого значения, это лишь вопрос предпочтения для разработчиков.

Смежные вопросы