Может Быть в спящем режиме использоваться в производительности чувствительные приложения?

Вы должны добавить свой keyListener для каждого компонента, который вам нужен. Эти компоненты будут отправлять только компонент с фокусом. Например, если в вашем JFrame есть только один TextBox, то TextBox имеет фокус. Таким образом, вы должны добавить KeyListener и к этому компоненту.

Процесс тот же:

myComponent.addKeyListener(new KeyListener ...);

Примечание. Некоторые компоненты не могут быть сфокусированы, как JLabel.

Для настройки фокусировки вам необходимо:

myComponent.setFocusable(true);
21
задан Steve Kuo 16 March 2009 в 18:44
поделиться

4 ответа

См. мой ответ на Ваш другой вопрос при чтении всего FAQ, Вы связались с:

Следуют руководству по оптимальной практике! Удостоверьтесь, чтобы все и отображения определили ленивый = "верный" в Hibernate2 (это - новое значение по умолчанию в Hibernate3). Используйте HQL, ПОКИНУТУЮ ВЫБОРКУ СОЕДИНЕНИЯ для определения, какие ассоциации Вы должны быть получены в начальном ВЫБОРЕ SQL.

А второй способ избежать n+1 выбирает проблему, должен использовать выборка = "подвыбор" в Hibernate3.

, Если Вы все еще не уверены, обратитесь к Быть в спящем режиме документации и Будьте в спящем режиме в Действии.

Посмотрите подсказки относительно улучшающая производительность . Если Вы не будете осторожны с соединениями, то Вы закончите с Декартово произведение проблемы.

11
ответ дан 29 November 2019 в 21:50
поделиться

Помимо стратегии "выборки" Вы могли бы также попытаться установить пакетный размер выборки в, в спящем режиме свойства, таким образом, это выполнит присоединяющиеся запросы не один за другим, но в пакетах.

В Вашем appContext.xml:

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    ...    
    <property name="hibernateProperties">
        <props>        
            ...
            <prop key="hibernate.default_batch_fetch_size">32</prop>
        </props>
    </property>
</bean>

Так вместо:

SELECT ... FROM Hobby WHERE personId=1
SELECT ... FROM Hobby WHERE personId=2

Вы доберетесь:

SELECT ... FROM Hobby WHERE personId in (1,2,...,32);
SELECT ... FROM Hobby WHERE personId in (33,34,...,64);
8
ответ дан 29 November 2019 в 21:50
поделиться

Вы попробовали "соединение" стратегия выборки наборов?

3
ответ дан 29 November 2019 в 21:50
поделиться

Если Вам нужна функция, в спящем режиме, и этой функцией является багги, у Вас есть две опции: a) Отправляют bugrequest и используют обходное решение (медленная производительность или рукописный sql), пока ошибка не исправлена, который будет требовать времени, b) Отправляют bugrequest наряду с bugfix и тестами. (конечно, Вы могли просто использовать bugfix и пропустить bugrequest и протестировать часть).

0
ответ дан 29 November 2019 в 21:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: