Главная » Статьи для тега "Spring"

Создание контроллеров, ориентированных на ресурсы

Добавлено Дата: 29 June, 2014 категория: Spring

Как было показано в главе 8, в Spring MVC используется чрезвы- чайно гибкая модель создания классов контроллеров. Практически любой метод с практически любой сигнатурой можно объявить об- работчиком веб-запросов. Однако из-за такой гибкости фреймворк Spring MVC позволяет создавать контроллеры, которые нелучшим образом подходят для обслуживания ресурсов RESTful. Слишком просто написать контроллер, противоречащий принципам архитек- туры REST.

Читать »

Дополнительные способы связывания компонентов Spring

Добавлено Дата: 29 June, 2014 категория: Spring

Большинство людей имеют, по крайней мере, один ящик (а иног- да даже целый шкаф или кабинет) в своем доме, где хранятся раз- ные мелочи. Часто его называют просто «выдвижной ящик», но там может оказаться довольно много разных весьма полезных штуковин. В подобном месте всегда найдутся такие вещи, как рулетка, зажи- мы, ручки, карандаши, кнопки, несколько запасных батарей и т. д. Обычно эти предметы не используются каждый день, но вы точно знаете, что если отключат электричество, вы пороетесь в этом ящи- ке и обязательно найдете батареи, которые вставите в ваш фонарь.

Читать »

Безопасность в Spring

Добавлено Дата: 29 June, 2014 категория: Spring

Доводилось ли вам замечать, что большинство персонажей в телеви- зионных комедийных сериалах никогда не запирают свои двери на за- мок? Причем постоянно. Например, в сериале «Seinfeld» («Сайнфелд») Крамер (Kramer) часто позволяет себе заходить в квартиру к Джер- ри (Jerry) и одалживать у него вещи и продукты. В сериале «Friends» («Друзья») разные персонажи часто входят друг к другу в комнату без предупреждения, совершенно не задумываясь. Однажды, находясь в Лондоне, Росс (Ross) ворвался в комнату в отеле, где поселился Ченд- лер (Chandler), и застал его в пикантной ситуации со своей сестрой.

Читать »

Область действия компонента Spring

Добавлено Дата: 28 June, 2014 категория: Spring

По умолчанию все компоненты Spring единичны. Когда контей- нер передает компонент (либо через связывание, либо как результат вызова метода контейнера getBean()), всегда будет передан тот же самый экземпляр компонента. Однако иногда бывает необходимо получить уникальный экземпляр компонента при каждом обраще- нии. Как изменить единичный нрав Spring?

Читать »

Преобразование типа запроса Spring

Добавлено Дата: 28 June, 2014 категория: Spring

Когда браузер посылает запрос PUT или DELETE, отправляя форму, отображенную с помощью тега <sf:form>, в действительности он вы- полняет запрос методом POST. Через сеть запрос проходит как POST- запрос, прибывает на сервер как POST-запрос, и если приложение на стороне сервера не потрудится заглянуть в скрытое поле _method, он будет обработан как POST-запрос.

Читать »

Экспортирование службы с  помощью  Hessian/Burlap Spring

Добавлено Дата: 28 June, 2014 категория: Spring

Как и прежде, предположим, что в качестве службы необходи- мо экспортировать функциональность, реализованную в классе SpitterServiceImpl, но на этот раз с применением технологии Hessian. В этом нет ничего сложного, даже без использования возможностей фреймворка Spring. Достаточно определить класс службы, расши- ряющий класс com.caucho.hessian.server.HessianServlet, и сделать все методы API службы общедоступными (в Hessian все общедоступные методы считаются методами службы).

Читать »

Декларативное управление транзакциями Spring

Добавлено Дата: 27 June, 2014 категория: Spring

Еще совсем недавно декларативное управление транзакциями бы- ло доступно только в контейнерах EJB. Но сейчас Spring предлага- ет аналогичную поддержку для POJO. Это – важная особенность Spring, потому что теперь для декларативного обеспечения атомар- ности операций не требуется создавать контейнеры EJB.

Читать »

Безопасность веб-запросов Spring

Добавлено Дата: 27 June, 2014 категория: Spring

Все взаимодействия с веб-приложениями на языке Java начина- ются в компоненте HttpServletRequest. И коль скоро средством досту- па к веб-приложению является запрос, то с него и следует начинать обеспечивать безопасность.

Читать »

Защита с помощью аннотаций, выполняемых до и после вызова Spring

Добавлено Дата: 26 June, 2014 категория: Spring

Аннотации @Secured и @RolesAllowed позволяют решить поставлен- ную задачу, предотвращая возможность вызова методов неавтори- зованными пользователями, но это все, на что они способны. Ино- гда бывает необходимо реализовать более интересные ограничения, основанные не только на определении наличия некоторых приви- легий у пользователя.

Читать »

Проксирование  сеансовых компонентов (EJB 2.x) Spring

Добавлено Дата: 25 June, 2014 категория: Spring

Как вы уже, вероятно, догадались из вступления, более простой путь действительно существует. В главе 11 было показано, как на- строить прокси-объекты для организации доступа к различным уда- ленным службам, включая службы, основанные на RMI, Hessian, Burlap и Spring HTTP Invoker. Практически те же самые возмож- ности предлагаются фреймворком Spring и для доступа к компо- нентам EJB.

Читать »

Внедрение с помощью аннотаций Spring

Добавлено Дата: 25 June, 2014 категория: Spring

Выше было показано, как с помощью элемента <aop:declare- parents> внедрить реализацию интерфейса в существующий компо- нент, не изменяя исходного программного кода. Теперь посмотрим на этот же пример с другой стороны, но на этот раз задействуем аннотации AOP.

Читать »

Обзор Hibernate Spring

Добавлено Дата: 25 June, 2014 категория: Spring

В предыдущем разделе было показано, как использовать в прило- жении шаблоны JDBC, предоставляемые фреймворком Spring. Как оказывается, для работы с Hibernate фреймворк Spring предлагает похожий класс шаблона, абстрагирующий использование возмож- ностей фреймворка Hibernate. Исторически для работы с фрейм- ворком Hibernate в приложениях на основе Spring используется класс HibernateTemplate. Подобно своим сородичам из реализации поддержки JDBC, класс HibernateTemplate сам беспокоится обо всех тонкостях взаимодействий с Hibernate, перехватывая исключения, генерируемые этим фреймворком и преобразуя их в неконтролируе- мые исключения Spring.

Читать »

Настройка  компонентов для  кеширования Spring

Добавлено Дата: 24 June, 2014 категория: Spring

Выше мы уже определили, что метод getRantsForDay() класса Hi- bernateRantDao является первым кандидатом на кеширование. Вер- немся к определению контекста приложения Spring и обернем эле- ментом <ehcache:proxy> объект класса HibernateRantDao, чтобы обес- печить кеширование всех результатов, возвращаемых его методом getRantsForDay():

Читать »

Создание советов, выполняемых и до, и после Spring

Добавлено Дата: 24 June, 2014 категория: Spring

Как и в случае настройки аспектов в XML-файле конфигурации Spring, при использовании аннотаций @AspectJ можно создавать не только советы, выполняемые до или после вызова целевого метода, но и советы, выполняемые и до, и после вызова. Для этого следует использовать аннотацию @Around, как показано в следующем при- мере:

Читать »

Объявление перехватчиков с помощью аннотаций Spring

Добавлено Дата: 23 June, 2014 категория: Spring

Помимо внедрения зависимостей, Pitchfork поддерживает также аннотации EJB 3 объявления перехватчиков. Перехватчики EJB 3 – это простейшая форма советов, выполняемых и до, и после вызова целевого метода, которые могут применяться с помощью аннотаций.

Читать »