В настоящее время мы имеем систему Java EE, в которой мы сопоставляем нашу базу данных с использованием JPA. Это довольно хорошо разработанная система с примерно 20 объектами.
Теперь нам приказано использовать Views для всего. Например: если у нас есть таблица с именем PERMISSION, нам также потребуется представление PERMISSION_VIEW. В принципе, мы должны делать это для каждой таблицы, и наши приложения могут обращаться к данным только через запрос.
Теперь вся наша сущность beans выглядит так:
@Entity
@Table(name = "PERMISSION")
@NamedQueries({
@NamedQuery(name = "Permission.findByPK", query = "SELECT p FROM Permission p WHERE p.dpNum = :dpNumber"),
@NamedQuery(name = "Permission.deleteAll", query = "DELETE FROM Permission") })
public class Permission implements Serializable {
}
- Во-первых, как можно обновлять таблицы, если вам разрешено использовать Views. Могут ли материализованные представления работать для этого?
- Во-вторых, сколько потребуется переписывать, если мы можем использовать только Views? Например. Для каждого вопроса нам нужно написать @Table (name = "PERMISSION_VIEW" ), чтобы описать объект, НО, при выполнении обновления он должен сделать это в таблице PERMISSION. Как, на самом деле, вы консолидируете это в сущности bean?