Введение

Seasar2 — это фреймворк приложений с открытым исходным кодом, аналогичный Spring Framework (Java). Первоначально он был разработан для платформы Java Ясуо Хига, но в настоящее время поддерживаются также платформы .NET и PHP. У Seasar2 большая база пользователей в Японии, однако с момента объявления поддержки английского языка на конференции JavaOne 2005 в Токио наблюдается устойчивый рост числа пользователей за пределами Японии. В настоящее время Seasar2 поддерживается Фондом Seasar — некоммерческой организацией, работающей с открытым исходным кодом.

История

Seasar был впервые опубликован в августе 2003 года на SourceForge.jp как сервер приложений, использующий Jetty (веб-сервер) и HSQLDB. Название было придумано первоначальным разработчиком Ясуо Хига по мотивам окинавского мистического существа Шиса. В марте 2004 года Seasar был представлен повторно как легковесный контейнер внедрения зависимостей и AOP, и переименован в Seasar2. Несмотря на то, что разработка Seasar была приостановлена, последний релиз, seasarsetupV1Final With Nazuna, все еще доступен для скачивания с сайта Seasar2. В апреле 2005 года Seasar2 получил поддержку от OSCJ.net (Open Source Collaboration Joint Network) и переехал с SourceForge.jp.

Введение

Как и другие DI-контейнеры, компоненты определяются во внешних XML-файлах. Также имеется мощная поддержка работы с базами данных и модульного тестирования с использованием JUnit. Главное отличие от других фреймворков – поддержка концепции "Соглашения важнее конфигурации", направленная на сокращение объёмных XML-конфигураций, характерных для фреймворков вроде Spring. Цель состоит в уменьшении количества или полном исключении файлов конфигурации за счёт того, что разработчики следуют принятым стандартам программирования и конфигурации, а фреймворк берёт на себя основную работу. Например, если тип свойства – интерфейс, а существует объект, реализующий этот интерфейс, зависимость настраивается контейнером автоматически. Если имя тестового метода заканчивается на "Tx", перед выполнением модульного теста начинается транзакция, которая откатывается после завершения теста.

Межплатформенная поддержка

В настоящее время Seasar поддерживается на Java/Java EE, PHP5 и .NET.