Я использую JPA (В спящем режиме) с Spring. Когда я хочу к ленивой загрузке свойство Stirng, я использую этот синтаксис:
@Lob
@Basic(fetch = FetchType.LAZY)
public String getHtmlSummary() {
return htmlSummary;
}
Но то, когда я смотрю на sql, которые в спящем режиме, создает, кажется, что это свойство не лениво загруженный? Я также использую этот класс org.hibernate.tool.instrument.javassist. InstrumentTask в скрипте Ant для оснащения этого свойства, но кажется, что это не работает.
Пожалуйста, помогите мне.
Khosro.
Определение непрофессионала простое: "что-то, что исполняет хорошо; performant = = высокая производительность,! performant = = низкая производительность "
Я не вижу, чтобы это применялось к другим показателям, кроме производительности. Уродливый, халтурный и нестабильный код может быть исполнителем.
-121--1269055-Некоторые предложения можно найти в документе Крупномасштабный дизайн программного обеспечения C++ . Это немного датировано (опубликовано в 1996 году), но все еще ценно, с указателями на структурирование кода, чтобы минимизировать проблему «перекомпиляции мира, когда меняется один файл заголовка».
-121--5086358- Lazy Lob
загрузка потребует, чтобы инструментарий байт-кода работал правильно, поэтому он по умолчанию недоступен в любой реализации JPA, о которой мне известно.
Ваша лучшая ставка заключается в том, чтобы поместить Lob в отдельный объект, например, в StartSummary
, и использовать лениво загруженную ассоциацию «один к одному».
Ленивая выборка относится только к ссылкам на другие объекты или коллекции организаций. Это не относится к значениям, как строка или INT.
из спецификации JPA говорят, что даже если Вы лениво используете аннотацию свойства, которое будет извлечено, это не гарантируется, поэтому свойства могут лениво загружаться или не загружаться (зависит от реализации JPA), однако, если Вы укажете, что должны извлекать их с нетерпением, то реализация JPA должна загружать их с нетерпением.
Итог: @Basic(fetch = FetchType.LAZY) может работать или не работать, зависит от реализации JPA.