Подтвердить что ты не робот

Есть ли какой-либо эквивалент сущности в java?

Каждый, кто запрограммировал С#, знает, что существует Entity Framework как ORM (объектно-реляционный сопоставитель), который позволяет программисту запрашивать базу данных, используя только код С#.

Например, если у меня есть база данных с именем Shop, а в базе данных Shop у меня есть таблица Products, я могу получить весь продукт таблицы Products, где их цена меньше 2 долларов в следующим образом:

ShopEntity _Db = new ShopEntity();
List<Product> products = _Db.Products.Where(p => p.Price < 2).ToList();

выше код эквивалентен этому оператору SQL:

Select * From Products Where Price < 2

Итак, я хочу знать, существует ли какая-либо инфраструктура в java?

Я также видел quaere. Но он просто запрашивает коллекции. Я хочу запросить базу данных. В java есть другая структура, называемая Hibernate, которая не обеспечивает хорошую функциональность для запроса в базе данных.

4b9b3361

Ответ 1

Стандартный API ORM в Java, который он назвал JPA, и является частью спецификации Java EE. Другой альтернативой будет использование Hibernate. Оба предоставляют свой собственный язык запросов (JPQL и HQL соответственно), но в Java нет рамки запроса что обеспечивает прямую интеграцию на уровне языка, как LINQ делает для С#.