Короткий ответ: это зависит от сложности, которую вы хотите поддержать.
Длинный ответ:
Прежде всего, ORM (объектно реляционного отображения - отображение базы данных как вы это называете -) и JNDI (Java Naming и Directory интерфейсы) это две разные вещи.
Первый, как вы уже знаете, используется для сопоставления таблиц базы данных с классами и объектами. Во-вторых, чтобы обеспечить механизм поиска ресурсов, они могут быть DataSources, Ejb, Queues или другими.
Возможно, ваше среднее значение «JDBC».
Теперь, что касается вашего вопроса: если это так просто, возможно, нет необходимости внедрять ORM. Таблицы с номерами будут составлять не более 5-10, и, на мой взгляд, операции действительно просты.
Возможно, использование простого JDBC будет достаточно.
Если вы используете шаблон DAO, вы можете изменить его позже, чтобы поддержать стратегию ORM, если это необходимо.
Как это: Скажем, у вас есть таблица Employee
Создание Employee.java со всеми полями БД вручную (это не должно занять слишком много времени) и EmployeeDaO.java методов, такие как:
+findById(id): Employee
+insert(Employee)
+update(Employee)
+delete(Employee)
+findAll():List<Employee>
и реализация довольно прямо вперед:
select * from employee where id = ?
insert into employee (bla, bla, bla) values (? , ? , ?)
update etc. etc
Когда (и если) приложение становится слишком сложным вы м ay изменить реализацию DAO. Например, в методе «select» вы меняете код на использование объекта ORM, который выполняет операцию.
public Employee selectById(int id) {
// Commenting out the previous implementation...
// String query = select * from employee where id = ?
// execute(query)
// Using the ORM solution
Session session = getSession();
Employee e = (Employee) session.get(Employee.clas, id);
return e;
}
Это просто пример, в реальной жизни вы можете позволить абстрактном завод создать ORM DAO, но это оффтоп.Дело в том, что вы можете начать простую и используя шаблоны desing, вы можете изменить реализацию позже, если это необходимо.
Конечно, если вы хотите научиться технологии, вы можете начать работать с одним столом.
Выбор того или иного решения (решение ORM) зависит в основном от технологии, которую вы используете. Например, для JBoss или других продуктов с открытым исходным кодом Hibernate отлично. Это open source, есть много ресурсов, из которых можно учиться. Но если вы используете то, что уже имеет Toplink (например, сервер приложений oracle), или если база уже построена на Toplink, вы должны оставаться в этой структуре.
Кстати, поскольку Oracle купил BEA, они заявили, что заменяют Kodo (weblogic peresistence framework) с помощью toplink в теперь называемом «Oracle Weblogic Application Server».
Я оставляю вам несколько ресурсов, где вы можете получить больше информации об этом:
В этом «Узоры Enterprise Application Architecture» книги, Мартин Фаулер, объясняет, где использовать один или другой, здесь каталог , Посмотрите на Источник данных образцы архитектуры против объектно-реляционная поведенческой модели:
PEAA Catalog
DAO (Data Access Object) является частью каталога шаблонов ядра J2EE:
The DAO pattern
Это учебное пособие по стартеру для спящего режима:
Hibernate
Официальный сайт Toplink:
Toplink
Наконец я "думаю" хороший думать о JPA является то, что вы можете изменить поставщиков в последнее время.
Начать простую, а затем развиваться.
Надеюсь, это поможет.