前提條件:idea配置好jdk和maven
第一步,idea->file->new project打開如下對話框,選擇maven,勾選create from archetype復選框,在原型列表點選maven-archetype-quickstart
第二步,pom文件增加spring依賴,初始只需加入如下一個依賴即可,idea會按照依賴傳遞自動下載所需要得依賴
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.13.RELEASE</version>
</dependency>
第三步,src->main下新建resources文件夾,右鍵文件夾Mark Directory as Resources Root,將其設置為根資源文件夾
第四步,新建spring配置文件applicationContext.xml文件,spring依賴導入成功后,可以使用idea自動生成:右鍵單擊resources文件夾,new->xml configration file->spring config
項目環境創建完畢,可以開始寫spring代碼了
兩種方式初始化spring容器,1、使用xml配置文件,2、使用java配置類。對應的spring上下文類分別是ClassPathXmlApplicationContext 和 AnnotationConfigApplicationContext
使用xml配置文件方式時 applicationContext.xml的內容:
<?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:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <context:component-scan base-package="com"/> </beans>
使用Java配置類初始化spring容器
/**
* @author : ccf0537
* @date : 2020/11/24 17:02
*/
@Configuration
@ComponentScan(basePackages = "com") public class ApplicationContextConfig { }
package com.controller; import com.config.ApplicationContextConfig; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.stereotype.Component; /** * Hello world! * */ @Component public class App { public static void main( String[] args ) { //使用java配置類初始化spring容器,此時不需要applicationContext.xml文件的存在,此種方式可以完全不需要任何xml配置 ApplicationContext applicationContext = new AnnotationConfigApplicationContext(ApplicationContextConfig.class); //使用xml配置文件初始化spring容器,指定配置文件相對類路徑的位置,根資源文件夾名稱resources不需要寫 // ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); UserController userController = (UserController) applicationContext.getBean("userController"); userController.getUserList(); } }