Для виконання цього туторіалу необхідні наступні речі:
1) IDE 3.4+ з додатками Spring IDE, m2Eclipse (деталі установки можна знайти в ).
2) 2+
3) 5+
4) 5+
Ці інструменти повинні бути налаштовані та робочі.
Під час навчання мені завжди булу значно легше вчитись дивлячись на мінімалістичний, але робочий код.
Є декілька різних підходів до реалізації Flex аплікацій.
Ось підбірка реалізацій Flex аплікацій з різним набором використаних фреймворків та технологій.
Java + Spring + Hibernate + BlazeDS =
Java + Spring + Hibernate + BlazeDS + HSQL + Jetty =
Java + Spring + JDBC + BlazeDS =
Java + Spring + Ribbit + BlazeDS =
Продовження розповід про кешування другого рівня в Hibernate. Розказується про те, які є реалізації кешу 2го рівня та які слід використовувати при протребі.
Кеш другого рівня в Hibernate може бути підключеним і може бути в межах процесу або кластера. Можуть бути різні реалізації кешу другого рівня, існують кілька вже готових реалізацій на основі готових движків кешування. Але можна реалізувати власний движок і підключити його за допомогою реалізації інтерфейсуorg.hibernate.cache.CacheProvider.
Є багато способів пришвидшити роботу Hibernate. Одним із них є кешування другого рівня (second level cache).
Для мене він знадобився при оптимізації роботи проекту, який використовує Hibernate 3.2.3. В межах аплікації використовується кілька наборів даних, які рідко змінюються. Декотрі дані взагалі не змінюються. Витягувати їх із бази даних кожен раз виходить доволі накладно і навіть довго. Після використання кешування, на звичайній машині різниця почала відмічатися одразу ж.
це продовження ідей закладених в таких проектах як .
Продукт відноситься до класу генераторів коду. Особливістю SpringFuse є концентрація на коректності архітектури та додаткова увага до зв'язків сутностей. Це означає що після генерування проекту розробники будуть в більшості випадків тільки дописувати нову функціональність без виправляння вже згенерованого коду.
Для того щоб в аплікації працювало ліниве завантаження (lazy loading) у Hibernate необхідно налаштувати шаблон Open Session in View. Для цього потрібно добавити наступний код до web.xml:
<web-app>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:/com/applicationContext-hibernate.xml,
classpath:/com/applicationContext.xml
</param-value>
</context-param>
<!-- Spring Open Session In View фільтр -->
<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>
org.springframework.orm.hibernate.support.OpenSessionInViewFilter
</filter-class>
</filter>
<!-- Мапування фільтра на URL -->
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>/app/*</url-pattern>
</filter-mapping>
<!-- Загрузчик Spring -->
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
</web-app>
При такій конфігурації Hibernate сесія буде відкриватись при початку запиту та закриватись при завершенні його обробки.