Вы можете использовать или JPA-кэширование (я думаю, @Cacheable
связано с JPA) или Hibernate, поэтому вы должны рассмотреть 2 сценария.
Сценарий JPA
В случае JPA: в соответствии со спецификацией JPA, чтобы включить кэширование JPA (является ли @Cacheable
аннотация JPA?), Необходимо указать
в вашем persistence.xml
Например:
org.hibernate.ejb.HibernatePersistence
ENABLE_SELECTIVE
Сценарий гибернации
В случае использования кэширования гибернации вы должны использовать [116 ] аннотация, предоставленная Hibernate ( Hibernate @Cache )
Более того, если вы используете hibernate-объект Query, вы должны указать, что запрос должен кэшироваться, выполняя что-то вроде этого:
[111 ]
Вы можете найти больше здесь https://www.baeldung.com/hibernate-second-level-cache
Я надеюсь, что это полезно
Ответы на Ваши вопросы....
"профессиональное развитие" - MVC является хорошей практикой программирования, настолько получающие знания и опыт его определенно улучшили бы Ваш карьерный потенциал.
"простота создания мощного веб-сайта web 2.0" - Катализатор, конечно, делает это намного легче, потому что уже существуют люди, которые были там и сделали это (т.е. модули на CPAN).
"каким образом Катализатор на самом деле лучше, чем ЛАМПА?" - Хорошо действительно они просто отличаются. Однако Катализатор действительно осуществляет ясную парадигму программирования (MVC), который делает тестирование, рефакторинг, производя повторно используемый код и намного более намного легче... По моему скромному мнению, ;-)
Надеюсь, это поможет.
PS. Катализатор является папой сети (MVC) платформы на Perl, и я настоятельно рекомендую его. Однако проверьте альтернативы... Предложите некоторую Хорошую Платформу MVC в Perl.
PPS. Хороший список веб-платформ (не только MVC) может быть найден на Perl5 Wiki.
PPPS. Perl и продолжится быть хорошим выбором для сети (2.0) разработка (т.е. проигнорировать FUD). Если случайно я неправильно затем изучу что-то как Катализатор / то MVC предоставит Вам необходимые навыки, которые легко адаптируемы в другом месте.
ЛАМПОЙ является Linux, Apache, Mysql и Perl. Это - просто стек. При использовании веб-платформы Perl Вы все еще используете Perl. Вы действительно не выбираете между ЛАМПОЙ и Катализатором или Mason.
Катализатор, кажется, очень хорошая платформа, особенно когда вместе с Шаблонным Инструментарием. Если бы Вы хотите изучить Катализатор, я определенно прочитал бы учебное руководство по Катализатору.
Шаблонный Инструментарий, кажется, мне более способная шаблонная система обработки, чем Mason.
Лично, я думаю, что Шаблонный Инструментарий стоит изучить, даже если Вы не используете его для сети.
Код скопирован с Template-Toolkit.org
[% FOREACH person IN people %] [% IF loop.first %] <table> <tr> <th>Rank</th> <th>Name</th> <th>Email</th> </tr> [% END %] <tr> <td>[% loop.count %]</td> <td>[% person.name %]</td> <td>[% person.email %]</td> </tr> [% IF loop.last %] </table> [% END %] [% END %]
Можно даже встроить код Perl непосредственно в шаблоны. EVAL_PERL
опция должна быть включена, чтобы код Perl был оценен.
[% TRY %] [% PERL %] die "nothing to live for\n"; [% END %] [% CATCH %] error: [% error.info %] [% END %]