독립 실행형 응용 프로그램에서 스프링 사용
독립 실행형(데스크탑/스윙) 애플리케이션에서 스프링을 사용하는 샘플이나 튜토리얼을 찾고 있습니다. 많이 검색했지만 유용한 것을 찾을 수 없었습니다. 모든 예제와 튜토리얼은 웹 애플리케이션을 위한 것입니다. 조언 부탁드립니다.
다음과 같이 메이븐을 사용하여 독립 실행형 응용 프로그램을 만듭니다.
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개의 라이브러리가 필요합니다.
commons-message.jar (http://commons.apache.org/logging) 참조)
참조).스프링 프레임워크.core-2.5.6.A.jar(참조)
http://www.springsource.org/download)기. 골beans-2(콩-2.5.6.A 참조).항아리(참조)
http://www.springsource.org/download).springframework.context-2.5.6.A.jar(문서) 참조)
http://www.springsource.org/download)
여기에 좋은 예가 있습니다.
언급URL : https://stackoverflow.com/questions/8105217/using-spring-in-a-standalone-application
'programing' 카테고리의 다른 글
다른 Cmdlet을 호출하는 Cmdlet에서 PowerShell의 -WhatIf & -Confirm 매개 변수를 어떻게 지원합니까? (0) | 2023.08.19 |
---|---|
TSLint 오류 "최대 줄 길이 120을 초과함" (0) | 2023.08.19 |
Swift에서 일반 프로토콜을 만드는 방법은 무엇입니까? (0) | 2023.08.14 |
Android Studio Gradle 이미 폐기된 모듈 (0) | 2023.08.14 |
크롬: 배경 탭에서 시간 초과/간격이 일시 중단됩니까? (0) | 2023.08.14 |