Я ищу образцы или руководства по использованию Spring в автономном (настольном/качающемся) приложении , я много искал, но не мог добраться до чего-то полезно, все примеры и руководства предназначены для веб-приложений, пожалуйста, сообщите.
Использование Spring в автономном приложении
Ответ 1
-
Создайте автономное приложение с maven, как указано здесь:
-
Поместите applicationContext в classpath и загрузите его в основной класс следующим образом:
ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
Смотрите полную статью здесь:
http://www.devdaily.com/blog/post/java/load-spring-application-context-file-java-swing-application
Ответ 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, я следил за этими учебниками:
Они довольно простые, но вы быстро и быстро заработаете. После этого в конечном счете сводится к тому, для чего вы собираетесь его использовать. Вы ищете поддержку 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);
он работает так просто.
Ответ 7
Это первое, что я нашел в google. Это тоже выглядит хорошо.
http://www.mkyong.com/spring/maven-spring-hibernate-annotation-mysql-example/
Ответ 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:
-
commons-logging.jar(см. http://commons.apache.org/logging)
-
org.springframework.core-2.5.6.A.jar(см. http://www.springsource.org/download)
-
org.springframework.beans-2.5.6.A.jar(см. http://www.springsource.org/download)
-
org.springframework.context-2.5.6.A.jar(см. http://www.springsource.org/download)
Хороший пример приведен ниже здесь.
Ответ 11
Итак, чтобы сварить это: то, что делает ваше приложение (любой тип) приложением Spring, наличием и использованием хотя бы одного BeanFactory, обычно расширяемого как ApplicationContext. В веб-приложении вы, вероятно, объявите в web.xml сервлете, таком как DispatcherServlet, который занимается созданием и инициализацией контекста; в автономном приложении ваш собственный код просто создает и инициализирует контекст, как показано выше. Веб-фреймворк, который волшебным образом дает вам контекст, делает почти то же самое под обложками.