Легкая альтернатива Hibernate?

java database hibernate sqlite

86159 просмотра

14 ответа

28780 Репутация автора

У меня есть однопользовательская Java-программа, в которой я хотел бы хранить данные в облегченной базе данных, такой как Derby или Sqlite. Я хотел бы использовать слой абстракции данных в моей программе. Hibernate, кажется, требует много конфигурации и является излишним для того, что мне нужно. Какие легкие альтернативы Hibernate?

Автор: Jared Источник Размещён: 17.11.2008 07:25

Ответы (14)


31 плюса

89531 Репутация автора

Это все еще требует конфигурации XML, но взгляните на MyBatis (ранее iBatis) .

Автор: kgiannakakis Размещён: 17.11.2008 07:53

9 плюса

9485 Репутация автора

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

Автор: Benno Richters Размещён: 17.11.2008 08:36

1 плюс

14032 Репутация автора

Возможно, вы захотите взглянуть на prevayler (на sourceforge). Несколько более легкий подход к постоянству. Или ты думал о составлении отчетов по БД?

Автор: Stephan Eggermont Размещён: 17.11.2008 08:37

141 плюса

16054 Репутация автора

Решение

Hibernate требует почти нулевой конфигурации, если вы используете аннотации. Он даже может автоматически обнаруживать сопоставленные бины в classpath! Я не вижу никакой альтернативы к нему с обеих простоты и энергетической точки зрения.

Он также может представлять себя как JPA, что (IMHO) еще проще.

Автор: Vladimir Dyuzhev Размещён: 17.11.2008 10:45

14 плюса

316 Репутация автора

Apache Commons DBUtils берет на себя большую часть повторяющихся трудностей из программирования JDBC. Это требует небольшой настройки и прост в освоении. Это не среда ORM (в отличие от Hibernate и других платформ, упомянутых здесь), но она автоматизирует отображение столбцов SELECT в поля-члены Java, а также другие повторяющиеся задачи программирования JDBC. Это конечно легкий.

Автор: Christopher Graziano Размещён: 16.01.2009 08:22

12 плюса

141 Репутация автора

Вы можете взглянуть на Ebean ORM . - Нет сессий - ленивая загрузка просто работает - Простой API для использования и изучения.

Автор: Rob Размещён: 12.11.2009 04:37

54 плюса

98416 Репутация автора

Моя библиотека ORMLite - одна из таких альтернатив. Он поддерживает MySQL, Postgres, Microsoft SQL Server, H2, Derby, HSQLDB и Sqlite и может быть легко расширен для других. Он использует аннотации для настройки классов, хорошую поддержку Spring, гибкий построитель запросов и т. Д.

Автор: Gray Размещён: 25.06.2010 06:02

22 плюса

141555 Репутация автора

jOOQ поставляется с беглым DSL, имитирующим SQL непосредственно в Java, как побочный эффект для его основных целей:

  • Генерация исходного кода
  • Полная поддержка стандартного SQL, включая функции языка SQL, такие как UNION, вложенные SELECT, все типы JOIN, псевдонимы (например, для самостоятельных объединений) и т. Д.
  • Широкая поддержка нестандартного SQL, включая UDT, хранимые процедуры, специфичные для поставщика функции и т. Д.

Прочитайте о jOOQ в этой статье: http://java.dzone.com/announcements/simple-and-intuitive-approach или посетите веб-сайт напрямую: http://www.jooq.org

(Отказ от ответственности, я работаю на компанию за JOOQ)

Автор: Lukas Eder Размещён: 23.12.2010 08:14

6 плюса

3889 Репутация автора

Я могу предложить apache empire-db. http://incubator.apache.org/empire-db/

Apache Empire-db - это компонент персистентности реляционных данных с открытым исходным кодом, который позволяет независимому поставщику базы данных определять динамические запросы, а также обеспечивает безопасный и простой поиск и обновление данных. По сравнению с большинством других решений, таких как реализации Hibernate, TopLink, iBATIS или JPA, Empire-db использует значительно иной подход, уделяя особое внимание безопасности во время компиляции , сокращению избыточности и повышению производительности труда разработчиков.

Пример:

// Define the query
DBCommand cmd = db.createCommand();
DBColumnExpr EMPLOYEE_FULLNAME= db.EMPLOYEES.LASTNAME.append(", ")
                        .append(db.EMPLOYEES.FIRSTNAME).as("FULL_NAME");
// Select required columns
cmd.select(db.EMPLOYEES.EMPLOYEE_ID, EMPLOYEE_FULLNAME);
cmd.select(db.EMPLOYEES.GENDER, db.EMPLOYEES.PHONE_NUMBER);
cmd.select(db.DEPARTMENTS.NAME.as("DEPARTMENT"));
cmd.select(db.DEPARTMENTS.BUSINESS_UNIT);
// Set Joins
cmd.join(db.EMPLOYEES.DEPARTMENT_ID, db.DEPARTMENTS.DEPARTMENT_ID);
// Set contraints and order
cmd.where(EMP.LASTNAME.length().isGreaterThan(0));
cmd.orderBy(EMP.LASTNAME);;
Автор: Somatik Размещён: 11.01.2011 09:20

1 плюс

29858 Репутация автора

Если использование реляционной базы данных не обязательно, попробуйте db4o.

Автор: Behrang Размещён: 16.02.2011 12:35

2 плюса

18989 Репутация автора

1 плюс

1209 Репутация автора

Я создал Сормулу как альтернативу тяжеловесным ОРМ. Это CRUD-готов, POJO-дружественный, простой в использовании, настройке и понимании. Возможно использование нулевой конфигурации. www.sormula.org

Автор: Jeff Miller Размещён: 10.12.2011 03:02

2 плюса

4273 Репутация автора

Возможно, я немного опоздал на вечеринку, но я выпустил ActiveJDBC в 2010 году, который представляет собой реализацию шаблона ActiveRecord в ORM, более чем в 10 раз легче, чем Hibernate в зависимостях, по крайней мере в два раза быстрее во время выполнения и требует нулевой настройки или аннотации.

Автор: ipolevoy Размещён: 07.04.2012 09:32

-2 плюса

1 Репутация автора

Kiteframework также очень легкий каркас. Он обеспечивает почти все операции с БД с минимальными настройками.

http://deipakgarg.github.com/Kite-ORM/

Раскрытие: я являюсь автором этого проекта

Автор: DeipakGarg Размещён: 19.11.2012 06:30
Вопросы из категории :
32x32