Лучший способ разработки Java с БД - PullRequest
2 голосов
/ 25 января 2011

У меня есть опыт работы с Toplink для перевода объектов в базу данных и наоборот. Но все это было частью сайта JSP, и теперь я сделал с ним кое-что EJB. Теперь у меня вопрос: хорошо ли работать с такими вещами, как Toplink, в Java-приложении для настольных компьютеров или более распространенным является использование нативных SQL-программ из Java?

Может быть, какой-то опыт проф. Разработчики могут быть хорошими. Мне нужно серьезно разработать приложение для клиента. Я делаю это на Java и собираюсь хранить данные в базе данных.

Спасибо

Ответы [ 4 ]

3 голосов
/ 25 января 2011

ORM хорошо, если ваша модель данных хорошо структурирована, не слишком сложна и, что особенно важно, если вы контролируете ее.

Устаревшие базы данных или плохо смоделированные базы данных сложнее представить с помощью ORM, и это настоятельно не рекомендуется, поскольку ваше приложение добавит дополнительные сложности по сравнению с теми, которые подразумевает сама модель.

Если вы знакомы с каким-либо инструментом ORM, таким как Hibernate, и ваша база данных довольно хорошо сделана, сделайте это. Они наверняка сэкономят вам много стандартного кода и у вас есть хороший код оптимизации запросов. В противном случае вы можете захотеть использовать JDBC напрямую или какую-то другую среду, чтобы упростить использование JDBC, но при этом использовать простой SQL. Для таких ситуаций я рекомендую MyBatis .

2 голосов
/ 08 февраля 2011

TopLink (и EclipseLink / JPA) работают так же хорошо в настольном приложении, как и в серверном приложении.На самом деле TopLink существует с 90-х годов, когда клиент-серверные приложения Smalltalk были популярны до того, как серверная часть стала популярной.

1 голос
/ 25 января 2011

Это зависит от ваших вариантов использования

Технологии ORM могут приятно абстрагировать специфику базы данных и позволяют вам сконцентрироваться на модели предметной области. Однако существуют обстоятельства, когда использование слоя ORM нецелесообразно (очень большие наборы данных могут вызвать проблемы с производительностью, например, схемы базы данных, которые сложно сопоставить с объектами, являются другими).

Я бы порекомендовал использовать технологию, совместимую с JPA, например, Hibernate. Таким образом, вы используете ORM, который реализует стандарт Java, и вы можете более или менее менять и заменять реализации.

Для всего остального JDBC - гибкий друг

0 голосов
/ 25 января 2011

зависит также от объема базы данных. Для баз данных с огромными данными попробуйте использовать Hibernate. Это может помочь, а не писать код JDBC

...