Главная » Spring

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

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

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

Читать »

Создание конечной точки на основе модели JDOM Spring

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

Веб-служба, оценивающая комбинацию карт при игре в покер, принимает сообщение <EvaluateHandRequest> и возвращает сообщение

<EvaluateHandResponse>. То есть нам необходимо создать конечную точку веб-службы, обрабатывающую элемент <EvaluateHandRequest> и возвращающую элемент <EvaluateHandResponse>.

Читать »

Преобразование типа запроса 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. И коль скоро средством досту- па к веб-приложению является запрос, то с него и следует начинать обеспечивать безопасность.

Читать »

Использование аннотации@Autowired Spring

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

Предположим, что необходимо с помощью аннотации @Autowired обеспечить автоматическое внедрение значения в свойство instrument компонента Instrumentalist. Для этого можно аннотировать метод setInstrument(), как показано ниже:

@Autowired

public   void   setInstrument(Instrument   instrument)   { this.instrument    =    instrument;

Читать »

Транзакции JDBC Spring

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

Если для хранения данных в приложении предполагается ис- пользовать простой механизм JDBC, для управления транзакция- ми должен использоваться диспетчер DataSourceTransactionManager. Для этого необходимо добавить определение компонента DataSource- TransactionManager в контекст приложения, как показано ниже:

Читать »

Защита с помощью аннотаций, выполняемых до и после вызова 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, как показано в следующем при- мере:

Читать »

Использование JDBC совместно со Spring

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

Существует множество технологий хранения данных. Hibernate, iBATIS и JPA – лишь некоторые из них. Несмотря на немалое коли- чество вариантов, записывать Java-объекты прямо в базу данных – это уже немного старомодный путь для заработка. Стоп, а как же люди теперь зарабатывают деньги?! А, проверенным дедовским ме- тодом – сохраняя данные с помощью старого доброго JDBC.

Читать »