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

Я ищу образцы или руководства по использованию Spring в автономном (настольном/качающемся) приложении , я много искал, но не мог добраться до чего-то полезно, все примеры и руководства предназначены для веб-приложений, пожалуйста, сообщите.

Ответ 1

Ответ 2

Вот простой пример с 2 классами. Написал в groovy для удобства чтения, но будет работать для вас в java тоже с правильными настройками синтаксиса

Здесь ваш главный:

class Main {

    static void main(String[] args) {
        def ctx = new AnnotationConfigApplicationContext()
        ctx.register(AppConfig.class)
        ctx.refresh()

        def runner = ctx.getBean("mainRunner")
        runner.run()
    }

    void run() {
        println "running from bean"
    }
}

Здесь ваша конфигурация bean:

@Configuration
class AppConfig {

    @Bean
    Main mainRunner() {
        new Main()
    }
}

Ответ 3

AppFuse предоставляет разные демонстрационные приложения, все исходные коды можно загрузить с помощью maven. Вы можете получить полный код этого демонстрационного приложения, которое создается с использованием Spring MVC, Spring, Hibernate.

Да, это веб-приложение, вы можете копаться в нем и преобразовывать его в автономный.

Ответ 4

Это учебник Spring, который я нашел очень полезным. Это объясняет Spring на основе автономного приложения.

https://www.youtube.com/watch?v=GB8k2-Egfv0

Автор этого видео также обновил видео Maven и Struts и объяснил это простым, но эффективным способом.

Надеюсь, это поможет.

Ответ 5

Когда я впервые начал изучать spring, я следил за этими учебниками:

tutorialspoint

Они довольно простые, но вы быстро и быстро заработаете. После этого в конечном счете сводится к тому, для чего вы собираетесь его использовать. Вы ищете поддержку IOC, JMS, JDBC/Hibernate и т.д.?

Как уже упоминалось:

ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext");

приведет все ваши spring beans в ваше приложение, независимо от того, какой он тип.

Ответ 6

создать проект Maven

он создаст класс приложения для вашего проекта

@Configuration
@ComponentScan
@EnableAutoConfiguration
public class Application {

    public static void main(String[] args) {
        //SpringApplication.run(YourClass.class, args);  
        YourClass.main(args);
    }
}

добавьте основной метод YourClass вместо SpringApplication.run(YourClass.class, args);

он работает так просто.

Ответ 8

Посмотрите "Barebones Spring" . Я думаю, что это хороший, современный пример использования Spring 3.

Ответ 9

Мне удалось запустить автономное приложение загрузки Spring с Swing.

public static void main(String[] args) {

    ConfigurableApplicationContext ctx = new SpringApplicationBuilder(SwingApp.class)
            .headless(false).run(args);

    EventQueue.invokeLater(() -> {
        SwingApp ex = ctx.getBean(SwingApp.class);
        ex.setVisible(true);
    });
}

Нам нужно использовать SpringApplicationBuilder и выключить режим безголоски.

@SpringBootApplication
public class SwingApp extends JFrame {

SwingApp декорируется аннотацией @SpringBootApplication.

Посмотрите мой Spring Интеграция с загрузкой Swing для полного рабочего примера.

Ответ 10

Следующие четыре библиотеки необходимы для минимального автономного приложения Spring:

Хороший пример приведен ниже здесь.

Ответ 11

Итак, чтобы сварить это: то, что делает ваше приложение (любой тип) приложением Spring, наличием и использованием хотя бы одного BeanFactory, обычно расширяемого как ApplicationContext. В веб-приложении вы, вероятно, объявите в web.xml сервлете, таком как DispatcherServlet, который занимается созданием и инициализацией контекста; в автономном приложении ваш собственный код просто создает и инициализирует контекст, как показано выше. Веб-фреймворк, который волшебным образом дает вам контекст, делает почти то же самое под обложками.