簡體   English   中英

創建一個 Spring 框架啟動項目,而不是 Spring 引導

[英]Create a Spring Framework starter project, not Spring Boot

我正在開發一個使用 Spring Framework 3.2.11.RELEASE版本的項目,我們想在其中實現一些新的東西,但在我想做一個小 Rest ZDB974238714CA8DE634A7CE10 概念應用程序之前可以做一個證明。 這個小 Rest API 必須使用與原版相同的包(不,不能更新主項目)。

當使用https://start.spring.io/時,它給了我一個很好的項目,但使用 Spring 引導,這不是我想要的。 使用 Initialzr 給我的項目,我將pom.xml更改為使用與原始項目相同的 spring 包:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.example</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>demo</name>
    <description>Demo project </description>
    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>3.2.11.RELEASE</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>3.2.11.RELEASE</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aop</artifactId>
            <version>3.2.11.RELEASE</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>3.2.11.RELEASE</version>
        </dependency>
    </dependencies>

</project>

現在我正在嘗試修改啟動器 class 以使用pom.xml中的依賴項。 這就是我迷路的地方,到目前為止,我在主項目或 web 中找不到類似的東西。 那么,我怎樣才能改變這個主要的 class 讓它工作呢?

package com.example.demo;

import org.springframework.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class DemoApplication {

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

}

如果您尚未向當前的SpringBoot應用程序添加任何 BusinessLogic,則可以使用EclipseSTS IDE 創建新的 Spring 項目。 您的測試儀或主 class 將如下所示:

import org.springframework.beans.factory.BeanFactory;  
import org.springframework.beans.factory.xml.XmlBeanFactory;  
import org.springframework.core.io.ClassPathResource;  
import org.springframework.core.io.Resource;  
  
public class Test {  
public static void main(String[] args) {  
    Resource resource=new ClassPathResource("applicationContext.xml");  
    BeanFactory factory=new XmlBeanFactory(resource);  
      
    Student student=(Student)factory.getBean("studentbean");  
    student.displayInfo();  
}  
}  

(I have Student class created in my IDE that's why using an instance of that class just for DEMO) And your .xml file should look like this:

    <?xml version="1.0" encoding="UTF-8"?>  
    <beans  
        xmlns="http://www.springframework.org/schema/beans"  
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
        xmlns:p="http://www.springframework.org/schema/p"  
        xsi:schemaLocation="http://www.springframework.org/schema/beans  
                   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">  
      
    <bean id="studentbean" class="com.app.Student">  
    <property name="name" value="Student1"></property>  
    </bean>  
      
    </beans> 

我希望這會以某種方式幫助你!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM