programing

독립 실행형 응용 프로그램에서 스프링 사용

muds 2023. 8. 14. 23:12
반응형

독립 실행형 응용 프로그램에서 스프링 사용

독립 실행형(데스크탑/스윙) 애플리케이션에서 스프링을 사용하는 샘플이나 튜토리얼을 찾고 있습니다. 많이 검색했지만 유용한 것을 찾을 수 없었습니다. 모든 예제와 튜토리얼은 웹 애플리케이션을 위한 것입니다. 조언 부탁드립니다.

  1. 다음과 같이 메이븐을 사용하여 독립 실행형 응용 프로그램을 만듭니다.

    Maven을 사용하여 독립 실행형 응용 프로그램 만들기

  2. applicationContext를 클래스 경로에 넣고 다음과 같이 기본 클래스에 로드합니다.

    ClassPathXmlApplicationContext ctx = 
            new ClassPathXmlApplicationContext("applicationContext.xml");
    

    여기에서 전체 기사 보기:

    http://www.devdaily.com/blog/post/java/load-spring-application-context-file-java-swing-application

다음은 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"
    }
}

다음은 구성 항목입니다.

@Configuration
class AppConfig {

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

AppFuse는 다양한 데모 애플리케이션을 제공하며, 모든 소스 코드는 메이븐을 사용하여 다운로드할 수 있습니다.Spring MVC, Spring, Hibernate를 사용하여 빌드된 이 데모 응용 프로그램의 전체 코드를 얻을 수 있습니다.

네, 이것은 웹 애플리케이션입니다, 당신은 그것을 파고들어서 독립형으로 변환할 수 있습니다.

메이븐 프로젝트 생성

프로젝트에 대한 응용 프로그램 클래스를 만듭니다.

@Configuration
@ComponentScan
@EnableAutoConfiguration
public class Application {

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

SpringApplication.run(YourClass.class,args) 대신 YourClass 메인 메소드를 삽입합니다.

그런 식으로 잘 작동합니다.

봄을 처음 배우기 시작했을 때 저는 다음과 같은 튜토리얼을 따랐습니다.

튜토리얼 포인트

이러한 기능은 상당히 기본적이지만 신속하게 실행할 수 있습니다.그 후에는 궁극적으로 무엇에 사용할 것인지가 결정됩니다.IOC, JMS, JDBC/Hibernate 지원 등을 찾고 계십니까?

이미 언급한 바와 같이:

ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext");

어떤 유형이든 상관없이 모든 봄 콩을 앱에 가져올 것입니다.

이것이 제가 구글에서 처음 발견한 것입니다.그것도 꽤 좋아 보입니다.

http://www.mkyong.com/spring/maven-spring-hibernate-annotation-mysql-example/

"맨몸의 봄"을 보세요.Spring 3의 사용법에 대한 최신의 좋은 예라고 생각합니다.

이것은 제가 매우 유용하다고 생각한 봄의 튜토리얼입니다.이것은 독립 실행형 응용 프로그램 기반의 봄을 설명합니다.

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

이 동영상의 저자는 메이븐과 스트러츠 동영상도 업데이트하고 간단하지만 효과적인 방식으로 설명했습니다.

도움이 되길 바랍니다.

저는 스윙으로 독립형 스프링 부트 애플리케이션을 실행할 수 있었습니다.

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▁decorated다있▁is니습으로 장식되어 있습니다.@SpringBootApplication 주석

전체 작업 예제는 스프링 부트 스윙 통합 튜토리얼을 참조하십시오.

요약하자면, 응용프로그램(모든 유형)을 봄 응용프로그램으로 만드는 것은 일반적으로 응용프로그램 컨텍스트로 확장된 적어도 하나의 BeanFactory가 존재하고 사용된다는 것입니다.웹 응용 프로그램에서는 컨텍스트 인스턴스화 및 초기화를 처리하는 DispatcherServlet과 같은 서블릿을 web.xml에 선언할 수 있습니다. 독립 실행형 응용 프로그램에서는 위와 같이 사용자 자신의 코드가 컨텍스트를 만들고 초기화합니다.마법처럼 맥락을 제공하는 웹 프레임워크는 거의 동일한 작업을 수행합니다.

최소 독립 실행형 Spring 응용 프로그램에는 다음 4개의 라이브러리가 필요합니다.

여기에 좋은 예가 있습니다.

언급URL : https://stackoverflow.com/questions/8105217/using-spring-in-a-standalone-application

반응형