1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mgang-mgioc

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

MGIoC

MGIOC — это лёгкий, слабосвязанный и одноэлементный IOC-фреймворк, предназначенный только для внедрения зависимостей.

Об авторе

Я — увлечённый программированием энтузиаст, известный под псевдонимами «Сны сети», «Сны приходят и уходят», mg0324 и другими.

QQ: 1092017732 github: https://github.com/mg0324 gitoschina: https://git.oschina.net/mgang

Если вам нравится этот проект, не забудьте поставить звезду. Спасибо!

Быстрый старт

Шаг 0

Добавьте mgioc.jar в каталог lib вашего веб-приложения.

Первый шаг

В web.xml добавьте необходимые настройки для запуска контейнера:

<!-- Запуск конфигурации MGIoC -->
<listener>
    <listener-class>mg.ioc.core.IocListener</listener-class>
</listener>

Второй шаг

Создайте тестовый пакет package mg.test; Он содержит три класса: TestAction (использует mgwork для MVC-контроллера), TestService и TestDao.

TestAction.java

package mg.test;

import javax.servlet.annotation.WebServlet;

import mg.ioc.annotation.UseBean;
import mg.mvc.core.MGWorkServlet;
@WebServlet("/test.do/*")
public class TestAction extends MGWorkServlet{
    /**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	// Используем UseBean для внедрения экземпляра объекта из контейнера MGIoC.
	@UseBean
	private TestService testService;
	public String index(){
		testService.save();
		return "index";
	}
	
}

TestService.java

package mg.test;

import mg.ioc.annotation.ToBean;
import mg.ioc.annotation.UseBean;
// Используем ToBean, чтобы сообщить MGIoC о передаче экземпляра этого класса в контейнер при инициализации.
@ToBean
public class TestService {
    // Используем UseBean для внедрения.
	@UseBean
	private TestDao testDao;
	
	public void save(){
		testDao.save();
	}
}

TestDao.java

package mg.test;

import mg.ioc.annotation.ToBean;

@ToBean
public class TestDao {
    
	public void save(){
		System.out.println("Сохранение объекта test успешно");
	}
}

Третий шаг

Запустите проект и перейдите по адресу http://localhost:8080/mgioc/test.do/index. Если всё работает правильно, вы увидите сообщение «Сохранение объекта test успешно» в консоли.

Заключение

На данный момент я создал облегчённый IOC-контейнер для внедрения зависимостей, который может быть улучшен в будущем путём добавления кэширования для повышения производительности при большом количестве управляемых экземпляров объектов.

На начальном этапе я интегрировал его с mgwork, моим собственным MVC-фреймворком на основе Servlet 3.0. Подробнее см. в моём проекте mgfinal.

Быстрая навигация

mgwork: MVC-фреймворк: http://git.oschina.net/mgang/mgwork

mgioc: IOC-фреймворк: http://git.oschina.net/mgang/mgioc

mgfinal: mgwork + mybatis + mgioc: http://git.oschina.net/mgang/mgfinal

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Лёгкий, с низкой степенью связанности, одноэлементный IOC-фреймворк, предназначенный только для внедрения зависимостей. Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/mgang-mgioc.git
git@api.gitlife.ru:oschina-mirror/mgang-mgioc.git
oschina-mirror
mgang-mgioc
mgang-mgioc
master